logo

oasis-root

Compiled tree of Oasis Linux based on own branch at <https://hacktivis.me/git/oasis/> git clone https://anongit.hacktivis.me/git/oasis-root.git

pc (2573B)


  1. default partial xkb_types "default" {
  2. // Some types that are necessary
  3. // for a full implementation of
  4. // a PC-compatible keyboard.
  5. virtual_modifiers Alt;
  6. virtual_modifiers LevelThree;
  7. type "PC_SUPER_LEVEL2" {
  8. modifiers = Mod4;
  9. map[None] = Level1;
  10. map[Mod4] = Level2;
  11. level_name[Level1] = "Base";
  12. level_name[Level2] = "Super";
  13. };
  14. type "PC_CONTROL_LEVEL2" {
  15. modifiers = Control;
  16. map[None] = Level1;
  17. map[Control] = Level2;
  18. level_name[Level1] = "Base";
  19. level_name[Level2] = "Control";
  20. };
  21. type "PC_ALT_LEVEL2" {
  22. modifiers = Alt;
  23. map[None] = Level1;
  24. map[Alt] = Level2;
  25. level_name[Level1] = "Base";
  26. level_name[Level2] = "Alt";
  27. };
  28. type "CTRL+ALT" {
  29. modifiers = Control+Alt+Shift+LevelThree;
  30. map[None] = Level1;
  31. map[Shift] = Level2;
  32. map[LevelThree] = Level3;
  33. map[Shift+LevelThree] = Level4;
  34. map[Control+Alt] = Level5;
  35. preserve[Shift] = Shift;
  36. preserve[Shift+LevelThree] = Shift;
  37. level_name[Level1] = "Base";
  38. level_name[Level2] = "Shift";
  39. level_name[Level3] = "Alt Base";
  40. level_name[Level4] = "Shift Alt";
  41. level_name[Level5] = "Ctrl+Alt";
  42. };
  43. // Local eight level.
  44. // Needed when you want part of your layout eight-level but cannot use
  45. // LevelFive as modifier, as this will take over the right Ctrl by default
  46. // for the whole layout and is too invasive for the average four-level user.
  47. // Needed to fix bug #9529.
  48. // FIXME: Should really use RControl but it seems not to be enabled by
  49. // default and touching this requires a lot of testing.
  50. type "LOCAL_EIGHT_LEVEL" {
  51. modifiers = Shift+Lock+LevelThree+Control;
  52. map[None] = Level1;
  53. map[Lock+Shift] = Level1;
  54. map[Shift] = Level2;
  55. map[Lock] = Level2;
  56. map[LevelThree] = Level3;
  57. map[Lock+Shift+LevelThree] = Level3;
  58. map[Shift+LevelThree] = Level4;
  59. map[Lock+LevelThree] = Level4;
  60. map[Control] = Level5;
  61. map[Lock+Shift+Control] = Level5;
  62. map[Shift+Control] = Level6;
  63. map[Lock+Control] = Level6;
  64. map[LevelThree+Control] = Level7;
  65. map[Lock+Shift+LevelThree+Control] = Level7;
  66. map[Shift+LevelThree+Control] = Level8;
  67. map[Lock+LevelThree+Control] = Level8;
  68. level_name[Level1] = "Base";
  69. level_name[Level2] = "Shift";
  70. level_name[Level3] = "Level3";
  71. level_name[Level4] = "Shift Level3";
  72. level_name[Level5] = "Ctrl";
  73. level_name[Level6] = "Shift Ctrl";
  74. level_name[Level7] = "Level3 Ctrl";
  75. level_name[Level8] = "Shift Level3 Ctrl";
  76. };
  77. };