!! ~/.xmodmap
!!
!! neoqwertz
!!
!!
!! based upon the Modifiers and levels 3 – 7 of
!! 
!! 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>
!!      Pascal Hauck <neo at pascalhauck dot de>
!! 
!! Other Questions:
!!      <diskussion at neo-layout dot org>
!! 
!! $Revision: 2332 $, $Date: 2010-08-06 08:42:35 +0200 (Fr, 06. Aug 2010) $
!! http://neo-layout.org
!!
!! 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
!!
!!
!! This file generated by generiere_xmodmap.py
!! Ruthard Baudach <rthrd@web.de>


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! 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 64 =  Shift_L Shift_Lock
keycode 68 =  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 50 =  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.
keycode 58 = ISO_Level3_Shift  ISO_Level3_Shift  ISO_Group_Shift   ISO_Group_Shift  ISO_Level3_Lock  NoSymbol
keycode 69 = 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


! add Mod3 = ISO_Group_Shift
! add Mod5 = ISO_Level3_Shift



!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! main keyboard
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Tab key
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
keycode 56  = Tab  ISO_Left_Tab  Multi_key  ISO_Level3_Lock

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Space and Return key
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
keycode 57 = space		space		space		nobreakspace	KP_0		KP_0		U202F		NoSymbol
keycode 44 = Return		Return		Return		Return		KP_Enter	KP_Enter	Return		Return

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! dead keys
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!            Ebene1		Ebene2		Ebene3		Ebene5		Ebene4		Ebene4+Sh	Ebene6		Ebene7

keycode 18 = dead_circumflex	dead_tilde	dead_abovering	dead_breve	dead_caron  Pointer_EnableKeys	dead_macron	NoSymbol
! called T1	ˆ		˜		˚		˘		ˇ	   (keypad-mouse mode)	¯
keycode 32 = dead_grave		NoSymbol	dead_diaeresis	dead_dasia		U02F5		NoSymbol	NoSymbol	NoSymbol
! called T2	`				¨		῾ dasia (asper)	˵
keycode 38 = dead_acute		dead_cedilla	dead_stroke	dead_psili		dead_doubleacute	NoSymbol	dead_abovedot	NoSymbol
! called T3	´		¸		/		᾿ psili (lenis)	˝				˙


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! The first row (number Row)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!            Ebene1	Ebene2	Ebene3	Ebene5	Ebene4	Ebene4+Sh	Ebene6	Ebene7

keycode 26 = 	1	degree	onesuperior	onesubscript	ordfeminine	NoSymbol	notsign	NoSymbol
!		     	₁	ª	  	¬
keycode 27 = 	2	section	twosuperior	twosubscript	masculine	NoSymbol	logicalor	NoSymbol
!		     	₂	º	∨
keycode 28 = 	3	U2113	threesuperior	threesubscript	numerosign	NoSymbol	logicaland	NoSymbol
!		  	³	  	₃	№	∧
keycode 29 = 	4	guillemotright	U203A	femalesymbol	NoSymbol	NoSymbol	U22A5	NoSymbol
!		   ♀	⊥ perpendicular
keycode 31 = 	5	guillemotleft	U2039	malesymbol	periodcentered	NoSymbol	U2221	NoSymbol
!		   ♂	·	∡ angle sign
keycode 30 = 	6	dollar	cent	U26A5	sterling	NoSymbol	U2225	NoSymbol
!		   ⚥	£	∥ parallel

keycode 34 = 	7	EuroSign	yen	U03F0	currency	NoSymbol	rightarrow	NoSymbol
!		   ϰ Greek_kappa	¤	→
keycode 36 = 	8   doublelowquotemark    singlelowquotemark  leftanglebracket	Tab	ISO_Left_Tab	infinity	NoSymbol
!		   ⟨ (bra)	∞
keycode 33 = 	9   leftdoublequotemark   leftsinglequotemark rightanglebracket KP_Divide	KP_Divide	variation	NoSymbol
!		   ⟩ (ket)	/	/	∝ proportional to
keycode 37 = 	0   rightdoublequotemark  rightsinglequotemark  zerosubscript	KP_Multiply	KP_Multiply	emptyset	NoSymbol
!		   ₀	*	*	∅
keycode 35 = ssharp	U1E9E	NoSymbol	Greek_finalsmallsigma	KP_Subtract	KP_Subtract	jot	NoSymbol
!		-  ‑ non-breaking	-	-	­ soft hyphen 

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! The upper row
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!             Ebene1      Ebene2              Ebene3        Ebene5                 Ebene4        Ebene4+Sh     Ebene6             Ebene7

keycode 20 =  q           Q                   ellipsis      U03D5                  Prior         Prior         U211A               NoSymbol
keycode 21 =  w           W                   underscore    Greek_omega            BackSpace     BackSpace     Greek_OMEGA         Greek_OMEGA
keycode 22 =  e           E                   bracketleft   Greek_epsilon          Up            Up            U2203               NoSymbol
keycode 23 =  r           E                   bracketright  Greek_rho              Delete        Delete        U211D               NoSymbol
keycode 25 =  t           T                   asciicircum   Greek_tau              Next          Next          partialderivative   NoSymbol
keycode 24 =  z           Z                   exclam        Greek_zeta             exclamdown    NoSymbol      U2124               NoSymbol
keycode 40 =  u           U                   less          NoSymbol               KP_7          KP_7          includedin          NoSymbol
keycode 42 =  i           I                   greater       Greek_iota             KP_8          KP_8          integral            NoSymbol
keycode 39 =  o           O                   equal         Greek_omicron          KP_9          KP_9          elementof           NoSymbol
keycode 43 =  p           P                   ampersand     Greek_pi               KP_Add        KP_Add        Greek_PI            Greek_PI
keycode 41 =  udiaeresis  Udiaeresis          U017F         NoSymbol               U2212         NoSymbol      union               NoSymbol

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! The home row (middle row)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!            Ebene1       Ebene2              Ebene3        Ebene5                 Ebene4        Ebene4+Sh     Ebene6             Ebene7

keycode  8 =  a           A                   backslash     Greek_alpha            Home          Home         U2200                NoSymbol
keycode  9 =  s           S                   slash         Greek_sigma            Left          Left         Greek_SIGMA          Greek_SIGMA
keycode 10 =  d           D                   braceleft     Greek_delta            Down          Down         Greek_DELTA          Greek_DELTA
keycode 11 =  f           F                   braceright    Greek_phi              Right         Right        Greek_PHI            Greek_PHI
keycode 13 =  g           G                   asterisk      Greek_gamma            End           End          Greek_GAMMA          Greek_GAMMA
keycode 12 =  h           H                   question      Greek_psi              questiondown  NoSymbol     Greek_PSI            Greek_PSI
keycode 46 =  j           J                   parenleft     Greek_theta            KP_4          KP_4         Greek_THETA          Greek_THETA
keycode 48 =  k           K                   parenright    Greek_kappa            KP_5          KP_5         multiply             NoSymbol
keycode 45 =  l           L                   minus         Greek_lambda           KP_6          KP_6         Greek_LAMBDA         Greek_LAMBDA
keycode 49 =  odiaeresis  Odiaeresis          colon         U03F5                  KP_Separator  comma        intersection         NoSymbol
keycode 47 =  adiaeresis  Adiaeresis          at            Greek_eta              period        KP_Decimal   U2135                NoSymbol
!		  
!          !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!r row
! The lowe!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!   Ebene1       Ebene2              Ebene3        Ebene5                 Ebene4        Ebene4+Sh     Ebene6             Ebene7
!         
keycode 14 =  y           Y                   numbersign    Greek_upsilon          Escape        Escape        nabla              NoSymbol
keycode 15 =  x           X                   dollar        Greek_xi               Tab           ISO_Left_Tab  Greek_XI           Greek_XI
keycode 16 =  c           C                   bar           Greek_chi              Insert        Insert        U2102              NoSymbol
keycode 17 =  v           V                   asciitilde    Greek_eta              Return        Return        radical            NoSymbol
keycode 19 =  b           B                   grave         Greek_beta             Undo          Redo          U21D0              NoSymbol

keycode 53 =  n           N                   plus          Greek_nu               colon         NoSymbol      U2115              NoSymbol
keycode 54 =  m           M                   percent       Greek_mu               KP_1          KP_1          U2124              NoSymbol
keycode 51 =  comma       endash              quotedbl      U03F1                  KP_2          KP_2          U21D2              NoSymbol
keycode 55 =  period      enfilledcircbullet  apostrophe    U03D1                  KP_3          KP_3          U21A6              NoSymbol
keycode 52 =  minus       emdash              semicolon     hyphen                 semicolon     NoSymbol      ifonlyif           NoSymbol

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! 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.
