OLD | NEW |
(Empty) | |
| 1 diff --git a/symbols/pc b/symbols/pc |
| 2 index 9f3da66..fa2e251 100644 |
| 3 --- a/symbols/pc |
| 4 +++ b/symbols/pc |
| 5 @@ -141,9 +141,27 @@ xkb_symbols "editing" { |
| 6 key <END> { [ End ] }; |
| 7 key <PGDN> { [ Next ] }; |
| 8 |
| 9 - key <UP> { [ Up ] }; |
| 10 + key <UP> { |
| 11 + type="ARROW", |
| 12 + repeat=yes, |
| 13 + [ Up, Up, Prior ], |
| 14 + actions[Group1] = [ |
| 15 + NoAction(), |
| 16 + NoAction(), |
| 17 + RedirectKey(key=<PGUP>, clearmods=Alt) |
| 18 + ] |
| 19 + }; |
| 20 + key <DOWN> { |
| 21 + type="ARROW", |
| 22 + repeat=yes, |
| 23 + [ Down, Down, Next ], |
| 24 + actions[Group1] = [ |
| 25 + NoAction(), |
| 26 + NoAction(), |
| 27 + RedirectKey(key=<PGDN>, clearmods=Alt) |
| 28 + ] |
| 29 + }; |
| 30 + |
| 31 key <LEFT> { [ Left ] }; |
| 32 - key <DOWN> { [ Down ] }; |
| 33 key <RGHT> { [ Right ] }; |
| 34 }; |
| 35 - |
| 36 diff --git a/types/basic b/types/basic |
| 37 index cf1ee64..90c2e5b 100644 |
| 38 --- a/types/basic |
| 39 +++ b/types/basic |
| 40 @@ -5,6 +5,7 @@ default xkb_types "basic" { |
| 41 // Fairly standard definitions for |
| 42 // the four required key types |
| 43 |
| 44 + virtual_modifiers Alt; |
| 45 virtual_modifiers NumLock; |
| 46 |
| 47 type "ONE_LEVEL" { |
| 48 @@ -28,4 +29,17 @@ default xkb_types "basic" { |
| 49 level_name[Level2] = "Caps"; |
| 50 }; |
| 51 |
| 52 + // Extra type for up and down arrow keys, which we modify to send |
| 53 + // Page Up and Page Down. |
| 54 + type "ARROW" { |
| 55 + modifiers = Shift+Lock+Alt; |
| 56 + map[Shift] = Level2; |
| 57 + map[Lock] = Level2; |
| 58 + map[Alt] = Level3; |
| 59 + map[Alt+Shift] = Level3; |
| 60 + map[Alt+Lock] = Level3; |
| 61 + level_name[Level1] = "Base"; |
| 62 + level_name[Level2] = "Caps"; |
| 63 + level_name[Level3] = "Alt"; |
| 64 + }; |
| 65 }; |
OLD | NEW |