!! ~/.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 !! Pascal Hauck !! !! Other Questions: !! !! !! $Revision$, $Date$ !! http://neo-layout.org !! !! 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 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! 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!) ! Ebene 7: wird (bis auf technisch bedingte Ausnahmen) nicht belegt ! Multi_key=Compose (keine eigene Ebene): Mod3+Tab or right window key ! Feststellen/Shift_Lock: Shift+Shift ! Mod4_Lock: Mod4(rechts)+Mod4(links) ! Reihenfolge der Ebenen in der Xmodmap: ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Ebene4+Sh Ebene6 Ebene7 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! 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 ! 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 66 = ISO_Group_Shift ISO_Group_Shift ISO_First_Group NoSymbol keycode 51 = ISO_Group_Shift ISO_Group_Shift ISO_First_Group NoSymbol !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! 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. keysym less = ISO_Level3_Shift ISO_Level3_Shift ISO_Group_Shift ISO_Group_Shift ISO_Level3_Lock NoSymbol keysym ISO_Level3_Shift = ISO_Level3_Shift ISO_Level3_Shift ISO_Group_Shift ISO_Group_Shift ISO_Level3_Lock NoSymbol !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! window keys !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! keysym Super_L = Super_L ! keycode 116 = Super_R ! keysym Super_R = Multi_key Multi_key ! add Mod4 = Super_L !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! general Lock !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Einrasten über linke Win-Taste+Modifier, Lösen über nochmaliges Betätigen des Modifiers ! Shift_Lock und Mo4_Lock funktionieren, Mod3_Lock lässt sich aber nicht mehr lösen!!!! ! keycode 115 = ISO_Lock NoSymbol ! add Lock = ISO_Lock !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! main keyboard !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Tab key !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! keycode 23 = Tab ISO_Left_Tab Multi_key ISO_Level3_Lock !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Space and Return key !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! keycode 65 = space space space nobreakspace KP_0 KP_0 U202F NoSymbol keycode 36 = Return Return Return Return KP_Enter KP_Enter Return Return !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! dead keys !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Ebene4+Sh Ebene6 Ebene7 keycode 49 = dead_circumflex dead_caron U21BB U02DE dead_abovedot Pointer_EnableKeys dead_belowdot NoSymbol ! called T1 ˆ ˇ ↻ ˞ ˙ (keypad-mouse mode) . keycode 21 = dead_grave dead_cedilla dead_abovering dead_dasia dead_diaeresis NoSymbol dead_macron NoSymbol ! called T2 ` ¸ ˚ ῾ dasia (asper) ¨ ¯ keycode 35 = dead_acute dead_tilde dead_stroke dead_psili dead_doubleacute NoSymbol dead_breve NoSymbol ! called T3 ´ ˜ / ᾿ psili (lenis) ˝ ˘ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The first row (number Row) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Ebene4+Sh Ebene6 Ebene7 keycode 10 = 1 degree onesuperior onesubscript ordfeminine NoSymbol notsign NoSymbol ! ° ¹ ₁ ª ¬ keycode 11 = 2 section twosuperior twosubscript masculine NoSymbol logicalor NoSymbol ! § ² ₂ º ∨ keycode 12 = 3 U2113 threesuperior threesubscript numerosign NoSymbol logicaland NoSymbol ! ℓ liter ³ ₃ № ∧ keycode 13 = 4 guillemotright U203A femalesymbol NoSymbol NoSymbol U22A5 NoSymbol ! » › ♀ ⊥ perpendicular keycode 14 = 5 guillemotleft U2039 malesymbol periodcentered NoSymbol U2221 NoSymbol ! « ‹ ♂ · ∡ angle sign keycode 15 = 6 dollar cent U26A5 sterling NoSymbol U2225 NoSymbol ! $ ¢ ⚥ £ ∥ parallel keycode 16 = 7 EuroSign yen U03F0 currency NoSymbol rightarrow NoSymbol ! € ¥ ϰ Greek_kappa ¤ → keycode 17 = 8 doublelowquotemark singlelowquotemark leftanglebracket Tab ISO_Left_Tab infinity NoSymbol ! „ ‚ ⟨ (bra) ∞ keycode 18 = 9 leftdoublequotemark leftsinglequotemark rightanglebracket KP_Divide KP_Divide variation NoSymbol ! “ ‘ ⟩ (ket) / / ∝ proportional to keycode 19 = 0 rightdoublequotemark rightsinglequotemark zerosubscript KP_Multiply KP_Multiply emptyset NoSymbol ! ” ’ ₀ * * ∅ keycode 20 = minus emdash NoSymbol U2011 KP_Subtract KP_Subtract hyphen NoSymbol ! - — ‑ non-breaking - - ­ soft hyphen !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The upper row !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Ebene4+Sh Ebene6 Ebene7 keycode 24 = x X ellipsis Greek_xi Prior Prior Greek_XI Greek_XI ! … ξ Ξ Ξ keycode 25 = v V underscore NoSymbol BackSpace BackSpace radical NoSymbol ! _ √ keycode 26 = l L bracketleft Greek_lambda Up Up Greek_LAMBDA Greek_LAMBDA ! [ λ Λ Λ keycode 27 = c C bracketright Greek_chi Delete Delete U2102 NoSymbol ! ] χ ℂ komplex keycode 28 = w W asciicircum Greek_omega Next Next Greek_OMEGA Greek_OMEGA ! ^ ω Ω Ω keycode 29 = k K exclam Greek_kappa exclamdown NoSymbol multiply NoSymbol ! ! κ ¡ × times keycode 30 = h H less Greek_psi KP_7 KP_7 Greek_PSI Greek_PSI ! < η Ψ Ψ keycode 31 = g G greater Greek_gamma KP_8 KP_8 Greek_GAMMA Greek_GAMMA ! > γ Γ Γ keycode 32 = f F equal Greek_phi KP_9 KP_9 Greek_PHI Greek_PHI ! = φ Φ Φ keycode 33 = q Q ampersand U03D5 KP_Add KP_Add U211A NoSymbol ! & ϕ Greek_phi + + ℚ rational keycode 34 = ssharp U1E9E U017F Greek_finalsmallsigma U2212 NoSymbol jot NoSymbol ! ß ẞ Capital ß ſ long s ς − real minus ∘ ring operator !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The home row (middle row) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Ebene4+Sh Ebene6 Ebene7 keycode 38 = u U backslash NoSymbol Home Home includedin NoSymbol ! \ ⊂ keycode 39 = i I slash Greek_iota Left Left integral NoSymbol ! / ι ∫ keycode 40 = a A braceleft Greek_alpha Down Down U2200 NoSymbol ! { α ∀ for all keycode 41 = e E braceright Greek_epsilon Right Right U2203 NoSymbol ! } ε ∃ there exists keycode 42 = o O asterisk Greek_omicron End End elementof NoSymbol ! * ο ∈ keycode 43 = s S question Greek_sigma questiondown NoSymbol Greek_SIGMA Greek_SIGMA ! ? σ ¿ Σ Σ keycode 44 = n N parenleft Greek_nu KP_4 KP_4 U2115 NoSymbol ! ( ν ℕ natural keycode 45 = r R parenright Greek_rho KP_5 KP_5 U211D NoSymbol ! ) ρ ℝ real keycode 46 = t T minus Greek_tau KP_6 KP_6 partialderivative ! - τ ∂ keycode 47 = d D colon Greek_delta KP_Separator comma Greek_DELTA Greek_DELTA ! : δ , , Δ Δ keycode 48 = y Y at Greek_upsilon period KP_Decimal nabla NoSymbol ! @ υ . . ∇ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The lower row !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Ebene4+Sh Ebene6 Ebene7 keycode 52 = udiaeresis Udiaeresis numbersign NoSymbol Escape Escape union NoSymbol ! ü Ü # ∪ keycode 53 = odiaeresis Odiaeresis dollar U03F5 Tab ISO_Left_Tab intersection NoSymbol ! ö Ö $ ϵ ∩ keycode 54 = adiaeresis Adiaeresis bar Greek_eta Insert Insert U2135 NoSymbol ! ä Ä | η ℵ keycode 55 = p P asciitilde Greek_pi Return Return Greek_PI Greek_PI ! ~ π Π Π keycode 56 = z Z grave Greek_zeta Undo Redo U2124 NoSymbol ! ` ζ ℤ integers keycode 57 = b B plus Greek_beta colon NoSymbol U21D0 NoSymbol ! + β : ⇐ keycode 58 = m M percent Greek_mu KP_1 KP_1 ifonlyif NoSymbol ! % μ ⇔ keycode 59 = comma endash quotedbl U03F1 KP_2 KP_2 U21D2 NoSymbol ! , – " ϱ Greek_rho ⇒ implies keycode 60 = period enfilledcircbullet apostrophe U03D1 KP_3 KP_3 U21A6 NoSymbol ! . • ' ϑ Greek_theta ↦ keycode 61 = j J semicolon Greek_theta semicolon NoSymbol Greek_THETA Greek_THETA ! ; θ ; Θ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Keypad !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The uppest row !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene6 Ebene7 Ebene4 Ebene4+Sh keycode 77 = Tab ISO_Left_Tab equal approxeq identical NoSymbol notequal Pointer_EnableKeys ! = ≈ almost equal ≡ identical to ≠ (keypad-mouse mode) keysym KP_Divide = KP_Divide KP_Divide division U2300 U2223 NoSymbol U2044 NoSymbol ! / / ÷ ⌀ diameter ∣ divides (for ⁶⁄₅₉) keycode 63 = KP_Multiply KP_Multiply U22C5 U2299 U2297 NoSymbol multiply NoSymbol ! * * ⋅ dot ⊙ cirled dot ⊗ circled times × times keycode 82 = KP_Subtract KP_Subtract U2212 U2296 U2238 NoSymbol U2216 NoSymbol ! - - − real minus ⊖ cirled minus ∸ dot minus ∖ set minus !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The upper row !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene6 Ebene7 Ebene4 Ebene4+Sh keycode 79 = KP_7 U2714 U2195 U226A upstile NoSymbol KP_Home KP_Home ! ✔ check mark ↕ arrow ≪ much less ⌈ keycode 80 = KP_8 U2718 uparrow intersection U22C2 NoSymbol KP_Up KP_Up ! ✘ ballot x ↑ ∩ ⋂ n-ary intersection keycode 81 = KP_9 dagger U20D7 U226B U2309 NoSymbol KP_Prior KP_Prior ! † vector ≫ much greater ⌉ keycode 86 = KP_Add KP_Add plusminus U2295 U2214 NoSymbol U2213 NoSymbol ! + + ± circled plus dot plus ∓ minus-plus !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The middle row !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene6 Ebene7 Ebene4 Ebene4+Sh keycode 83 = KP_4 club leftarrow includedin U2286 NoSymbol KP_Left KP_Left ! ♣ ← ⊂ ⊆ keycode 84 = KP_5 EuroSign colon U22B6 U22B7 NoSymbol KP_Begin KP_Begin ! € : ⊶ original of ⊷ image of keycode 85 = KP_6 U2023 rightarrow includes U2287 NoSymbol KP_Right KP_Right ! ‣ → ⊃ ⊇ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The lower row !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene6 Ebene7 Ebene4 Ebene4+Sh keycode 87 = KP_1 diamond U2194 lessthanequal downstile NoSymbol KP_End KP_End ! ♦ ↔ arrow ≤ ⌊ keycode 88 = KP_2 heart downarrow union U22C3 NoSymbol KP_Down KP_Down ! ♥ ↓ ∪ ⋃ n-ary union keycode 89 = KP_3 U2660 U21CC greaterthanequal U230B NoSymbol KP_Next KP_Next ! ♠ ⇌ ≥ ⌋ ! keycode 108 = KP_Enter KP_Enter KP_Enter KP_Enter KP_Enter KP_Enter KP_Enter KP_Enter ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! The lowest row !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Ebene1 Ebene2 Ebene3 Ebene5 Ebene6 Ebene7 Ebene4 Ebene4+Sh keycode 90 = KP_0 U2423 percent U2030 U25A1 NoSymbol KP_Insert KP_Insert ! ␣ space sign % ‰ per mille □ white square keycode 91 = KP_Separator period comma minutes seconds NoSymbol KP_Delete KP_Delete ! , . , ′ min,feets ″ sec,inches add Mod3 = ISO_First_Group add Mod5 = ISO_Level3_Shift !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! 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 Shift+Mod4+T1 dieser Betriebsmodus ein- und später wieder ausgeschaltet. ! Die Steuerung des Cursors kann über den Ziffernblock (Ebene 4, eventuell mit ! eingerastetem Mod4) erfolgen.