Keyboard localization package for non US-Keyboard Layouts
This is a compatibility package for atom text editor which tries to remap keycodes for your given keyboard layout.
Installation
Go in Atom's Settings page, through packages section. Under Community Packages search for "keyboard-localization" and Install it.
Usage
Inside Atom's packages management, click Settings, and in the freshly opened panel, either choose an existing Keyboard Layout from the list, or pick a keymap file from the filepicker.
Whats working
- Prevent default keybindings from being fired
- Keybindings in your foreign keyboard layout
- AltGr-Key
- vim-mode keybindings
- tested on Windows and Linux
- Multi-combo bindings (AltGr+Shift)
Supported Keyboard Layouts atm
- German 105-key "QWERTZ" (
de_DE
) - German Neo-Layout (
de_DE-neo
) - Spanish (
es_ES
) - Spanish Latin (
es_LA
) - French (
fr_FR
) - Belgian French (
fr_BE
) - Canadian French (
fr_CA
) - Polish Programmer (
pl_PL
) - Danish (
da_DK
) - untested - Norwegian (
nb_NO
) - untested - Swedish (
sv_SE
) - untested - Hungarian (
hu_HU
) - untested - Romanian (
ro_RO
) - untested - Slovenian (
sl_SL
) - untested - Italian (
it_IT
) - Portuguese (
pt_PT
) - untested - Latvian (
lv_LV
) - Portuguese Brazilian (ABNT2) (
pt_BR
)
Generate your own keymap
You can generate your own localized key-translation-table for your keyboard layout.
The generator is available in from the command palette(Keyboard Localization: Keymap Generator
)
Generate your mapping by tapping every key in combination with modifiers from your keyboard who differ from the US-Layout.
Copy the generated JSON-keybindings and create a Json-File.
Then set the package setting UseKeyboardLayoutFromPath
to your given filename(absolute path).
Feel free to send me Issues/PRs so i can add more keymaps.
Todo
- add more foreign Keyboard-Layouts
- write tests
add custom path for keymap file
This package tries to fill the gap till the following issues are fixed
- Chromium Issue 263724: KeyboardEvent does not match the latest specification
- Chromium Issue 300475: Issues with non US keyboard layout keyboard events or editing
- Chromium Issue 168971: Implement 'locale' attribute in KeyboardEvent
- Atom Issue 35: Right ALT not supported (bad for International Keyboards)
- Atom Issue 37: Foreign keyboard layouts not working
Credits
All thanks go to original author -> DavidBadura