From 97d8553f4bd7daa8f168522b5ee37650d8aef367 Mon Sep 17 00:00:00 2001 From: pascal Date: Fri, 8 Aug 2008 08:57:42 +0000 Subject: mögliche Probleme beseitigt, alternative xmodamap für Systeme ohne narrow break space und dead stroke hinzugefügt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.neo-layout.org@730 b9310e46-f624-0410-8ea1-cfbb3a30dc96 --- linux/xmodmap/neo_de.alternative.xmodmap | 317 +++++++++++++++++++++++++++++++ linux/xmodmap/neo_de.xmodmap | 3 +- 2 files changed, 318 insertions(+), 2 deletions(-) create mode 100644 linux/xmodmap/neo_de.alternative.xmodmap (limited to 'linux/xmodmap') diff --git a/linux/xmodmap/neo_de.alternative.xmodmap b/linux/xmodmap/neo_de.alternative.xmodmap new file mode 100644 index 0000000..ff94dd4 --- /dev/null +++ b/linux/xmodmap/neo_de.alternative.xmodmap @@ -0,0 +1,317 @@ +!! ~/.xmodmap +!! +!! German NEO-Layout +!! adopted 2004 by Hanno Behrens +!! inspired by Dvorak/de-ergo http://www.goebel-consult.de/de-ergo/ +!! Authors: +!! Benjamin Kellermann +!! Erik Streb +!! +!! Other Questions: +!! +!! +!! $Revision: 720 $, $Date: 2008-08-04 23:46:24 +0200 (Mo, 04 Aug 2008) $ +!! http://pebbles.schattenlauf.de/layout.php +!! +!! To try the layout in this file, simply do xmodmap . +!! To load the layout in this file at X startup, simply store it as +!! ~/.xmodmap + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Modifier definition +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +clear Lock +clear Mod2 +! Mod2 war NumLock ! +clear Mod3 +clear Mod5 + +! Shift 50=left 62=right +! Shift+Shift ergibt ein ShiftLock (wie Caps, wirkt aber auf alle Zeichen, nicht nur auf Großbuchstaben) +! Der Lock lässt sich durch ein weiteres Shift lösen. +! Eigentlich (siehe Referenz) sollte hier ein CapsLock stehen. +keycode 50 = Shift_L Shift_Lock +keycode 62 = Shift_R Shift_Lock + +! Mod3 66=left 51=right +! Make CapsLock an modifier called Mod3 (similar to AltGr) (Mode_switch or ISO_Group_Shift is for 3rd and 4th level) +! Make former CapsLock and qwertz-# to Mode_switch or ISO_Group_Shift (which is the 3rd and 4th level) +! Mod3(links) (=Qwertz-Caps) erlaubt nur 4 Ebenen +! Ohne einen Eintrag in der zweiten Gruppe (=Ebene 3) ergäbe Mod3+Mod3=Group_Shift+Group_Shift=Gruppe 3=Ebene 6. Das ist nicht gewünscht. +keycode 51 = ISO_Group_Shift ISO_Group_Shift ISO_First_Group +keycode 66 = ISO_Group_Shift ISO_Group_Shift ISO_First_Group + +! Mod4 94=left 113=right +! Make the former AltGr and qwertz-< to Mod4 (ISO_Level3_Shift) +! Mod4(rechts)+Mod4(links) lässt Mod4 einrasten (Mod4Lock) +! das funktioniert nur in dieser Reihenfolge, da Mod4(rechts) (=Qwertz-AltGr) nur 4 Ebenen hat +! Der Lock lässt sich durch ein weiteres Mod4 lösen. +keycode 113 = ISO_Level3_Shift ISO_Level3_Shift ISO_Group_Shift ISO_Group_Shift ISO_Level3_Lock +keycode 94 = ISO_Level3_Shift ISO_Level3_Shift ISO_Group_Shift ISO_Group_Shift ISO_Level3_Lock + +! add Mod3 = ISO_Group_Shift +! add Mod5 = ISO_Level3_Shift + +keycode 115 = Super_L +! keycode 116 = Super_R +keycode 116 = Multi_key Multi_key + +add Mod4 = Super_L Super_R + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Ebenen +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Ebene 1: normal +! Ebene 2: Shift +! Ebene 3: Mod3 +! Ebene 4: Mod4 (zum Markieren Shift+Mod4) +! Ebene 5: Shift+Mod3 +! Ebene 6: Mod3+Mod4 (in dieser Reihenfolge!) +! Compose (keine eigene Ebene): Mod3+Tab +! Feststellen/Capslock: Shift+Shift +! Mod4-Lock: Mod4(rechts)+Mod4(links) + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! general Lock +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Einrasten über linke Win-Taste+Modifier, Lösen über nochmaliges Betätigen des Modifiers +! ShiftLock und Mo5Lock funktionieren, Mod3Lock lässt sich aber nicht mehr lösen!!!! +! keycode 115 = ISO_Lock +! add Lock = ISO_Lock + + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Tab as Multi_key (Compose) +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 23 = Tab ISO_Left_Tab Multi_key ISO_Level3_Lock + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Space key +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +!keycode 65 = space space space nobreakspace 0 0 U202F +keycode 65 = space space space nobreakspace 0 0 NoSymbol + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The first row (number Row) +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Ebene4+Sh Ebene6 +!keycode 49 = dead_circumflex dead_caron dead_breve dead_stroke dead_belowdot NoSymbol dead_belowdot +! ^ ˇ ˘ +keycode 49 = dead_circumflex dead_caron dead_breve NoSymbol dead_belowdot NoSymbol dead_belowdot +! ^ ˇ ˘ + + +keycode 10 = 1 degree onesuperior U2081 enfilledcircbullet NoSymbol notsign +! ° ¹ subscript-1 • ¬ +keycode 11 = 2 numerosign twosuperior U2082 U2023 NoSymbol logicalor +! № ² subscript-2 ‣ ∨ +keycode 12 = 3 section threesuperior U2083 NoSymbol NoSymbol logicaland +! § ³ subscript-3 ∧ +keycode 13 = 4 guillemotright U203A U2113 Prior Prior U22A5 +! » › ℓ liter ⊥ perpendicular +keycode 14 = 5 guillemotleft U2039 femalesymbol NoSymbol NoSymbol U2221 +! « ‹ ♀ ∡ angle sign +keycode 15 = 6 EuroSign cent malesymbol sterling NoSymbol U2225 +! € ¢ ♂ £ ∥ parallel + +keycode 16 = 7 dollar yen Greek_kappa currency NoSymbol notelementof +! $ ¥ κ ¤ ∉ +keycode 17 = 8 doublelowquotemark singlelowquotemark U27E8 slash slash U2204 +! „ ‚ ⟨ (bra) / ∄ not exist +keycode 18 = 9 leftdoublequotemark leftsinglequotemark U27E9 asterisk asterisk U2226 +! “ ‘ ⟩ (ket) * ∦ not parallel +keycode 19 = 0 rightdoublequotemark rightsinglequotemark U2080 minus NoSymbol emptyset +! ” ’ subscript-0 - ∅ + +keycode 20 = minus endash emdash U2011 NoSymbol NoSymbol hyphen +! - – — ‑ non-breaking ­ +keycode 21 = dead_acute dead_grave dead_cedilla dead_ogonek dead_abovedot NoSymbol dead_abovering +! ' ` ¸ ˛ ˙ ° + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The upper row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 24 = x X ellipsis Greek_xi U22EE NoSymbol U039E +! … ξ ⋮ vert. ell Ξ Greek_XI +keycode 25 = v V underscore NoSymbol BackSpace BackSpace U2259 +! ≙ +keycode 26 = l L bracketleft Greek_lambda Up Up U039B +! λ Λ Greek_LAMBDA +keycode 27 = c C bracketright Greek_chi Delete Delete U2102 +! χ ℂ komplex +keycode 28 = w W asciicircum Greek_omega Insert Insert U03A9 +! ω Ω Greek_OMEGA + +keycode 29 = k K exclam U03F0 exclamdown NoSymbol radical +! ! ϰ Greek_kappa ¡ √ +keycode 30 = h H less Greek_psi 7 7 U03A8 +! < ψ Ψ Greek_PSI +keycode 31 = g G greater Greek_gamma 8 8 U0393 +! > γ Γ Greek_GAMMA +keycode 32 = f F equal Greek_phi 9 9 U03A6 +! = φ Φ Greek_PHI +keycode 33 = q Q ampersand U03D5 plus NoSymbol U211A +! & ϕ Greek_phi + ℚ rational + +keycode 34 = ssharp U1E9E U017F Greek_finalsmallsigma NoSymbol NoSymbol U2218 +! ß ẞ Capital ß ſ long s ς ∘ ring operator + +keycode 35 = dead_tilde dead_macron dead_diaeresis dead_doubleacute +! ~ ¯ " ˝ + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The home row (middle row) +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 38 = u U backslash NoSymbol Home Home U222E +! \ ∮ contour integral +keycode 39 = i I slash Greek_iota Left Left integral +! / ι ∫ +keycode 40 = a A braceleft Greek_alpha Down Down U2200 +! { α ∀ for all +keycode 41 = e E braceright Greek_epsilon Right Right U2203 +! } ε ∃ there exists +keycode 42 = o O asterisk Greek_omicron End End elementof +! * ο ∈ + +keycode 43 = s S question Greek_sigma questiondown NoSymbol U03A3 +! ? σ ¿ Σ Greek_SIGMA +keycode 44 = n N parenleft Greek_nu 4 4 U2115 +! ( ν ℕ natural +keycode 45 = r R parenright U03F1 5 5 U211D +! ) ϱ Greek_rho ℝ real +keycode 46 = t T minus Greek_tau 6 6 partialderivative +! - τ ∂ +keycode 47 = d D colon Greek_delta comma NoSymbol U0394 +! : δ , Δ Greek_DELTA +keycode 48 = y Y at Greek_upsilon period NoSymbol nabla +! @ υ . ∇ + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The lower row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 52 = udiaeresis Udiaeresis numbersign NoSymbol Escape Escape variation +! ü Ü # ∝ proportional to +keycode 53 = odiaeresis Odiaeresis dollar NoSymbol Tab Tab U2111 +! ö Ö $ ℑ imaginary part +keycode 54 = adiaeresis Adiaeresis bar Greek_eta Next Next U211C +! ä Ä | η ℜ real part +keycode 55 = p P asciitilde Greek_pi Return Return U03A0 +! ~ π Π Greek_PI +keycode 56 = z Z grave Greek_zeta Undo Redo U2124 +! ` ζ ℤ integers + +keycode 57 = b B plus Greek_beta colon NoSymbol U21D0 +! + β : ⇐ +keycode 58 = m M percent Greek_mu 1 1 ifonlyif +! % μ ⇔ +keycode 59 = comma NoSymbol quotedbl Greek_rho 2 2 U21D2 +! , . " ρ ⇒ implies +keycode 60 = period NoSymbol apostrophe U03D1 3 3 U0398 +! . ' ϑ Greek_theta Θ Greek_THETA +keycode 61 = j J semicolon Greek_theta semicolon NoSymbol identical +! ; θ ; ≡ + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Keypad +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The uppest row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +keycode 77 = equal notequal U2248 Pointer_EnableKeys +! = ≠ ≈ almost equal (keypad-mouse mode) +keycode 112 = KP_Divide KP_Divide division U2044 +! / / ÷ (für ⁶⁄₅₉) +keycode 63 = KP_Multiply KP_Multiply U22C5 multiply +! * * ⋅ × +keycode 82 = KP_Subtract KP_Subtract minus U2212 +! - - - − real minus + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The upper row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 79 = 7 KP_Home U2195 dagger +! ↕ arrow † +keycode 80 = 8 KP_Up uparrow intersection +! ↑ ∩ +keycode 81 = 9 KP_Prior containsas U2297 +! ∋ ⊗ +keycode 86 = KP_Add KP_Add plusminus U2213 +! + +2 ± ∓ minus-plus + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The middle row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 83 = 4 KP_Left leftarrow includedin +! ← ⊂ +keycode 84 = 5 KP_Begin infinity EuroSign +! ∞ € +keycode 85 = 6 KP_Right rightarrow includes +! → ⊃ + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The lower row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 87 = 1 KP_End U2194 U2714 +! ↔ arrow ✔ check mark +keycode 88 = 2 KP_Down downarrow union +! ↓ ∪ +keycode 89 = 3 KP_Next U21CC U2717 +! ⇌ arro ✗ battol X +keycode 108 = KP_Enter KP_Enter KP_Enter KP_Enter +! + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The lowest row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 90 = 0 KP_Insert percent U2030 +! % ‰ per mille +keycode 91 = comma KP_Delete period KP_Separator +! , . ,/. + + + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Anpassungen (mögliche Verbesserungen) +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Es gibt naheliegende Möglichkeiten, NEO anzupassen und damit zu verbessern. +! Da sie jedoch nicht zwingend notwendige Redundanzen erzeugen und sich nicht in die +! thematischen Ordnung der Ebenen eingliedern, sind folgende Anpassungen nicht in der offiziellen +! Version von NEO berücksichtigt und müssen bewusst ermöglicht werden, indem das Ausrufezeichen zu +! Beginn der folgenden keycode-Zeile entfernt wird. +! +! Zusätzliches @-Zeichen auf Mod4+x (gleicher Handgriff wie AltGr+q auf QWERTZ) +! Dies ist insbesondere auf ergonomischen Tastaturen mit größerer Mod4 auf der linken Seite sinnvoll +! keycode 24 = x X at Greek_xi at at U039E + + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Bemerkungen +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! 1.) Ebene 6 (hier: der 7. Eintrag) erreicht man über ISO_Group_Shift+ISO_Group_Shift +! (bzw. mode_switch+mode_switch) und über keine andere mir bekannte kombination. Insbesondere legt +! ISO_Level3_Shift Level3 (Ebene 4, hier: Eintrag 5) fest, verschiebt also nicht. Darum kann man +! ISO_Level3_Shift nur mit Shift sinnvoll kombinieren. Daraus resultiert, dass Ebene 6 nur über +! Mod3+Mod4 (in dieser Reihenfolge!) erreicht werden kann. +! +! 2.) Die KP_-Einträge ermöglichen die Steuerung des Mauscursors mit der Tastatur. +! Hierzu wird mittels Mod4+z dieser Betriebsmodus ein- und später wieder ausgeschaltet. +! Die Steuerung des Cursors kann über den Ziffernblock auf Ebene 4 (sinnvollerweise +! mit eingerastetem Mod4) erfolgen. +! +! 3.) Die KP_-Einträge auf der linken Seite der Ebene 4 müssen vorhanden sein, da anderenfalls Probleme +! mit (älteren) Programmen wie xterm oder xedit auftreten. Da es keinen mir bekannten Ersatz für +! Backspace gibt, funktioniert im xterm das v nicht. Wird dies benötigt, muss das Backspace (Mod4+v) +! entfernt (und z.B. durch v ersetzt) werden. +! +! 4.) Auf 0 und q (Ebene 4) muss minus und plus stehen (nicht KP_Substract und KP_Add)! +! Anderenfalls funktionieren diese Tasten unter xterm mit shift+q als Vergrößerung (Shift+KP_Add) +! und shift+0 als Verkleinerung (Shift+KP_Substract). diff --git a/linux/xmodmap/neo_de.xmodmap b/linux/xmodmap/neo_de.xmodmap index 6c931ce..64f5367 100644 --- a/linux/xmodmap/neo_de.xmodmap +++ b/linux/xmodmap/neo_de.xmodmap @@ -20,8 +20,7 @@ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Modifier definition !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -remove Lock = Caps_Lock -remove Mod3 = ISO_Level3_Shift +clear Lock clear Mod2 ! Mod2 war NumLock ! clear Mod3 -- cgit v1.2.3