xkb_neo/patches/de_koy
2023-11-17 20:12:25 +01:00

143 lines
14 KiB
Plaintext

partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "kou" {
include "de(koy_base)"
key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
// level 4: replace numero sign by heavy check mark (key 3)
key <AE03> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, U2714, NoSymbol, NoSymbol, NoSymbol ] };
// level 4: use unused place for heavy ballot X (key 4)
key <AE04> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, U2718, NoSymbol, NoSymbol, NoSymbol ] };
// level 4: replace middle dot on key 5 with WHITE MEDIUM STAR
key <AE05> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, U2B50, NoSymbol, NoSymbol, NoSymbol ] };
// level 4: move middle dot "·" from key 5 to key 7 (replacing the currency sign "¤")
key <AE07> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, periodcentered, NoSymbol, NoSymbol, NoSymbol ] };
// move comma and endash to QWERTZ-C key
key <AB03> { [ comma, endash, NoSymbol, U03F1, NoSymbol, NoSymbol, U21D2, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
// move f and ssharp keys to new positions, replace at by rightarrow; level4: replace period with semicolon
key <AD10> { [ f, F, ampersand, Greek_phi, KP_Add, KP_Add, Greek_PHI, NoSymbol ] };
key <BKSL> { [ ssharp, U1E9E, rightarrow, Greek_finalsmallsigma, semicolon, KP_Decimal, jot, NoSymbol ] };
// rotate x, q, z, j and v
key <AD06> { [ q, Q, NoSymbol, U03D5, NoSymbol, NoSymbol, U211A, NoSymbol ] };
key <AD11> { [ j, J, NoSymbol, Greek_theta, NoSymbol, NoSymbol, Greek_THETA, NoSymbol ] };
key <AB01> { [ z, Z, NoSymbol, Greek_zeta, NoSymbol, NoSymbol, U2124, NoSymbol ] };
key <AB02> { [ x, X, NoSymbol, Greek_xi, NoSymbol, NoSymbol, Greek_XI, NoSymbol ] };
key <AB10> { [ v, V, NoSymbol, radical, NoSymbol, NoSymbol, multiply, NoSymbol ] };
// swap u, y and ä (and comma, but not here)
key <AD04> { [ u, U, NoSymbol, NoSymbol, NoSymbol, NoSymbol, includedin, NoSymbol ] };
key <AC05> { [ y, Y, NoSymbol, Greek_upsilon, NoSymbol, NoSymbol, nabla, NoSymbol ] };
key <AD05> { [ adiaeresis, Adiaeresis, NoSymbol, Greek_eta, NoSymbol, NoSymbol, U2135, NoSymbol ] };
// swap b, d and p
key <AC06> { [ b, B, NoSymbol, Greek_beta, NoSymbol, NoSymbol, U21D0, NoSymbol ] };
key <AB06> { [ p, P, NoSymbol, Greek_pi, NoSymbol, NoSymbol, Greek_PI, NoSymbol ] };
key <AB07> { [ d, D, NoSymbol, Greek_delta, NoSymbol, NoSymbol, Greek_DELTA, NoSymbol ] };
// level3: replace long s by Euro sign
key <AD11> { [ NoSymbol, NoSymbol, EuroSign, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
// level3: put braces ({, }) in upper row
key <AD03> { symbols[Group1] = [ NoSymbol, NoSymbol, braceleft, NoSymbol, Up, NoSymbol, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<UP>), NoAction(), NoAction(), NoAction() ]};
key <AD04> { [ NoSymbol, NoSymbol, braceright, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
// level3: swap underscore and percent
key <AD02> { [ NoSymbol, NoSymbol, percent, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
key <AB07> { [ NoSymbol, NoSymbol, underscore, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
// level3: replace … by @
key <AD01> { [ NoSymbol, NoSymbol, at, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
// level3: rearrangement of the home row
key <AC01> { symbols[Group1] = [ NoSymbol, NoSymbol, bar, NoSymbol, Home, Home, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<HOME>), RedirectKey(key=<HOME>), NoAction(), NoAction() ]};
key <AC02> { symbols[Group1] = [ NoSymbol, NoSymbol, grave, NoSymbol, Left, Left, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<LEFT>), RedirectKey(key=<LEFT>), NoAction(), NoAction() ]};
key <AC03> { symbols[Group1] = [ NoSymbol, NoSymbol, parenleft, NoSymbol, Down, Down, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<DOWN>), RedirectKey(key=<DOWN>), NoAction(), NoAction() ]};
key <AC04> { symbols[Group1] = [ NoSymbol, NoSymbol, parenright, NoSymbol, Right, Right, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<RGHT>), RedirectKey(key=<RGHT>), NoAction(), NoAction() ]};
key <AC07> { [ NoSymbol, NoSymbol, slash, NoSymbol, 4, NoSymbol, NoSymbol, NoSymbol ] };
key <AC08> { [ NoSymbol, NoSymbol, colon, NoSymbol, 5, NoSymbol, NoSymbol, NoSymbol ] };
key <AC10> { [ NoSymbol, NoSymbol, underscore, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
// level3: rearrangement of the bottom row
key <AB02> { [ NoSymbol, NoSymbol, bracketleft, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
key <AB03> { [ NoSymbol, NoSymbol, bracketright, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
key <AB05> { [ NoSymbol, NoSymbol, dollar, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
key <AB07> { [ NoSymbol, NoSymbol, quotedbl, NoSymbol, 1, NoSymbol, NoSymbol, NoSymbol ] };
key <AB08> { [ NoSymbol, NoSymbol, apostrophe, NoSymbol, 2, NoSymbol, NoSymbol, NoSymbol ] };
key <AB09> { [ NoSymbol, NoSymbol, backslash, NoSymbol, 3, NoSymbol, NoSymbol, NoSymbol ] };
// level 4: rotate page down, backspace and delete
key <AD02> { symbols[Group1] = [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Next, Next, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<PGDN>), RedirectKey(key=<PGDN>), NoAction(), NoAction() ]};
key <AD04> { symbols[Group1] = [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, BackSpace, BackSpace, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<BKSP>), RedirectKey(key=<BKSP>), NoAction(), NoAction() ]};
key <AD05> { symbols[Group1] = [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Delete, Delete, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<DELE>), RedirectKey(key=<DELE>), NoAction(), NoAction() ]};
// level4: rotate escape, insert and return; replace undo with thumbs up sign
key <AB01> { symbols[Group1] = [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Insert, Insert, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<INS>), RedirectKey(key=<INS>), NoAction(), NoAction() ]};
key <AB03> { symbols[Group1] = [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Return, Return, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<RTRN>), RedirectKey(key=<RTRN>), NoAction(), NoAction() ]};
key <AB04> { symbols[Group1] = [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Escape, Escape, NoSymbol, NoSymbol ],
actions[Group1] = [ NoAction(), NoAction(), NoAction(), NoAction(), RedirectKey(key=<ESC>), RedirectKey(key=<ESC>), NoAction(), NoAction() ]};
key <AB05> { [NoSymbol, NoSymbol, NoSymbol, NoSymbol, underscore, Undo, NoSymbol, NoSymbol ]};
// level4: swap . and ;
// key BKSL was already changed above
// key <BKSL> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, semicolon, NoSymbol, NoSymbol, NoSymbol ] };
key <AB10> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, period, KP_Decimal, NoSymbol, NoSymbol ] };
// level4: replace ¡ by :
key <AD06> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, colon, NoSymbol, NoSymbol, NoSymbol ] };
// level4: replace ¿ by -
key <AC06> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, minus, NoSymbol, NoSymbol, NoSymbol ] };
// level4: replace : by _
key <AB06> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, 0, NoSymbol, NoSymbol, NoSymbol ] };
name[Group1]= "German (KOU)";
include "shift(both_capslock)"
include "level3(caps_switch)"
// use quote key (a-umlaut on German keyboards) as Mod3 switch
include "level3(quote_switch)"
include "level5(lsgt_switch_lock)"
include "level5(ralt_switch_lock)"
};
partial alphanumeric_keys
xkb_symbols "vou" {
include "de(kou)"
key <AB10> { [ k, K, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
key <AD01> { [ v, V, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
key <AD08> { [ l, L, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
key <AD09> { [ h, H, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
key <AC01> { [ c, C, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
name[Group1]= "German (VOU)";
include "shift(both_capslock)"
include "level3(caps_switch)"
// use quote key (a-umlaut on German keyboards) as Mod3 switch
include "level3(quote_switch)"
include "level5(lsgt_switch_lock)"
include "level5(ralt_switch_lock)"
};