From 3e14be8c46de1e59f3ddfbb330b2bff788c09586 Mon Sep 17 00:00:00 2001 From: martin_r Date: Wed, 24 Dec 2008 01:35:48 +0000 Subject: git-svn-id: https://svn.neo-layout.org@1321 b9310e46-f624-0410-8ea1-cfbb3a30dc96 --- yaml/neo20.py | 16 ++ yaml/neo20.xml | 711 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ yaml/neo20.xsl | 188 +++++++++++++++ yaml/neo20.yaml | 226 ++++++++++++++++++ yaml/readme.txt | 12 + 5 files changed, 1153 insertions(+) create mode 100644 yaml/neo20.py create mode 100644 yaml/neo20.xml create mode 100644 yaml/neo20.xsl create mode 100644 yaml/neo20.yaml create mode 100644 yaml/readme.txt (limited to 'yaml') diff --git a/yaml/neo20.py b/yaml/neo20.py new file mode 100644 index 0000000..7b66a9e --- /dev/null +++ b/yaml/neo20.py @@ -0,0 +1,16 @@ +import yaml, sys + +try: + quelle = open("neo20.yaml") + try: + wurzel = yaml.load(quelle) #_all entfernen + finally: + quelle.close() + +except IOError: + pass +except yaml.YAMLError, exc: + if hasattr(exc, 'problem_mark'): + mark = exc.problem_mark + print "YAML-Parserfehler: (%s:%s)" % (mark.line+1, mark.column+1) + sys.stdin.read() diff --git a/yaml/neo20.xml b/yaml/neo20.xml new file mode 100644 index 0000000..5ff13a7 --- /dev/null +++ b/yaml/neo20.xml @@ -0,0 +1,711 @@ + + + + + + + + + + + + ]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/yaml/neo20.xsl b/yaml/neo20.xsl new file mode 100644 index 0000000..40d05b2 --- /dev/null +++ b/yaml/neo20.xsl @@ -0,0 +1,188 @@ + + + +------------------------------------------------------------------------------- +ACHTUNG: +Damit alles ordentlich dargestellt wird, muss man für die Darstellung z. B. im +Texteditor eine dicktengleiche Schrift einstellen! + +Im Browser (Firefox) muss man unter Ansicht, Zeichenkodierung auf Unicode +(UTF-8) stellen. + +Unter Windows ist in der Grundinstallation leider keine dicktengleiche Schrift +installiert, die befriedigend viele Unicodezeichen beinhaltet. +Abhilfe schafft z. B. DejaVu Sans Mono (ist z. B. bei OpenOffice dabei): +http://dejavu.sourceforge.net/ +------------------------------------------------------------------------------- + +== Haupttastatur == +=== Legende – Haupttastatur === +┌─────┐ 1 … 1. Ebene (kein Mod) │ 4 … 4. Ebene (Mod4) +│2 4 6│ 2 … 2. Ebene (Umschalt) │ 5 … 5. Ebene (Mod3+Umschalt) +│1 3 5│ 3 … 3. Ebene (Mod3) │ 6 … 6. Ebene (Mod3+Mod4) +└─────┘ +• Ebene 1: Kleinbuchstaben (kein Mod) +• Ebene 2: Großbuchstaben (Umschalt) +• Ebene 3: Sonderzeichen (Mod3) +• Ebene 4: Navigation und Ziffernblock (Mod4) +• Ebene 5: Griechische Kleinbuchstaben (Mod3+Umschalt) +• Ebene 6: Griechische Großbuchstaben (Mod3+Mod4) + +• Kombo/Compose: Zusammensetzen von Zeichen (Mod3+Tab) + Beispiel: + »Compose« »Compose loslassen« »o« »c« = © +• Feststellen/Capslock: Dauergroßschreiben (Umschalt+Umschalt) + Zum Lösen der Feststellung nochmals gleiche Kombination +• Feststellen der Ebene 4: (Mod4+Mod4) oder (Umschalt+Mod3+Tab) + Zum Lösen der Feststellung nochmals gleiche Kombination + + HINWEIS: Unter Linux ist es momentan noch nicht möglich die Feststellung + zu lösen, indem man beide Mods drückt. Man muss dort nur einen drücken! + +=== Maustastatursteuerung === +Die Maustastatursteuerung schaltet man über Shift+Mod4+T1 ein und ebenso wieder aus. +Mit dieser kann man den Mauszeiger über die Tastatur steuern. Dies kann sinnvoll sein, falls +die Maus oder das Touchpad streikt oder keine solches Medium vorhanden ist. +Am besten geeignet ist dazu die Ebene 4 des Keypads (z.B. mit Mod4_Lock). Verzichtet man auf +Markierungen ist auch Ebene 1 des Keypads geeignet. +Des Weiteren kann man die Zahlen auf Ebene 4 des Haupttastaturfelds benutzen, jedoch ist die +Bedienung dort weniger komfortabel. + +=== Symbole === +⇞⇟ … Bild auf/Bild ab +⇱⇲ … Pos1/Ende +⌫ ⌦ … Backspace/Entf +⌧ … Esc +⎀ … Einf +⇠⇡⇢⇣ … Links/Hoch/Rechts/Runter +♫ … Steht als Symbol für die Kombotaste (Compose) +╌ … Weicher Trennstrich (U+00AD SOFT HYPHEN) +␣ … Leerzeichen (SPACE) +⍽ … Geschütztes Leerzeichen (U+00A0 NO-BREAK SPACE) +¦ … Schmales, geschütztes Leerzeichen (U+202F NARROW NO-BREAK SPACE) +↶ … undo-Funktion + +=== Akzenttasten === +Zu den Akzenten siehe auch +• http://unicode.e-workers.de/ +• http://de.wikipedia.org/wiki/Diakritisches_Zeichen +• http://de.wikipedia.org/wiki/Liste_lateinisch-basierter_Alphabete + + + + +ACHTUNG: „Tote Tasten“ (Tasten zum Erzeugen toter Zeichen – also Zeichen die nicht +gleich erscheinen, sondern nur in Kombination mit einem weiteren Buchstaben) werden +folgendermaßen bedient (Beispiel): +1. Tote Tilde »~« eingeben. +2. Danach »n«. +3. Es erscheint das »ñ«. + +TIPP: Mit den toten Tasten Zirkumflex und Querstrich kann man hoch(ˆ)- und tiefgestellte(/) Ziffern erzeugen. + +=== Taste mit Bindestrichen, Gedankenstrich usw. === +Zu den Gedankenstrichen usw. siehe +• http://www.matthias-kammerer.de/SonsTypo3.htm +• http://de.wikipedia.org/wiki/Weicher_Trennstrich + + + +=== Dezimaltrennzeichen === +Das Dezimaltrennzeichen ist auf englischen und südamerikanischen Systemen ein Punkt ».«. +Auf deutschen, französischen, spanischen, schweizerischen und anderen ein Komma »,«. +Siehe auch http://de.wikipedia.org/wiki/Dezimaltrennzeichen + +== Ziffern == +Die Ziffern auf der Ersten Ebene sind die »normalen« Zahlen (also nicht die KP_-Variante), +wogegen für den Ziffernblock auf der vierten Ebene stets die KP_‐Varianten verwendet werden +sollten, um die Vielseitigkeit und Funktionsfähigkeit der NEO‐Tastatur zu gewährleisten. + +=== Alle Ebenen – Haupttastatur === + + +== Ziffernblock == +Um die Vielseitigkeit und Funktionsfähigkeit der NEO‐Tastatur zu gewährleisten, +sollten für alle Elemente auf dem Keypad wenn möglich die KP_‐Variante verwendet werden! + +=== Legende – Ziffernblock === +┌───────┐ 1 … 1. Ebene (kein Mod) │ 4 … 4. Ebene (Mod4) +│ 2 4 6 │ 2 … 2. Ebene (Umschalt) │ 5 … 5. Ebene (Mod3+Umschalt) +│ 1 3 5 │ 3 … 3. Ebene (Mod3) │ 6 … 6. Ebene (Mod3+Mod4) +└───────┘ + +=== Rechenzeichen === + + +=== Alle Ebenen – Ziffernblock === + +== Tipp == +Trägt man unter Linux/Mac/BSD folgende Zeilen in die ~/.bashrc, ~/.zshrc oder +vergleichbares ein, bekommt man anschließend mittels Eingabe von »neo« oder +»num« die aktuelle Belegung in der Konsole angezeigt: +alias num='grep -m 1 -B 15 "┴───────┘" PFAD_ZUR_DATEI/neo20.txt' +alias neo='grep -m 1 -B 15 "┴──────┘" PFAD_ZUR_DATEI/neo20.txt' + +Dazu muss »PFAD_ZUR_DATEI« durch den Pfad zu dieser Datei ersetzt werden. + +Im Verzeichnis linux/bin sind umfangreichere Skripte mit größerer Funktionalität. + +== Zeichenerläuterungen == +Ξ … Xi, griechischer Majuskel (U039E) +≙ … entspricht (U2259) +Λ … Lambda, griechischer Majuskel (U039B) +ℂ … Menge der komplexen Zahlen (U2102) +Ω … Omega, griechischer Majuskel (U03A9) +√ … Wurzel aus (U221A) +Ψ … Psi, griechischer Majuskel (U03A8) +Γ … Gamma, griechischer Majuskel (U0393) +Φ … Phi, griechischer Majuskel (U03A6) +ℚ … Menge der rationalen Zahlen (U211A) +∘ … Verknüpfungsoperator (U2218) +∮ … Integral über eine geschlossene Kurve (U222E) +∫ … Integral (U222B) +∀ … Allquantor ; für alle (U2200) +∃ … Existenzquantor ; es gibt (U2203) +∈ … Element von (U2208) +Σ … Sigma, griechischer Majuskel (U03A3) +ℕ … Menge der natürlichen Zahlen (U2115) +ℝ … Menge der reellen Zahlen (U211D) +∂ … partielle Ableitung (U2202) +Δ … Delta, griechischer Majuskel (U0394) +∇ … Nablaoperator (Gradient, Divergenz, Rotation) (U2207) +∝ … proportional zu (U221D) +ℑ … Imaginärteil einer komplexen Zahl (U2111) +ℜ … Realteil einer komplexen Zahl (U211C) +ℵ … Kardinalzahlen, Aleph-Symbol (U2135) +Π … Pi, griechischer Majuskel (U03A0) +ℤ … Menge der ganzen Zahlen (U2124) +⇒ … Implikation ; daraus folgt ; hinreichend für (U21D2) +⇔ … Äquivalenzzeichen (U21D4) +⇐ … notwendig für ; nur dann, wenn (U21D0) +Θ … Theta, griechischer Majuskel (U0398) +≡ … identisch (U2261) +□ … Beweisende (qed) (U25A1) +⊙ … direkte Summe ; Vektor aus der Ebene zeigend (U2299) +⊗ … Tensorprodukt ; Vektor in die Ebene zeigend (U2297) +∞ … unendlich (U221E) +∋ … enthält das Element (U220B) +ª … weiblicher Ordinalindikator (2ª) (00AA) +º … männlicher Ordinalindikator (1º) (00BA) + +== Hinweise zu Doppelbelegungen in Unicode == +Griechische Minuskel und Majuskel besitzten in der Regel eine weitere Bedeutung, z.B. +• Δ für Differenz oder Fehler +• Θ für homöopathische Urtinktur +• Γ für Gammafunktion + +Einige finden sich darum an mehreren Stellen im Unicode, um (eventuelle) Unterschiede +deutliche machen zu können. Zur Platzersparnis haben wir stets eines (das einfachste +und allgemeinste) Zeichen aufgenommen: +• Ω (U03A9) ; Einheit des Widerstandes Ohm (U2126) +• Σ (U03A3) ; Summenzeichen (U2211) +• Δ (U0394) ; Laplaceoperator (2206) ; Dreieck, symmetrische Differenz (25B3) +• ∇ (U2207) ; Dreieck (U25BD) +• Π (U03A0) ; Produktzeichen ∏ (U220F) +• µ (U03BC) ; SI-Vorsilbe micro (U00B5) + + + diff --git a/yaml/neo20.yaml b/yaml/neo20.yaml new file mode 100644 index 0000000..83bc7d9 --- /dev/null +++ b/yaml/neo20.yaml @@ -0,0 +1,226 @@ +# (?, QWERTZ-^): [xkb, mOd, kbd, ahk, [ +# {?: [lin, kbd, ahk, {x,y: grafikpositionen, e: erläuterung in der referenz}*], +# {b: breite, v: vollbreite, h: höhe, w: vollhöhe, x,y: grafik, f: farbe, c: capslock(False), e: s. o.}] +[ + [ + (ˆ, QWERTZ-^): [TLDE, 49, VK_OEM_1, VKDCSC029, [ + {ˆ: [dead_circumflex, WCH_DEAD, Tcflx, {e: "Toter Zirkumflex (sieht aus wie U+02C6 MODIFIER LETTER CIRCUMFLEX ACCENT)"}]}, + {˜: [dead_tilde, WCH_DEAD, Ttlde, "Tote Tilde (sieht aus wie U+02DC SMALL TILDE)"]}, + {°: [dead_abovering, WCH_DEAD, Tobrg, "Toter Ring (sieht aus wie U+02DA RING ABOVE)"]}, + {ˇ: [dead_caron]}, + {˘: [dead_breve]}, + {¯: [dead_macron]}], +# {7: NoSymbol}, + {e: "T1 („Tote Taste 1“: Taste links neben der 1)", + c: False}], + (1, QWERTZ-1): [ AE01, 10, [ + {1: [1]}, + {°: [degree]}, + {¹: [onesuperior]}, + {ª: [ordfeminine]}, + {₁: [onesubscript]}, + {¬: [notsign]}], + {c: False}] + ] +] +--- +- + - + - + - [2, AE02, 11] + - [2, 2] + - [§, section] + - [², twosuperior] + - [º, masculine] + - [₂, twosubscript] + - [∨, logicalor] + - + - [3, AE03, 12] + - [3, 3] + - [ℓ, U2213] + - [³, threesuperior] + - [№, numerosign] + - [₃, threesubscript] + - [∧, logicaland] + - + - [4, AE04, 13] + - [4, 4] + - [»] + - [›] + - [⇞] + - [†] + - [⊥] + - + - [5, AE05, 14] + - [5, 5] + - [«] + - [‹] + - [‧] + - [♀] + - [∡] + - + - [6, AE06, 15] + - [6, 6] + - [€] + - [¢] + - [£] + - [♂] + - [∥] + - + - [7, AE07, 16] + - [7, 7] + - [$] + - [¥] + - [¤] + - [κ] + - [→] + - + - [8, AE08, 17] + - [8, 8] + - [„] + - [‚] + - [/] + - [⟨] + - [∞] + - + - [9, AE09, 18] + - [9, 9] + - + - [0, AE10, 19] + - [0, 0] + - + - [-, AE11, 20] + - + - ["`", AE12, 21] + - + - [⌫, BKSP, 22] + - + - + - [Tab, TAB, 23] + - + - [x, AD01, 24] + - + - [v, AD02, 25] + - + - [l, AD03, 26] + - + - [c, AD04, 27] + - + - [w, AD05, 28] + - + - [k, AD06, 29] + - + - [h, AD07, 30] + - + - [g, AD08, 31] + - + - [f, AD09, 32] + - + - [q, AD10, 33] + - + - [ß, AD11, 34] + - + - [Enter, AD13, 36] #? + - + - + - [Mod3, CAPS, 66] + - + - [u, AC01, 38] + - + - [i, AC02, 39] + - + - [a, AC03, 40] + - + - [e, AC04, 41] + - + - [o, AC05, 42] + - + - [s, AC06, 43] + - + - [n, AC07, 44] + - + - [r, AC08, 45] + - + - [t, AC09, 46] + - + - [d, AC10, 47] + - + - [y, AC11, 48] + - + - [Mod3, AC01, 51] + - + - Mod2 + - Mod4 + - + - [ü, AB01, 52] + - + - [ö, AB02, 53] + - + - [ä, AB03, 54] + - + - [p, AB04, 55] + - + - [z, AB05, 56] + - + - [b, AB06, 57] + - + - [m, AB07, 58] + - + - [Komma, AB08, 59] + - + - [Punkt, AB09, 60] + - + - [j, AB10, 61] + - Mod2 + - + - Strg + - Fenster + - Alt + - + - [Leertaste, SPCE, 65] + - + - [Mod4] + - Fenster + - Menü + - Strg + ] +- + - + - + - [Tab, NMLK] + - + - [Geteilt, KPDV] + - + - [Mal, KPMU] + - + - [Minus, KPSU] + - + - + - [7, KP7] + - + - [8, KP8] + - + - [9, KP9] + - + - [Plus, KPAD] + - + - + - [4, KP4] + - + - [5, KP5] + - + - [6, KP6] + - + - + - [1, KP1] + - + - [2, KP2] + - + - [3, KP3] + - + - [Return, KPEN] + - + - + - [0, KP0] + - + - [Komma, KPDL] \ No newline at end of file diff --git a/yaml/readme.txt b/yaml/readme.txt new file mode 100644 index 0000000..cadff11 --- /dev/null +++ b/yaml/readme.txt @@ -0,0 +1,12 @@ +Aus der neo20.yaml sollen einmal automatisch erstellt werden: + +- XkbMap +- XModMap -> Konsolen-Map, Tastenaufkleber +- KbdNeo +- AHK, Bildschirmtastatur +- Mac-Treiber, hier brauche ich die Unterstützung von Mac-Entwicklern +- Referenz +- gerne auch Aufsteller, Tabellen, Druckvorlagen, … +- KTouch-Lektionen? + +Für die Yaml/Python-Verarbeitung nutze ich PyYAML (pyyaml.org). -- cgit v1.2.3