diff options
Diffstat (limited to 'linux')
-rw-r--r-- | linux/xmodmap/neo_de_evdev.xmodmap | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/linux/xmodmap/neo_de_evdev.xmodmap b/linux/xmodmap/neo_de_evdev.xmodmap new file mode 100644 index 0000000..f91f941 --- /dev/null +++ b/linux/xmodmap/neo_de_evdev.xmodmap @@ -0,0 +1,242 @@ +!! ~/.xmodmap +!! +!! German NEO-Layout +!! adopted 2004 by Hanno Behrens <Hanno.Behrens@gmx.de> +!! inspired by Dvorak/de-ergo http://www.goebel-consult.de/de-ergo/ +!! Authors: +!! Benjamin Kellermann <Benjamin dot Kellermann at gmx dot Germany> +!! Erik Streb <mail at erikstreb dot de> +!! +!! Other Questions: +!! <mailinglist at neo-layout dot org> +!! +!! $Revision: 497 $, $Date: 2008-05-05 15:22:14 +0200 (Mo, 05 Mai 2008) $ +!! http://pebbles.schattenlauf.de/layout.php +!! +!! To try the layout in this file, simply do xmodmap <file>. +!! To load the layout in this file at X startup, simply store it as +!! ~/.xmodmap + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Modifier definition +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +remove Lock = Caps_Lock +remove Mod3 = ISO_Level3_Shift +clear Mod3 +clear Mod4 + +! 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. Der funktioniert aber über Shift+Shift. +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 +! ISO_Lock funktioniert nicht! Weder das Einrasten, noch das Lösen +! 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_Lock +keycode 66 = ISO_Group_Shift ISO_Group_Shift ISO_Lock + +! 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 +keycode 108 = 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 Mod4 = ISO_Level3_Shift + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! 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 + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! 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 + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Tab as Multi_key (Compose) +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 23 = Tab ISO_Left_Tab Multi_key + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Space key +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 65 = space space space nobreakspace KP_0 NoSymbol U202F + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! 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 10 = 1 degree onesuperior femalesymbol enfilledcircbullet NoSymbol notsign +keycode 11 = 2 numerosign twosuperior U26A5 U2023 NoSymbol logicalor +keycode 12 = 3 section threesuperior malesymbol NoSymbol NoSymbol logicaland +keycode 13 = 4 guillemotright U203A U2113 KP_Prior KP_Prior uptack +keycode 14 = 5 guillemotleft U2039 dagger NoSymbol NoSymbol U2221 +keycode 15 = 6 EuroSign cent NoSymbol sterling NoSymbol U2225 + +keycode 16 = 7 dollar yen U03F0 currency NoSymbol notelementof +keycode 17 = 8 doublelowquotemark singlelowquotemark NoSymbol KP_Divide NoSymbol U2204 +keycode 18 = 9 leftdoublequotemark leftsinglequotemark NoSymbol KP_Multiply NoSymbol U2226 +keycode 19 = 0 rightdoublequotemark rightsinglequotemark NoSymbol minus NoSymbol emptyset + +keycode 20 = minus endash emdash U2011 NoSymbol NoSymbol hyphen +keycode 21 = dead_acute dead_grave dead_cedilla dead_ogonek dead_abovedot NoSymbol dead_abovering + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The upper row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 24 = x X NoSymbol Greek_xi NoSymbol NoSymbol Greek_XI +keycode 25 = v V underscore NoSymbol BackSpace BackSpace U2259 +keycode 26 = l L bracketleft Greek_lambda KP_Up KP_Up Greek_LAMBDA +keycode 27 = c C bracketright Greek_chi KP_Delete KP_Delete U2102 +keycode 28 = w W asciicircum Greek_omega KP_Insert KP_Insert Greek_OMEGA + +keycode 29 = k K exclam Greek_kappa exclamdown NoSymbol radical +keycode 30 = h H less Greek_psi KP_7 NoSymbol Greek_PSI +keycode 31 = g G greater Greek_gamma KP_8 NoSymbol Greek_GAMMA +keycode 32 = f F equal U03D5 KP_9 NoSymbol Greek_PHI +keycode 33 = q Q ampersand Greek_phi plus NoSymbol U211A +keycode 34 = ssharp U1E9E U017F Greek_finalsmallsigma NoSymbol NoSymbol jot + +keycode 35 = dead_tilde dead_macron dead_diaeresis dead_doubleacute + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The home row (middle row) +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 38 = u U backslash NoSymbol KP_Home KP_Home U222E +keycode 39 = i I slash Greek_iota KP_Left KP_Left integral +keycode 40 = a A braceleft Greek_alpha KP_Down KP_Down U2200 +keycode 41 = e E braceright Greek_epsilon KP_Right KP_Right U2203 +keycode 42 = o O asterisk Greek_omicron KP_End KP_End elementof + +keycode 43 = s S question Greek_sigma questiondown NoSymbol Greek_SIGMA +keycode 44 = n N parenleft Greek_nu KP_4 NoSymbol U2115 +keycode 45 = r R parenright Greek_rho KP_5 NoSymbol U211D +keycode 46 = t T minus Greek_tau KP_6 NoSymbol partialderivative +keycode 47 = d D colon Greek_delta NoSymbol NoSymbol Greek_DELTA +keycode 48 = y Y at Greek_upsilon NoSymbol NoSymbol nabla + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The lower row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 52 = udiaeresis Udiaeresis numbersign NoSymbol Escape Escape variation +keycode 53 = odiaeresis Odiaeresis dollar NoSymbol Tab Tab U2111 +keycode 54 = adiaeresis Adiaeresis bar Greek_eta KP_Next KP_Next U211C +keycode 55 = p P asciitilde Greek_pi KP_Enter KP_Enter Greek_PI +keycode 56 = z Z grave Greek_zeta NoSymbol NoSymbol U2124 + +keycode 57 = b B plus Greek_beta KP_Decimal NoSymbol implies +keycode 58 = m M percent Greek_mu KP_1 NoSymbol ifonlyif +keycode 59 = comma U22EE quotedbl U03F1 KP_2 NoSymbol U21D0 +keycode 60 = period ellipsis apostrophe Greek_theta KP_3 NoSymbol Greek_THETA +keycode 61 = j J semicolon U03D1 NoSymbol NoSymbol identical + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! Keypad +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The uppest row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +!keycode 77 = Num_Lock Pointer_EnableKeys +keycode 106 = KP_Divide KP_Divide division U2215 +keycode 63 = KP_Multiply KP_Multiply multiply U2219 +keycode 82 = KP_Subtract KP_Subtract U2212 NoSymbol + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The upper row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 79 = KP_Home KP_7 U2195 U226A +keycode 80 = KP_Up KP_8 uparrow intersection +keycode 81 = KP_Prior KP_9 U2297 U226B +keycode 86 = KP_Add KP_Add plusminus U2213 + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The middle row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 83 = KP_Left KP_4 leftarrow includedin +keycode 84 = EuroSign KP_5 infinity containsas +keycode 85 = KP_Right KP_6 rightarrow includes + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The lower row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 87 = KP_End KP_1 U2194 lessthanequal +keycode 88 = KP_Down KP_2 downarrow union +keycode 89 = KP_Next KP_3 U21CC greaterthanequal +keycode 104 = KP_Enter KP_Enter notequal U2248 +!keysym <KPEQ> KP_Equal + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! The lowest row +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +keycode 90 = KP_Insert KP_0 percent U2030 +keycode 91 = KP_Delete KP_Decimal period comma + + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! 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 Greek_XI +! +! Zusätzliches Gänsefüßchen unten („) neben dem Doppelpunkt +! Dies ist für Wörtliche Rede sinnvoll, um bei :„ oder : „ den Modifer Mod3 liegen lassen zu können +! keycode 48 = y Y doublelowquotemark Greek_upsilon y y nabla + + + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +! 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 auf Ebene 4 ermöglichen die Steuerung des Mauscursors mit der Tastatur. +! Hierzu wird mittels Shift+Num dieser Betriebsmodus ein- und später wieder ausgeschaltet. +! Die Steuerung des Cursors kann über den echten Ziffernblock oder den 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). |