From 97d8553f4bd7daa8f168522b5ee37650d8aef367 Mon Sep 17 00:00:00 2001
From: pascal <pascal@b9310e46-f624-0410-8ea1-cfbb3a30dc96>
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

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 <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: 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 <file>.
+!! 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