From 1f29b487cd84a624c8e726aace566ba2dd0fc2fc Mon Sep 17 00:00:00 2001 From: Andreas Wettstein Date: Sat, 3 Aug 2013 18:31:37 +0200 Subject: [PATCH] Fixes to DIN T3 layout: - Use standard compliant to access the "common secondary group" and Level 3, using latches. This requires Xorg server 1.15 or up to work. - Avoid binding Level5 to Shift, by changing the compat for ISO_Level5_Latch and ISO_Level5_Lock. They now look like the Level3-keysyms. Only de(T3) and de(neo) use these two keysyms, no backward compatibility issues are to be expected. For T3, changing ISO_Level5_Latch would have been sufficient. - Do not include latin(type4), to avoid populating Level4 with random stuff that cannot be removed once users get used to it. - Consistent use of dead_stroke. Signed-off-by: Andreas Wettstein --- compat/level5 | 2 ++ symbols/de | 14 +++++++------- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/compat/level5 b/compat/level5 index 8d28051..8e0cc9c 100644 --- a/compat/level5 +++ b/compat/level5 @@ -20,6 +20,7 @@ default partial xkb_compatibility "default" { }; interpret ISO_Level5_Latch+Any { + useModMapMods= level1; virtualModifier= LevelFive; action= LatchMods(modifiers=LevelFive); }; @@ -29,6 +30,7 @@ default partial xkb_compatibility "default" { }; interpret ISO_Level5_Lock+Any { + useModMapMods= level1; virtualModifier= LevelFive; action= LockMods(modifiers=LevelFive); }; diff --git a/symbols/de b/symbols/de index 20689af..adc60ed 100644 --- a/symbols/de +++ b/symbols/de @@ -107,8 +107,6 @@ xkb_symbols "deadacute" { partial alphanumeric_keys xkb_symbols "T3" { - include "latin(type4)" - name[Group1]="German (T3)"; key.type[Group1] = "EIGHT_LEVEL"; @@ -151,7 +149,7 @@ xkb_symbols "T3" { key { [ g, G, seconds, NoSymbol, eng, ENG, dead_belowmacron, NoSymbol ] }; key { [ h, H, U1E9E, NoSymbol, U0272, U019D, U0332, NoSymbol ] }; key { [ j, J, dead_cedilla, NoSymbol, U0133, U0132, dead_belowring, NoSymbol ] }; - key { [ k, K, dead_belowcomma, NoSymbol, kra, dead_belowcomma, U0335, NoSymbol ] }; + key { [ k, K, dead_belowcomma, NoSymbol, kra, dead_belowcomma, dead_stroke, NoSymbol ] }; key { [ l, L, dead_ogonek, NoSymbol, lstroke, Lstroke, U0338, NoSymbol ] }; key { [ odiaeresis, Odiaeresis, dead_belowdot, NoSymbol, dead_acute, dead_doubleacute, degree, NoSymbol ] }; key { [ adiaeresis, Adiaeresis, dead_stroke, NoSymbol, U019B, U1E9E, minutes, NoSymbol ] }; @@ -176,10 +174,12 @@ xkb_symbols "T3" { include "kpdl(comma)" - // We do not support the correct level selection mechanism yet, this is - //just for testing: - include "level5(rctrl_switch)" - include "level3(ralt_switch)" + include "level5(modifier_mapping)" + include "level3(modifier_mapping)" + key.type[Group1] = "THREE_LEVEL"; + key { [ Shift_L, Shift_L, ISO_Level5_Latch ] }; + key { [ Shift_R, Shift_R, ISO_Level5_Latch ] }; + key { [ ISO_Level3_Latch, ISO_Level5_Latch, ISO_Level5_Latch ] }; }; partial alphanumeric_keys -- 1.8.3.1