!! ~/.xmodmap
!! bone
!!
!!
!! 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


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! 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_caron	U21BB		U02DE		dead_abovedot Pointer_EnableKeys dead_belowdot	NoSymbol
! called T1	ˆ		ˇ		↻		˞		˙	     (keypad-mouse mode) .		
keycode 32 = dead_grave		dead_cedilla	dead_abovering	dead_dasia	dead_diaeresis	NoSymbol	dead_macron	NoSymbol
! called T2	`		¸		˚		῾ dasia (asper)	¨				¯		
keycode 38 = 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 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
!				ℓ liter		³	  	₃		№				∧
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 = 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 20 = 	j		J		ellipsis		Greek_theta		Prior		Prior		Greek_THETA		Greek_THETA
keycode 21 = 	d		D		underscore		Greek_delta		BackSpace		BackSpace		Greek_DELTA		Greek_DELTA
keycode 22 = 	u		U		bracketleft		NoSymbol		Up		Up		includedin		NoSymbol
keycode 23 = 	a		A		bracketright		Greek_alpha		Delete		Delete		U2200		NoSymbol
keycode 25 = 	x		X		asciicircum		Greek_xi		Next		Next		Greek_XI		Greek_XI

keycode 24 = 	p		P		exclam		Greek_pi		exclamdown		NoSymbol		Greek_PI		Greek_PI
keycode 40 = 	h		H		less		Greek_psi		KP_7		KP_7		Greek_PSI		Greek_PSI
keycode 42 = 	l		L		greater		Greek_lambda		KP_8		KP_8		Greek_LAMBDA		Greek_LAMBDA
keycode 39 = 	m		M		equal		Greek_mu		KP_9		KP_9		ifonlyif		NoSymbol
keycode 43 = 	w		W		ampersand		Greek_omega		KP_Add		KP_Add		Greek_OMEGA		Greek_OMEGA
keycode 41 =	ssharp		U1E9E		U017F		Greek_finalsmallsigma		U2212		NoSymbol		jot		NoSymbol

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

keycode  8 = 	c		C		backslash		Greek_chi		Home		Home		U2102		NoSymbol
keycode  9 = 	t		T		slash		Greek_tau		Left		Left		partialderivative		NoSymbol
keycode 10 = 	i		I		braceleft		Greek_iota		Down		Down		integral		NoSymbol
keycode 11 = 	e		E		braceright		Greek_epsilon		Right		Right		U2203		NoSymbol
keycode 13 = 	o		O		asterisk		Greek_omicron		End		End		elementof		NoSymbol

keycode 12 = 	b		B		question		Greek_beta		questiondown		NoSymbol		U21D0		NoSymbol
keycode 46 = 	n		N		parenleft		Greek_nu		KP_4		KP_4		U2115		NoSymbol
keycode 48 = 	r		R		parenright		Greek_rho		KP_5		KP_5		U211D		NoSymbol
keycode 45 = 	s		S		minus		Greek_sigma		KP_6		KP_6		Greek_SIGMA		Greek_SIGMA
keycode 49 = 	g		G		colon		Greek_gamma		KP_Separator		comma		Greek_GAMMA		Greek_GAMMA
keycode 47 = 	q		Q		at		U03D5		period		KP_Decimal		U211A		NoSymbol

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

keycode 14 = 	f		F		numbersign		Greek_phi		Escape		Escape		Greek_PHI		Greek_PHI
keycode 15 = 	v		V		dollar		NoSymbol		Tab		ISO_Left_Tab		radical		NoSymbol
keycode 16 = 	udiaeresis		Udiaeresis		bar		NoSymbol		Insert		Insert		union		NoSymbol
keycode 17 = 	adiaeresis		Adiaeresis		asciitilde		Greek_eta		Return		Return		U2135		NoSymbol
keycode 19 = 	odiaeresis		Odiaeresis		grave		U03F5		Undo		Redo		intersection		NoSymbol

keycode 53 = 	y		Y		plus		Greek_upsilon		colon		NoSymbol	nabla		NoSymbol
keycode 54 = 	z		Z		percent		Greek_zeta		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 = 	k		K		semicolon		Greek_kappa		semicolon		NoSymbol		multiply		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.
