diff options
Diffstat (limited to 'xorg-server/xkeyboard-config')
-rw-r--r-- | xorg-server/xkeyboard-config/README | 38 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/docs/README.symbols | 45 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/altwin | 80 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/be | 8 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/capslock | 34 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/ctrl | 44 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/level3 | 69 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/level5 | 69 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/rs | 2 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/shift | 29 |
10 files changed, 208 insertions, 210 deletions
diff --git a/xorg-server/xkeyboard-config/README b/xorg-server/xkeyboard-config/README index d91eda6e6..2be1ab633 100644 --- a/xorg-server/xkeyboard-config/README +++ b/xorg-server/xkeyboard-config/README @@ -1,28 +1,28 @@ X Keyboard Extension -------------------- -The X Keyboard Extension essentially replaces the core protocol definition of -keyboard. The extension makes possible to clearly and explicitly specify most -aspects of keyboard behaviour on per-key basis and to more closely track the -logical and physical state of the keyboard. It also includes a number of -keyboard controls designed to make keyboards more accessible to people with -physical impairments. +The X Keyboard Extension essentially replaces the core protocol definition +of the keyboard. The extension makes it possible to clearly and explicitly +specify most aspects of keyboard behaviour on a per-key basis and to more +closely track the logical and physical state of the keyboard. It also +includes a number of keyboard controls designed to make keyboards more +accessible to people with physical impairments. -There are five types of components in the server database corresponing to five -xkb symbolic names: symbols, geometry, keycodes, compat and types which -determine the keyboard behaviour. These five components can combined together -into a resulting keyboard mapping using the 'rules' component. +There are five types of components in the server database corresponding to +five xkb symbolic names (symbols, geometry, keycodes, compat, and types) +which determine the keyboard behaviour. These five components can be +combined into a resulting keyboard mapping using the 'rules' component. -The complete specification can be found on -http://xfree86.org/current/XKBproto.pdf +The complete specification can be found in: + http://www.x.org/current/doc/kbproto/xkbproto.pdf -For XKB configuration information see 'docs/README.config' file. +For XKB configuration information, see the 'docs/README.config' file. -For information how to further enhance XKB configuration see 'docs/README.enhancing' -file. +For information on how to further enhance XKB configuration, see the +'docs/README.enhancing' file. -For information how to replace existing XKB configuration database with -XKeyboardConfig see 'docs/HOWTO.transition' file. +For information on how to replace an existing XKB configuration database +with XKeyboardConfig, see the 'docs/HOWTO.transition' file. -Contribution guidelines are described at -http://www.freedesktop.org/wiki/Software/XKeyboardConfig/Rules +Contribution guidelines are described on: + http://www.freedesktop.org/wiki/Software/XKeyboardConfig/Rules diff --git a/xorg-server/xkeyboard-config/docs/README.symbols b/xorg-server/xkeyboard-config/docs/README.symbols index 749618e77..31ca053eb 100644 --- a/xorg-server/xkeyboard-config/docs/README.symbols +++ b/xorg-server/xkeyboard-config/docs/README.symbols @@ -1,51 +1,48 @@ -The files in the symbols directory describe possible layouts for a given -keyboard. +The files in the symbols directory describe possible keyboard layouts +for a given country or language or script. The default layout in each file should describe the most common layout -for its kind, usually the symbols printed on the keys. Layout variants -can describe common differences that are not necessarily printed on the keys. -(e.g. a phonetic version of Cyrillic). +for its kind, usually the one that matches the symbols printed on the +keys. Layout variants can describe common deviations that are not +necessarily printed on the keys (e.g. a phonetic version of Cyrillic). -The names of the files are referenced throughout the XKB rules, and may be -exposed in the X server configuration and in user configuration tools. +The names of the files are referenced throughout the XKB rules, and may +be exposed in the X server configuration and in user configuration tools. The filenames use the following convention: Country layouts: - Keyboard layouts for a country must use the 2-letter code from the ISO-3166 standard. Language layouts: - Keyboard layouts for a language must use the 3-letter code from the ISO-639 standard. Script layouts: - Keyboard layouts for a script must use the 4-letter code from the ISO-15924 standard. Other: + Keyboard layouts that do not fit in the above categories must use a + filename between 5 and 8 characters. - Keyboard layouts that do not fit in the above model and directories - must use a filename between 5 and 8 characters. - -The ISO codes can be found at the following addressed: +The relevant ISO codes can be found at the following addresses: -Country layouts: http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/iso_3166-1_decoding_table.html -Language layouts: http://www.loc.gov/standards/iso639-2/langcodes.html +Country layouts: http://www.iso.org/iso/home/standards/country_codes/iso-3166-1_decoding_table.htm +Language layouts: http://www.loc.gov/standards/iso639-2/php/code_list.php Script layouts: http://www.unicode.org/iso15924/iso15924-codes.html -The description in the directory file base.xml.in should match the group names -in the symbols file. +The descriptions of the layouts in the file base.xml.in should match the +group names in the symbols file. -If the layout is country-based, this has to be the full -name of the country. It is highly not recommended to use the forms -"Republic of XXX" or "XXX Republic" - the form "XXX" should be used instead. -The only exception is "United Kingdom". +If the layout is country-based, the group name has to be the full name of +the country. It is highly discouraged to use forms like "Republic of XXX" +or "XXX Republic" -- the form "XXX" should be used instead. The only +exception is "United Kingdom". -If the layout is language-based, this has to be the name of the language. +If the layout is language-based, the group name has to be the name of the +language. -Within single symbols file, all the variants should have the same group name +Within a single symbols file, all the variants should have the same group name (implemented using the "include" directive wherever possible). diff --git a/xorg-server/xkeyboard-config/symbols/altwin b/xorg-server/xkeyboard-config/symbols/altwin index c65727db4..333b7dacd 100644 --- a/xorg-server/xkeyboard-config/symbols/altwin +++ b/xorg-server/xkeyboard-config/symbols/altwin @@ -1,100 +1,106 @@ +// Meta is mapped to second level of Alt keys. partial modifier_keys xkb_symbols "meta_alt" { - key <LALT> { [ Alt_L, Meta_L ] }; + key <LALT> { [ Alt_L, Meta_L ] }; key <RALT> { type[Group1] = "TWO_LEVEL", symbols[Group1] = [ Alt_R, Meta_R ] }; - modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R }; -// modifier_map Mod4 {}; + modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R }; +// modifier_map Mod4 {}; }; -// Alt is mapped to the Win-keys (and the usual Alt keys). +// Alt is mapped to the Win keys (and the usual Alt keys). partial modifier_keys xkb_symbols "alt_win" { - key <LWIN> { [ Alt_L ] }; - key <RWIN> { [ Alt_R ] }; + key <LWIN> { [ Alt_L ] }; + key <RWIN> { [ Alt_R ] }; modifier_map Mod1 { <LWIN>, <RWIN> }; }; -// Ctrl is mapped to the Win-keys (and the usual Ctrl keys). +// Ctrl is mapped to the Win keys (and the usual Ctrl keys). partial modifier_keys xkb_symbols "ctrl_win" { - key <LWIN> { [ Control_L ] }; - key <RWIN> { [ Control_R ] }; + key <LWIN> { [ Control_L ] }; + key <RWIN> { [ Control_R ] }; modifier_map Control { <LWIN>, <RWIN> }; }; -// Ctrl is mapped to the Alt-keys, Alt is mapped to the Win-keys, Win is mapped to the Ctrl-keys. +// Ctrl is mapped to the Alt keys, Alt to the Win keys, and Win to the Ctrl keys. partial modifier_keys xkb_symbols "ctrl_alt_win" { - key <LALT> { [ Control_L, Control_L ] }; + key <LALT> { [ Control_L, Control_L ] }; key <RALT> { type[Group1] = "TWO_LEVEL", symbols[Group1] = [ Control_R, Control_R ] }; - key <LWIN> { [ Alt_L, Meta_L ] }; - key <RWIN> { [ Alt_R, Meta_R ] }; + key <LWIN> { [ Alt_L, Meta_L ] }; + key <RWIN> { [ Alt_R, Meta_R ] }; modifier_map Control { <RALT>, <LALT> }; - modifier_map Mod1 { <LWIN>, <RWIN> }; + modifier_map Mod1 { <LWIN>, <RWIN> }; }; - +// Meta is mapped to the Win keys. partial modifier_keys xkb_symbols "meta_win" { - key <LALT> { [ Alt_L, Alt_L ] }; + key <LALT> { [ Alt_L, Alt_L ] }; key <RALT> { type[Group1] = "TWO_LEVEL", symbols[Group1] = [ Alt_R, Alt_R ] }; - key <LWIN> { [ Meta_L ] }; - key <RWIN> { [ Meta_R ] }; - modifier_map Mod1 { Alt_L, Alt_R }; - modifier_map Mod4 { <META>, Meta_L, Meta_R }; + key <LWIN> { [ Meta_L ] }; + key <RWIN> { [ Meta_R ] }; + modifier_map Mod1 { Alt_L, Alt_R }; + modifier_map Mod4 { <META>, Meta_L, Meta_R }; }; +// Meta is mapped to the left Win key. partial modifier_keys xkb_symbols "left_meta_win" { - key <LALT> { [ Alt_L, Alt_L ] }; - key <LWIN> { [ Meta_L ] }; - modifier_map Mod1 { Alt_L }; - modifier_map Mod4 { <META>, Meta_L }; + key <LALT> { [ Alt_L, Alt_L ] }; + key <LWIN> { [ Meta_L ] }; + modifier_map Mod1 { Alt_L }; + modifier_map Mod4 { <META>, Meta_L }; }; +// Hyper is mapped to the Win keys. partial modifier_keys xkb_symbols "hyper_win" { - key <LWIN> { [ Hyper_L ] }; - key <RWIN> { [ Hyper_R ] }; - modifier_map Mod4 { Hyper_L, Hyper_R }; + key <LWIN> { [ Hyper_L ] }; + key <RWIN> { [ Hyper_R ] }; + modifier_map Mod4 { Hyper_L, Hyper_R }; }; -// Use Menu for the menu key +// Menu is mapped to the Menu key. partial modifier_keys xkb_symbols "menu" { - key <MENU> { [ Menu ] }; + key <MENU> { [ Menu ] }; }; // Layout for Tux key caps with additional right Alt key partial modifier_keys xkb_symbols "alt_super_win" { - key <LALT> { [ Alt_L, Meta_L ] }; - key <RWIN> { [ Alt_R, Meta_R ] }; - key <LWIN> { [ Super_L ] }; - key <MENU> { [ Super_R ] }; - modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R }; - modifier_map Mod4 { Super_L, Super_R }; + key <LALT> { [ Alt_L, Meta_L ] }; + key <RWIN> { [ Alt_R, Meta_R ] }; + key <LWIN> { [ Super_L ]}; + key <MENU> { [ Super_R ] }; + modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R }; + modifier_map Mod4 { Super_L, Super_R }; }; +// Swap the Alt and Win keys. partial modifier_keys xkb_symbols "swap_alt_win" { include "altwin(swap_lalt_lwin)" include "altwin(swap_ralt_rwin)" }; +// Swap the left Alt and Win keys. partial hidden modifier_keys xkb_symbols "swap_lalt_lwin" { key <LALT> { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Super_L ] }; - key <LWIN> { [ Alt_L, Meta_L ] }; + key <LWIN> { [ Alt_L, Meta_L ] }; }; +// Swap the right Alt and Win keys. partial hidden modifier_keys xkb_symbols "swap_ralt_rwin" { key <RALT> { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Super_R ] }; - key <RWIN> { [ Alt_R, Meta_R ] }; + key <RWIN> { [ Alt_R, Meta_R ] }; }; diff --git a/xorg-server/xkeyboard-config/symbols/be b/xorg-server/xkeyboard-config/symbols/be index 286e9289e..c89a9338c 100644 --- a/xorg-server/xkeyboard-config/symbols/be +++ b/xorg-server/xkeyboard-config/symbols/be @@ -51,11 +51,11 @@ xkb_symbols "basic" { // │ ³ ≤ │ 1 ≥ │ 2 É │ 3 ˘ │ 4 — │ 5 – │ 6 ™ │ 7 È │ 8 ¡ │ 9 Ç │ 0 À │ ° Ø │ _ ± ┃ ⌫ Retour┃ // │ ² ¹ │ & | │ é @ │ " # │ ' ¸ │ ( ˇ │ § ^ │ è ` │ ! ~ │ ç { │ à } │ ) ø │ - ‑ ┃ arrière┃ // ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ -// ┃ ┃ A Æ │ Z  │ E ¢ │ R Ê │ T Þ │ Y Ÿ │ U Û │ I Î │ O Œ │ P Ô │ ¨ ˚ │ * ̨ ┃Entrée ┃ +// ┃ ┃ A Æ │ Z  │ E ¢ │ R Ê │ T Þ │ Y Ÿ │ U Û │ I Î │ O Œ │ P Ô │ ¨ ˚ │ * ̨ ┃Entrée ┃ // ┃Tab ↹ ┃ a æ │ z â │ e € │ r ê │ t þ │ y ÿ │ u û │ i î │ o œ │ p ô │ ^ [ │ $ ] ┃ ⏎ ┃ // ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ -// ┃ ┃ Q Ä │ S „ │ D Ë │ F ‚ │ G ¥ │ H Ð │ J Ü │ K Ï │ L Ł │ M Ö │ % Ù │ £ ̄ ┃ ┃ -// ┃Maj ⇬ ┃ q ä │ s ß │ d ë │ f ‘ │ g ’ │ h ð │ j ü │ k ï │ l ł │ m ö │ ù ' │ µ ` ┃ ┃ +// ┃ ┃ Q Ä │ S „ │ D Ë │ F ‚ │ G ¥ │ H Ð │ J Ü │ K Ï │ L │ M Ö │ % Ù │ £ ̄ ┃ ┃ +// ┃Maj ⇬ ┃ q ä │ s ß │ d ë │ f ‘ │ g ’ │ h ð │ j ü │ k ï │ l / │ m ö │ ù ' │ µ ` ┃ ┃ // ┣━━━━━━━┳┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫ // ┃ ┃ > ≠ │ W “ │ X ” │ C ® │ V ← │ B ↑ │ N → │ ? … │ . . │ / ∕ │ + − ┃ ┃ // ┃Shift ⇧┃ < \ │ w « │ x » │ c © │ v ⍽ │ b ↓ │ n ¬ │ , ¿ │ ; × │ : ÷ │ = ~ ┃Shift ⇧ ┃ @@ -92,7 +92,7 @@ xkb_symbols "oss_frbe" { key <AD12> { [ dollar, asterisk, bracketright, dead_ogonek ] }; // $ * ] ̨ // Third row - key <AC09> { [ l, L, dead_stroke ] }; // l L ł Ł + key <AC09> { [ l, L, dead_stroke ] }; key <BKSL> { [ mu, sterling, dead_grave, dead_macron ] }; // µ £ ` ̄ // Fourth row diff --git a/xorg-server/xkeyboard-config/symbols/capslock b/xorg-server/xkeyboard-config/symbols/capslock index 3e0880573..8b315c6f1 100644 --- a/xorg-server/xkeyboard-config/symbols/capslock +++ b/xorg-server/xkeyboard-config/symbols/capslock @@ -1,68 +1,68 @@ default partial hidden modifier_keys xkb_symbols "capslock" { - replace key <CAPS> { [ Caps_Lock ] }; + replace key <CAPS> { [ Caps_Lock ] }; modifier_map Lock { Caps_Lock }; }; partial hidden modifier_keys xkb_symbols "shiftlock" { - replace key <CAPS> { [ Shift_Lock ] }; + replace key <CAPS> { [ Shift_Lock ] }; modifier_map Shift { Shift_Lock }; }; partial hidden modifier_keys xkb_symbols "grouplock" { - replace key <CAPS> { [ ISO_Next_Group, Caps_Lock ] }; + replace key <CAPS> { [ ISO_Next_Group, Caps_Lock ] }; }; partial hidden modifier_keys xkb_symbols "swapescape" { - key <CAPS> { [ Escape ] }; - key <ESC> { [ Caps_Lock ] }; + key <CAPS> { [ Escape ] }; + key <ESC> { [ Caps_Lock ] }; }; partial hidden modifier_keys xkb_symbols "groupshift" { key <CAPS> { - type[Group1]="PC_ALT_LEVEL2", - [ Mode_switch, Caps_Lock ] + type[Group1] = "PC_ALT_LEVEL2", + [ Mode_switch, Caps_Lock ] }; }; partial hidden modifier_keys xkb_symbols "escape" { - key <CAPS> { [ Escape ] }; + key <CAPS> { [ Escape ] }; }; partial hidden modifier_keys xkb_symbols "backspace" { - key <CAPS> { [ BackSpace ] }; + key <CAPS> { [ BackSpace ] }; }; partial hidden modifier_keys xkb_symbols "super" { - key <CAPS> { [ Super_L ] }; - modifier_map Mod4 { <CAPS> }; + key <CAPS> { [ Super_L ] }; + modifier_map Mod4 { <CAPS> }; }; partial hidden modifier_keys xkb_symbols "hyper" { - key <CAPS> { [ Hyper_L ] }; - modifier_map Mod4 { <CAPS> }; + key <CAPS> { [ Hyper_L ] }; + modifier_map Mod4 { <CAPS> }; }; partial hidden modifier_keys xkb_symbols "none" { - key <CAPS> { [ VoidSymbol ] }; + key <CAPS> { [ VoidSymbol ] }; }; partial hidden modifier_keys xkb_symbols "numlock" { - key <CAPS> { [ Num_Lock ] }; + key <CAPS> { [ Num_Lock ] }; }; -// This changes the modifier behavior of the <CAPS> key. -// The keysym will be reset to Caps_Lock +// This changes the <CAPS> key to become a Control modifier, +// but it will still produce the Caps_Lock keysym. partial hidden modifier_keys xkb_symbols "ctrl_modifier" { replace key <CAPS> { diff --git a/xorg-server/xkeyboard-config/symbols/ctrl b/xorg-server/xkeyboard-config/symbols/ctrl index 09d76b551..ca019ec7d 100644 --- a/xorg-server/xkeyboard-config/symbols/ctrl +++ b/xorg-server/xkeyboard-config/symbols/ctrl @@ -1,57 +1,57 @@ -// eliminate the caps lock key completely (replace with control) +// Eliminate CapsLock, making it another Ctrl. partial modifier_keys xkb_symbols "nocaps" { - replace key <CAPS> { [ Control_L, Control_L ] }; + replace key <CAPS> { [ Control_L, Control_L ] }; modifier_map Control { <CAPS>, <LCTL> }; }; -// replace left control with Meta +// Make the left Ctrl key a left Meta. xkb_symbols "lctrl_meta" { - replace key <LCTL> { [ Meta_L ] }; + replace key <LCTL> { [ Meta_L ] }; }; -// swap the caps lock key with the left control key +// Swap the functions of the CapsLock key and the left Ctrl key. partial modifier_keys xkb_symbols "swapcaps" { - replace key <CAPS> { [ Control_L ] }; - replace key <LCTL> { [ Caps_Lock ] }; + replace key <CAPS> { [ Control_L ] }; + replace key <LCTL> { [ Caps_Lock ] }; }; -// moves the control key to the middle row and the caps lock -// to the bottom row. Only works if the geometry or keycodes +// Move Ctrl to the leftmost key on the middle row and CapsLock to the +// leftmost key on the bottom row. Only works if the geometry or keycodes // file has defined appropriate aliases for the keys in question. partial modifier_keys xkb_symbols "ac_ctrl" { - replace key <AC00> { [ Control_L ] }; - replace key <AA00> { [ Caps_Lock ] }; + replace key <AC00> { [ Control_L ] }; + replace key <AA00> { [ Caps_Lock ] }; }; -// Moves the control key to the bottom row and the caps lock -// to the middle row. Only works if the geometry or keycodes +// Move Ctrl to the leftmost key on the bottom row and CapsLock to the +// leftmost key on the middle row. Only works if the geometry or keycodes // file has defined appropriate aliases for the keys in question. partial modifier_keys xkb_symbols "aa_ctrl" { - replace key <AA00> { [ Control_L ] }; - replace key <AC00> { [ Caps_Lock ] }; + replace key <AA00> { [ Control_L ] }; + replace key <AC00> { [ Caps_Lock ] }; }; -// Right Ctrl works as Right Alt +// Right Ctrl key functions as another right Alt. partial modifier_keys xkb_symbols "rctrl_ralt" { - key <RCTL> { symbols[Group1]= [ Alt_R ] }; + key <RCTL> { symbols[Group1]= [ Alt_R ] }; }; -// Menu works as Right Ctrl +// Menu key functions as another right Ctrl. partial modifier_keys xkb_symbols "menu_rctrl" { - replace key <MENU> { [ Control_R, Control_R ] }; - modifier_map Control { Control_L, <MENU> }; + replace key <MENU> { [ Control_R, Control_R ] }; + modifier_map Control { Control_L, <MENU> }; }; -// right alt functions as another ctrl key +// Right Alt key functions as another right Ctrl. partial modifier_keys xkb_symbols "ralt_rctrl" { - replace key <RALT> { type[Group1] = "TWO_LEVEL", + replace key <RALT> { type[Group1] = "TWO_LEVEL", symbols[Group1] = [ Control_R, Control_R ] }; modifier_map Control { <RALT> }; }; diff --git a/xorg-server/xkeyboard-config/symbols/level3 b/xorg-server/xkeyboard-config/symbols/level3 index 2f5575c62..8f3da0da8 100644 --- a/xorg-server/xkeyboard-config/symbols/level3 +++ b/xorg-server/xkeyboard-config/symbols/level3 @@ -1,20 +1,18 @@ -// these variants assign various XKB keycodes to ISO_Level3_Shift so that -// the third shift level can be reached -// +// These partial variants assign ISO_Level3_Shift to various XKB keycodes +// so that the third shift level can be reached. -// Ensure a mapping to a real modifier for LevelThree +// Ensure a mapping to a real modifier for LevelThree. partial modifier_keys xkb_symbols "modifier_mapping" { key.type[Group1] = "ONE_LEVEL"; - replace key <LVL3> { symbols[Group1] = [ ISO_Level3_Shift ] }; modifier_map Mod5 { <LVL3> }; }; -// the default behavior is for the right Alt key (AltGr) to generate the -// third engraved symbol +// The default behaviour: +// the right Alt key (AltGr) chooses the third symbol engraved on a key. default partial modifier_keys xkb_symbols "ralt_switch" { key <RALT> { @@ -24,10 +22,10 @@ xkb_symbols "ralt_switch" { include "level3(modifier_mapping)" }; -// Right Alt key never chooses 3rd level. -// This option attempts to undo the effect of a layout's -// including ralt_switch. You may also want to select another -// level3 option that maps the level3 shift to some other key. +// The right Alt key never chooses the third level. +// This option attempts to undo the effect of a layout's inclusion of +// 'ralt_switch'. You may want to also select another level3 option +// to map the level3 shift to some other key. partial modifier_keys xkb_symbols "ralt_alt" { key <RALT> { @@ -40,9 +38,11 @@ xkb_symbols "ralt_alt" { symbols[Group3] = [ Alt_R, Meta_R ], symbols[Group4] = [ Alt_R, Meta_R ] }; - modifier_map Mod1 { <RALT> }; + modifier_map Mod1 { <RALT> }; }; +// The right Alt key (while pressed) chooses the third shift level, +// and Compose is mapped to its second level. partial modifier_keys xkb_symbols "ralt_switch_multikey" { key <RALT> { @@ -52,14 +52,13 @@ xkb_symbols "ralt_switch_multikey" { include "level3(modifier_mapping)" }; -// special case or right Alt switch - for use with grp:alts_toggle -// +// A special case of the right-Alt switch -- for use with grp:alts_toggle. partial hidden modifier_keys xkb_symbols "ralt_switch_for_alts_toggle" { - virtual_modifiers LAlt, AlGr; + virtual_modifiers LAlt, AltGr; key <LALT> { type[Group1]="PC_RALT_LEVEL2", - symbols[Group1] = [ Alt_L, ISO_Prev_Group, ISO_Prev_Group ], + symbols[Group1] = [ Alt_L, ISO_Prev_Group, ISO_Prev_Group ], virtualMods= LAlt }; key <RALT> { @@ -70,14 +69,15 @@ xkb_symbols "ralt_switch_for_alts_toggle" { include "level3(modifier_mapping)" }; -// using the level(alt_switch) map, either Alt key temporarily chooses -// the third shift level. (Mostly be used to imitate Mac OS functionality.) +// Either Alt key (while pressed) chooses the third shift level. +// (To be used mostly to imitate Mac OS functionality.) partial modifier_keys xkb_symbols "alt_switch" { include "level3(lalt_switch)" include "level3(ralt_switch)" }; +// The left Alt key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "lalt_switch" { key <LALT> { @@ -87,8 +87,7 @@ xkb_symbols "lalt_switch" { include "level3(modifier_mapping)" }; -// using the level(switch) map, the right Control key temporarily -// chooses the third shift level (until it is released). +// The right Ctrl key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "switch" { key <RCTL> { @@ -98,8 +97,7 @@ xkb_symbols "switch" { include "level3(modifier_mapping)" }; -// using the level(menu_switch) map, the Menu key temporarily -// chooses the third shift level (until it is released). +// The Menu key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "menu_switch" { key <MENU> { @@ -109,16 +107,14 @@ xkb_symbols "menu_switch" { include "level3(modifier_mapping)" }; -// using the level3(win_switch) map, the either Windows' logo key -// temporarily chooses the third shift level. +// Either Win key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "win_switch" { include "level3(lwin_switch)" include "level3(rwin_switch)" }; -// using the level3(lwin_switch) map, the left Windows' logo key -// temporarily chooses the third shift level. +// The left Win key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "lwin_switch" { key <LWIN> { @@ -128,10 +124,9 @@ xkb_symbols "lwin_switch" { include "level3(modifier_mapping)" }; -// using the level(rwin_switch) map, the right Windows' logo key -// temporarily chooses the third shift level. If you use this map, -// you should define your keyboard as pc101 or pc102 instead of pc104 -// or pc105. +// The right Win key (while pressed) chooses the third shift level. +// (When using this map, you should set your keyboard as pc101 or pc102 +// instead of pc104 or pc105.) partial modifier_keys xkb_symbols "rwin_switch" { key <RWIN> { @@ -141,9 +136,8 @@ xkb_symbols "rwin_switch" { include "level3(modifier_mapping)" }; -// using the level3(enter_switch) map, the Enter key on the keypad -// temporarily chooses the third shift level. This is especially -// useful for Mac laptops which miss the right Alt key. +// The Enter key on the kepypad (while pressed) chooses the third shift level. +// (This is especially useful for Mac laptops which miss the right Alt key.) partial modifier_keys xkb_symbols "enter_switch" { key <KPEN> { @@ -153,6 +147,7 @@ xkb_symbols "enter_switch" { include "level3(modifier_mapping)" }; +// The CapsLock key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "caps_switch" { key <CAPS> { @@ -162,6 +157,7 @@ xkb_symbols "caps_switch" { include "level3(modifier_mapping)" }; +// The Backslash key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "bksl_switch" { key <BKSL> { @@ -171,6 +167,7 @@ xkb_symbols "bksl_switch" { include "level3(modifier_mapping)" }; +// The Less/Greater key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "lsgt_switch" { key <LSGT> { @@ -180,6 +177,8 @@ xkb_symbols "lsgt_switch" { include "level3(modifier_mapping)" }; +// The CapsLock key (while pressed) chooses the third shift level, +// and latches when pressed together with another third-level chooser. partial modifier_keys xkb_symbols "caps_switch_latch" { key <CAPS> { @@ -189,6 +188,8 @@ xkb_symbols "caps_switch_latch" { include "level3(modifier_mapping)" }; +// The Backslash key (while pressed) chooses the third shift level, +// and latches when pressed together with another third-level chooser. partial modifier_keys xkb_symbols "bksl_switch_latch" { key <BKSL> { @@ -198,6 +199,8 @@ xkb_symbols "bksl_switch_latch" { include "level3(modifier_mapping)" }; +// The Less/Greater key (while pressed) chooses the third shift level, +// and latches when pressed together with another third-level chooser. partial modifier_keys xkb_symbols "lsgt_switch_latch" { key <LSGT> { diff --git a/xorg-server/xkeyboard-config/symbols/level5 b/xorg-server/xkeyboard-config/symbols/level5 index 09d71cddf..84507e5b3 100644 --- a/xorg-server/xkeyboard-config/symbols/level5 +++ b/xorg-server/xkeyboard-config/symbols/level5 @@ -1,20 +1,17 @@ -// these variants assign various XKB keycodes to ISO_Level5_Shift so that -// the third shift level can be reached -// +// These partial variants assign ISO_Level5_Shift to various XKB keycodes +// so that the fifth shift level can be reached. -// Ensure a mapping to a real modifier for LevelFive +// Ensure a mapping to a real modifier for LevelFive. partial modifier_keys xkb_symbols "modifier_mapping" { key.type[Group1] = "ONE_LEVEL"; - replace key <MDSW> { symbols[Group1] = [ ISO_Level5_Shift ] }; modifier_map Mod3 { <MDSW> }; }; -// using the level(switch) map, the right Control key temporarily -// chooses the fifth shift level (until it is released). +// The right Ctrl key (while pressed) chooses the fifth shift level. partial modifier_keys xkb_symbols "rctrl_switch" { key <RCTL> { @@ -24,6 +21,7 @@ xkb_symbols "rctrl_switch" { include "level5(modifier_mapping)" }; +// The Less/Greater key (while pressed) chooses the fifth shift level. partial modifier_keys xkb_symbols "lsgt_switch" { key <LSGT> { @@ -33,6 +31,7 @@ xkb_symbols "lsgt_switch" { include "level5(modifier_mapping)" }; +// The right Alt key (while pressed) chooses the fifth shift level. partial modifier_keys xkb_symbols "ralt_switch" { key <RALT> { @@ -43,19 +42,14 @@ xkb_symbols "ralt_switch" { }; -// The following modifier keys are used to switch to the third shift and to set a -// corresponding lock, implemented as NumLock. - +// This adds the definitions needed to create a level5-lock behaviour, using +// the real modifier NumLock as a lock indicator. +// See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK +// See also: compat/level5(level5_lock) partial modifier_keys xkb_symbols "lock" { - // This adds the definitions needed to create a level5-lock behaviour, using - // the real modifier NumLock as a lock indicator. - // See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK - // See also: compat/level5(level5_lock) key.type[Group1] = "ONE_LEVEL"; - include "level5(modifier_mapping)" - replace key <HYPR> { vmods = NumLock, symbols[Group1] = [ NoSymbol ], @@ -64,90 +58,85 @@ xkb_symbols "lock" { modifier_map Mod2 { <HYPR> }; }; +// The following modifier keys are used to switch to the third shift level +// and to set a corresponding lock, implemented as NumLock. + partial modifier_keys xkb_symbols "lsgt_switch_lock" { - include "level5(lock)" - key <LSGT> { type[Group1] = "EIGHT_LEVEL", - symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] + symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, + ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] }; }; partial modifier_keys xkb_symbols "lwin_switch_lock" { - include "level5(lock)" - key <LWIN> { type[Group1] = "EIGHT_LEVEL", - symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] + symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, + ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] }; }; partial modifier_keys xkb_symbols "ralt_switch_lock" { - include "level5(lock)" - key <RALT> { type[Group1] = "EIGHT_LEVEL", - symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] + symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, + ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] }; }; partial modifier_keys xkb_symbols "rwin_switch_lock" { - include "level5(lock)" - key <RWIN> { type[Group1] = "EIGHT_LEVEL", - symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] + symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, + ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] }; }; partial modifier_keys xkb_symbols "lsgt_switch_lock_cancel" { - include "level5(lock)" - key <LSGT> { type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", - symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] + symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, + ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] }; }; partial modifier_keys xkb_symbols "lwin_switch_lock_cancel" { - include "level5(lock)" - key <LWIN> { type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", - symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] + symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, + ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] }; }; partial modifier_keys xkb_symbols "ralt_switch_lock_cancel" { - include "level5(lock)" - key <RALT> { type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", - symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] + symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, + ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] }; }; partial modifier_keys xkb_symbols "rwin_switch_lock_cancel" { - include "level5(lock)" - key <RWIN> { type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", - symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] + symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, + ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] }; }; diff --git a/xorg-server/xkeyboard-config/symbols/rs b/xorg-server/xkeyboard-config/symbols/rs index 1b88d0131..baa7a345a 100644 --- a/xorg-server/xkeyboard-config/symbols/rs +++ b/xorg-server/xkeyboard-config/symbols/rs @@ -108,7 +108,7 @@ xkb_symbols "cyralpha" { key <AC11> { [ Serbian_tshe, Serbian_TSHE, any,any ] }; // ' " key <BKSL> { [ Cyrillic_zhe, Cyrillic_ZHE, any,any ] }; // \ | - key <AB01> { [ Cyrillic_zhe, Cyrillic_ZHE, any,any ] }; // z + key <AB01> { [ U0455, U0405, any,any ] }; // z key <AB02> { [ Cyrillic_dzhe, Cyrillic_DZHE, any,any ] }; // x key <AB03> { [ Cyrillic_tse, Cyrillic_TSE, any,any ] }; // c key <AB04> { [ Cyrillic_ve, Cyrillic_VE, any,any ] }; // v diff --git a/xorg-server/xkeyboard-config/symbols/shift b/xorg-server/xkeyboard-config/symbols/shift index 6fbec5b2a..8f9022349 100644 --- a/xorg-server/xkeyboard-config/symbols/shift +++ b/xorg-server/xkeyboard-config/symbols/shift @@ -1,4 +1,5 @@ -partial modifier_keys +// Cancel CapsLock when a Shift key is pressed. +partial modifier_keys xkb_symbols "breaks_caps" { key <LFSH> { type = "ALPHABETIC", @@ -16,20 +17,21 @@ xkb_symbols "breaks_caps" { }; }; -// When pressed together with another Shift key, set/release Lock. + +// Toggle CapsLock when pressed together with the other Shift key. partial modifier_keys xkb_symbols "lshift_both_capslock" { key <LFSH> { type[Group1]="TWO_LEVEL", - symbols[Group1] = [ Shift_L, Caps_Lock ] + symbols[Group1] = [ Shift_L, Caps_Lock ] }; }; -// When pressed together with another Shift key, set or unset Lock. +// Toggle CapsLock when pressed together with the other Shift key. partial modifier_keys xkb_symbols "rshift_both_capslock" { key <RTSH> { type[Group1]="TWO_LEVEL", - symbols[Group1] = [ Shift_R, Caps_Lock ] + symbols[Group1] = [ Shift_R, Caps_Lock ] }; }; partial modifier_keys @@ -38,20 +40,21 @@ xkb_symbols "both_capslock" { include "shift(rshift_both_capslock)" }; -// Release Lock when pressed alone and set Lock when pressed with another Shift key. + +// Set CapsLock when pressed with the other Shift key, release it when pressed alone. partial modifier_keys xkb_symbols "lshift_both_capslock_cancel" { key <LFSH> { type[Group1]="ALPHABETIC", - symbols[Group1] = [ Shift_L, Caps_Lock ] + symbols[Group1] = [ Shift_L, Caps_Lock ] }; }; -// Release Lock when pressed alone and set Lock when pressed with another Shift key. +// Set CapsLock when pressed with the other Shift key, release it when pressed alone. partial modifier_keys xkb_symbols "rshift_both_capslock_cancel" { key <RTSH> { type[Group1]="ALPHABETIC", - symbols[Group1] = [ Shift_R, Caps_Lock ] + symbols[Group1] = [ Shift_R, Caps_Lock ] }; }; partial modifier_keys @@ -61,20 +64,20 @@ xkb_symbols "both_capslock_cancel" { }; -// When pressed together with another Shift key, lock/unlock Shift. +// Toggle ShiftLock when pressed together with the other Shift key. partial modifier_keys xkb_symbols "lshift_both_shiftlock" { key <LFSH> { type[Group1]="TWO_LEVEL", - symbols[Group1] = [ Shift_L, Shift_Lock ] + symbols[Group1] = [ Shift_L, Shift_Lock ] }; }; -// When pressed together with another Shift key, lock/unlock Shift. +// Toggle ShiftLock when pressed together with the other Shift key. partial modifier_keys xkb_symbols "rshift_both_shiftlock" { key <RTSH> { type[Group1]="TWO_LEVEL", - symbols[Group1] = [ Shift_R, Shift_Lock ] + symbols[Group1] = [ Shift_R, Shift_Lock ] }; }; partial modifier_keys |