latch 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. default partial alphanumeric_keys
  2. xkb_symbols "modifiers" {
  3. name[Group1] = "Test latching behavior";
  4. virtual_modifiers Alt=Mod1, LevelThree;
  5. key <AE01> { [ 1, exclam, onesuperior, exclamdown, plus ], type[Group1]="CTRL+ALT"};
  6. key <AD01> { [ q, Q ], type[Group1] = "ALPHABETIC" };
  7. key <LFSH> {
  8. symbols[Group1] = [ Shift_L ],
  9. actions[Group1] = [ LatchMods(modifiers=Shift,latchToLock=true,clearLocks=true) ]
  10. };
  11. key <RTSH> {
  12. symbols[Group1] = [ Shift_R ],
  13. actions[Group1] = [ LatchMods(modifiers=Shift,latchToLock=false,clearLocks=false) ]
  14. };
  15. key <LCTL> {
  16. symbols[Group1] = [ Control_L ],
  17. actions[Group1] = [ LatchMods(modifiers=Control) ]
  18. };
  19. key <LALT> {
  20. type[Group1] = "ONE_LEVEL",
  21. symbols[Group1] = [ Alt_L ],
  22. actions[Group1] = [ LatchMods(modifiers=Alt) ]
  23. };
  24. key <RALT> {
  25. type[Group1] = "ONE_LEVEL",
  26. symbols[Group1] = [ ISO_Level3_Latch ],
  27. actions[Group1] = [ LatchMods(modifiers=LevelThree,latchToLock=true,clearLocks=true) ]
  28. };
  29. key <MENU> {
  30. type[Group1] = "ONE_LEVEL",
  31. symbols[Group1] = [ ISO_Level3_Latch ],
  32. actions[Group1] = [ LatchMods(modifiers=LevelThree,latchToLock=false,clearLocks=false) ]
  33. };
  34. key <FK01> { [XF86_Switch_VT_1], type[Group1] = "ONE_LEVEL" };
  35. key <FK02> { [ISO_Group_Shift], type[Group1] = "ONE_LEVEL" };
  36. key <LSGT> { [ ISO_Level3_Lock ], type[Group1] = "ONE_LEVEL" };
  37. key <CAPS> { [ ISO_Group_Latch ] };
  38. };