diff --git a/Keyboard-mappings.md b/Keyboard-mappings.md index ab7e062..0e14060 100644 --- a/Keyboard-mappings.md +++ b/Keyboard-mappings.md @@ -3,33 +3,6 @@ * [Syntax documentation](#syntax-documentation) * [How to create a mapping](#how-to-create-a-mapping) * [The virtual_keycode is None](#the-virtual_keycode-is-none) - * [General Quality of Life Improvements](#general-quality-of-life-improvements) - * [MacOS](#macos) - * [Italian](#italian) - * [Mac OS](#mac-os) - * [Spanish](#spanish) - * [Mac OS](#mac-os-1) - * [macOS Spanish (Spain)](#macos-spanish-spain) - * [Swiss German](#swiss-german) - * [Mac OS](#mac-os-2) - * [Portuguese (pt_PT)](#portuguese-pt_pt) - * [Mac OS](#mac-os-3) - * [German (de_DE)](#german-de_de) - * [Mac OS](#mac-os-4) - * [Windows](#windows) - * [Swedish (sv_SE)](#swedish-sv_se) - * [Mac OS](#mac-os-5) - * [Windows](#windows-1) - * [Danish (da_DK)](#danish-da_dk) - * [Mac OS](#mac-os-6) - * [French (fr_FR)](#french-fr_fr) - * [Mac OS](#mac-os-7) - * [Canadian French (fr_CA)](#french-fr_ca) - * [Mac OS](#mac-os-8) - * [Belgian](#belgian) - * [Mac OS](#mac-os-9) - * [Turkish](#turkish) - * [Mac OS](#mac-os-10) ## Syntax documentation @@ -71,285 +44,4 @@ The scancode is also printed in the output of `--print-events` and can be used d ```yml - { key: 33, mods: Alt, chars: "[" } -``` - -## General Quality of Life Improvements -### MacOS -```yml - - { key: N, mods: Command, action: SpawnNewInstance } - - { key: Space, mods: Alt, chars: " " } - - { key: Back, mods: Super, chars: "\x15" } # delete word/line - - { key: Left, mods: Alt, chars: "\x1bb" } # one word left - - { key: Right, mods: Alt, chars: "\x1bf" } # one word right - - { key: Left, mods: Command, chars: "\x1bOH", mode: AppCursor } # Home - - { key: Right, mods: Command, chars: "\x1bOF", mode: AppCursor } # End -``` - -## Italian -### Mac OS -```yml - - { key: LBracket, mods: Alt|Shift, chars: "\x7B" } - - { key: RBracket, mods: Alt|Shift, chars: "\x7D" } - - { key: LBracket, mods: Alt, chars: "\x5B" } - - { key: RBracket, mods: Alt, chars: "\x5D" } - - { key: Semicolon, mods: Alt, chars: "\x40" } - - { key: Apostrophe, mods: Alt, chars: "\x23" } - - { key: Caret, mods: Alt, chars: "\x60" } - - { key: Key5, mods: Alt, chars: "\x7E" } -``` - -## Spanish -### Mac OS -```yml - - { key: Caret, mods: Alt, chars: "\x5C" } - - { key: Key1, mods: Alt, chars: "|" } - - { key: Key2, mods: Alt, chars: "@" } - - { key: Key3, mods: Alt, chars: "#" } - - { key: Key6, mods: Alt, chars: "¬" } - - { key: LBracket, mods: Alt, chars: "\x5B" } - - { key: RBracket, mods: Alt, chars: "\x5D" } - - { key: Apostrophe, mods: Alt, chars: "\x7B" } - - { key: Backslash, mods: Alt, chars: "\x7D" } -``` - -### macOS Spanish (Spain) - -Setup for macOS Spanish-Spain keyboard with ISO layout (not ANSI); big *Enter* key. - -```yml - # Ajustes para teclado macOS español/Spanish de España con layout ISO (no ANSI); tecla Intro grande. - - { key: 10, mods: Alt, chars: "\\" } # barra invertida `\` - - { key: 18, mods: Alt, chars: "|" } # barra vertical `|` - - { key: Key2, mods: Alt, chars: "@" } # arroba `@` - - { key: Key3, mods: Alt, chars: "#" } # almohadilla/cardinalidad `#` - - { key: Key6, mods: Alt, chars: "¬" } # negación en lógica `¬` - - { key: 39, mods: Alt, chars: "{" } # abre llaves `{` - - { key: 42, mods: Alt, chars: "}" } # cierra llaves `}` - - { key: 33, mods: Alt, chars: "[" } # abre corchetes `[` - - { key: 30, mods: Alt, chars: "]" } # cierra corchetes `]` -``` - -## Swiss German -### Mac OS -```yml - - { key: Key3, mods: Alt, chars: "\x23" } - - { key: Key5, mods: Alt, chars: "\x5b" } - - { key: Key6, mods: Alt, chars: "\x5d" } - - { key: Key7, mods: Alt, chars: "\x7c" } - - { key: Key7, mods: Shift|Alt, chars: "\x5c" } - - { key: Key8, mods: Alt, chars: "\x7b" } - - { key: Key9, mods: Alt, chars: "\x7d" } - - { key: Equals, chars: "\xb4" } - - { key: Equals, mods: Shift, chars: "\x60" } - - { key: N, mods: Alt, chars: "\u007E" } - - { key: G, mods: Alt, chars: "\x40" } -``` - -## Portuguese (pt_PT) -### Mac OS -```yml - - { key: Key8, mods: Alt|Shift, chars: "\x7B" } - - { key: Key9, mods: Alt|Shift, chars: "\x7D" } - - { key: Key8, mods: Alt, chars: "\x5B" } - - { key: Key9, mods: Alt, chars: "\x5D" } - - { key: Key2, mods: Alt, chars: "\x40" } -``` - -## German (de_DE) -### Mac OS -```yml - - { key: Key5, mods: Alt, chars: "\x5b" } - - { key: Key6, mods: Alt, chars: "\x5d" } - - { key: Key7, mods: Alt|Shift, chars: "\x5c" } - - { key: Key7, mods: Alt, chars: "\x7c" } - - { key: Key8, mods: Alt, chars: "\x7b" } - - { key: Key9, mods: Alt, chars: "\x7d" } - - { key: L, mods: Alt, chars: "\x40" } -``` - -When using an german `MacBookPro (15", 2019) with Touchbar`, these might fail, but here's a working solution: - -``` - - { key: 28, mods: Alt, chars: "{" } - - { key: 25, mods: Alt, chars: "}" } - - { key: 37, mods: Alt, chars: "@" } - - { key: 26, mods: Alt|Shift, chars: "\\" } - - { key: 26, mods: Alt, chars: "|" } - - { key: 45, mods: Alt, chars: "~" } - - { key: 23, mods: Alt, chars: "[" } - - { key: 22, mods: Alt, chars: "]" } - - { key: 19, mods: Shift, chars: "§"} -``` - -For those, coming from iTerm, here's `Command + Enter` to ToggleFullscreen -``` - - { key: 36, mods: Command, action: ToggleFullscreen } -``` - - -### Windows -```yml - - { key: OEM102, mods: Control|Alt, chars: "|" } - - { key: Q, mods: Control|Alt, chars: "@" } - - { key: Key7, mods: Control|Alt, chars: "{" } - - { key: Key8, mods: Control|Alt, chars: "[" } - - { key: Key9, mods: Control|Alt, chars: "]" } - - { key: Key0, mods: Control|Alt, chars: "}" } - - { key: Key0, mods: Control|Alt, chars: "}" } - - { key: 12, mods: Control|Alt, chars: '\' } - - { key: Equals, mods: Control|Alt, chars: '~' } -``` - -## Swedish (sv_SE) -### Mac OS -```yml - - { key: Key1, mods: Alt, chars: "\xA9" } - - { key: Key2, mods: Alt, chars: "\x40" } - - { key: Key3, mods: Alt, chars: "\xA3" } - - { key: Key4, mods: Alt, chars: "\x24" } - - { key: Key5, mods: Alt, chars: "∞" } - - { key: Key6, mods: Alt, chars: "\xA7" } - - { key: Key7, mods: Alt, chars: "\x7C" } - - { key: Key8, mods: Alt, chars: "\x5B" } - - { key: Key9, mods: Alt, chars: "\x5D" } - - { key: Key0, mods: Alt, chars: "≈" } - - { key: Minus, mods: Alt, chars: "\xB1" } - -## sv_SE PC Layout ('{', '}', '\' and '|' characters): -# - { key: Key7, mods: Alt, chars: "\x7B" } -# - { key: Key0, mods: Alt, chars: "\x7D" } -# - { key: Minus, mods: Alt, chars: "\x5C" } -# - { key: Grave, mods: Alt, chars: "\x7C" } - - - { key: Key1, mods: Alt|Shift, chars: "\xA1" } - - { key: Key2, mods: Alt|Shift, chars: "”" } - - { key: Key3, mods: Alt|Shift, chars: "\xA5" } - - { key: Key4, mods: Alt|Shift, chars: "\x24" } - - { key: Key5, mods: Alt|Shift, chars: "‰" } - - { key: Key6, mods: Alt|Shift, chars: "\xB6" } - - { key: Key7, mods: Alt|Shift, chars: "\x5C" } - - { key: Key8, mods: Alt|Shift, chars: "\x7B" } - - { key: Key9, mods: Alt|Shift, chars: "\x7D" } - - { key: Key0, mods: Alt|Shift, chars: "≠" } - - { key: Minus, mods: Alt|Shift, chars: "\xBF" } - -# Replace the default bindings for these as the VirtualKeycodes don't match reality - - { key: Slash, mods: Command, action: DecreaseFontSize } - - { key: Minus, mods: Command, action: IncreaseFontSize } -``` - -### Windows -```yml - - { key: Key2, mods: Control|Alt, chars: "\x40" } - - { key: Key3, mods: Control|Alt, chars: "\xA3" } - - { key: Key4, mods: Control|Alt, chars: "\x24" } - - { key: Key5, mods: Control|Alt, chars: "€" } - - { key: Key7, mods: Control|Alt, chars: "\x7B" } - - { key: Key8, mods: Control|Alt, chars: "\x5B" } - - { key: Key9, mods: Control|Alt, chars: "\x5D" } - - { key: Key0, mods: Control|Alt, chars: "\x7D" } - - { key: Equals, mods: Control|Alt, chars: "\x5C" } -``` - -## Danish (da_DK) -### Mac OS -```yml - - { key: 10, mods: Alt, chars: "" } # alt+dollar - - { key: 18, mods: Alt, chars: "\xA1" } # alt+1 - - { key: 19, mods: Alt, chars: "“" } # alt+2 - - { key: 20, mods: Alt, chars: "\xA7" } # alt+3 - - { key: 21, mods: Alt, chars: "\xA3" } # alt+4 - - { key: 23, mods: Alt, chars: "∞" } # alt+5 - - { key: 22, mods: Alt, chars: "™" } # alt+6 - - { key: 26, mods: Alt, chars: "\xB6" } # alt+7 - - { key: 28, mods: Alt, chars: "\x5B" } # alt+8 - - { key: 25, mods: Alt, chars: "\x5D" } # alt+9 - - { key: 24, mods: Alt, chars: "\x27" } # alt+´ - - { key: 42, mods: Alt, chars: "\x40" } # alt+' (gives @) - - { key: 34, mods: Alt, chars: "\x7C" } # alt+i - - - { key: 10, mods: Alt|Shift, chars: "\x27" } # alt+shift+dollar - - { key: 18, mods: Alt|Shift, chars: "\xAF" } # alt+shift+1 - - { key: 19, mods: Alt|Shift, chars: "”" } # alt+shift+2 - - { key: 20, mods: Alt|Shift, chars: "\x24" } # alt+shift+3 - - { key: 21, mods: Alt|Shift, chars: "\xA2" } # alt+shift+4 - - { key: 23, mods: Alt|Shift, chars: "‰" } # alt+shift+5 - - { key: 22, mods: Alt|Shift, chars: "\x98" } # alt+shift+6 - - { key: 26, mods: Alt|Shift, chars: "\x5C" } # alt+shift+7 - - { key: 28, mods: Alt|Shift, chars: "\x7B" } # alt+shift+8 - - { key: 25, mods: Alt|Shift, chars: "\x7D" } # alt+shift+9 - - { key: 30, mods: Alt|Shift, chars: "\x5E" } # alt+shift+^ - - { key: 49, mods: Alt|Shift, chars: "\xBA" } # alt+shift+' -``` - -## French (fr_FR) -### Mac OS -```yml - - { key: 37, mods: Alt|Shift, chars: "|" } - - { key: 23, mods: Alt, chars: "{" } - - { key: 23, mods: Alt|Shift, chars: "[" } - - { key: 27, mods: Alt, chars: "}" } - - { key: 27, mods: Alt|Shift, chars: "]" } - - { key: N, mods: Alt, chars: "~" } - - { key: 47, mods: Alt|Shift, chars: "\\" } -``` -### Mac OS / French - PC -```yml - - { key: 19, mods: Alt, chars: "~" } - - { key: 21, mods: Alt, chars: "{" } - - { key: 22, mods: Alt, chars: "|" } - - { key: 23, mods: Alt, chars: "[" } - - { key: 24, mods: Alt, chars: "}" } - - { key: 25, mods: Alt, chars: "^" } - - { key: 26, mods: Alt, chars: "`" } - - { key: 27, mods: Alt, chars: "]" } - - { key: 28, mods: Alt, chars: "\\" } - - { key: 29, mods: Alt, chars: "@" } -``` - -## French (fr_CA) - -### Mac OS -```yml - - { key: 10, mods: Alt, chars: "|" } - - { key: 19, mods: Alt, chars: "~" } - - { key: 24, mods: Alt, chars: "¬" } - - { key: 25, mods: Alt, chars: "[" } - - { key: 26, mods: Alt, chars: "{" } - - { key: 28, mods: Alt, chars: "}" } - - { key: 29, mods: Alt, chars: "]" } - - { key: 30, mods: Alt, chars: "~" } - - { key: 33, mods: Alt, chars: "`" } - - { key: 41, mods: Alt, chars: "°" } - - { key: 43, mods: Alt, chars: "<" } - - { key: 47, mods: Alt, chars: ">" } -``` - -## Belgian - -### Mac OS -```yml - - { key: LBracket, mods: Alt, chars: "{" } - - { key: RBracket, mods: Alt, chars: "}" } - - { key: LBracket, mods: Alt|Shift, chars: "[" } - - { key: RBracket, mods: Alt|Shift, chars: "]" } - - { key: 37, mods: Alt|Shift, chars: "|" } - - { key: 47, mods: Alt|Shift, chars: "\\" } -``` - -## Turkish - -### Mac OS -```yml - - { key: 12, mods: Alt, chars: "@" } - - { key: 20, mods: Alt, chars: "#" } - - { key: 21, mods: Alt, chars: "$" } - - { key: 24, mods: Alt, chars: "|" } - - { key: 25, mods: Alt, chars: "]" } - - { key: 26, mods: Alt, chars: "{" } - - { key: 27, mods: Alt, chars: "\\" } - - { key: 28, mods: Alt, chars: "[" } - - { key: 29, mods: Alt, chars: "}" } - - { key: 30, mods: Alt, chars: "~" } - - { key: 50, mods: Alt, chars: "|" } ``` \ No newline at end of file