andischerer/atom-keyboard-localization

Major changes to Atom keystroke resolution are coming in 1.12.x

Closed this issue · 15 comments

First of all thank you so much for authoring this package and making it possible for so many people to use Atom despite our longstanding shortcomings with international layouts.

In the last couple of weeks, we've finally taken steps to improve those issues in core via multiple PRs to atom-keymap:

We're a bit worried that the changes we made may cause issues with this package, and we're also somewhat unclear on what functionality this package might still offer in addition to what is present in core. So we thought we should give you a heads up so you can test things out when atom/atom#12697 lands.

You can also link to binaries for various platforms at the bottom of atom/atom#12697 if you'd like to test things out before this code makes its way to beta.

Let me or @maxbrunsfeld know if you have any questions.

Thanks again.

Yeah 💃
Good to see things moving.

The core of this package consists of a keycode translator for various Keyboard layouts(KeyboardEvent.keyIdentifier + KeyboardEvent.keyCode) and a customized ModifierHandler for AltGraph detection. So no further functionality inside.
After a brief glance, all functionallity should be covered by the prs you've mentionted.

My suggestion, i'll create a new deprecation package release with package.json:

"engines": {
    "atom": ">=1.12.0 || >=1.12.0-beta1"
}

with hints about your work and deactivated functionallity.

Thanks for your work on atom 💪

Heads up, we start numbering betas at 0... >=1.12.0-beta0

styx commented

Should something be done in configs to turn on this feature in Atom beta?
I removed package and vim-mode stopped working with russian layout.

And after installing package back it still doesn't work.

@styx can you get into some details about how it isn't working so I can investigate?

styx commented

@nathansobo
I'm on Atom-beta 12. And vim-mode-plus installed. By default i enters insert mode. So when I'm on English kbd layout it works and on Russian one it doesn't. I press the same button but it will print ш. Expected behavior to is that a scancode of pressed button is used instead of it's char.

I mean if I press button and it is mapped to action (not a symbol i or ш - it's same button on keyboard) layout should be ignored. It worked previously in this way. In vim earlier I also used remapping.

@styx Ahhhh, I see. Thanks. Can you confirm whether pressing the key in combination with modifiers like ctrl-i resolves to ctrl-i rather than ctrl-ш? If so I think the fix should be simple.

styx commented

@nathansobo Yep, with a modifier key it resolves well.

@styx Should be fixed on Beta later today via atom/atom-keymap#151

I just published 1.12.0-beta1. I'd appreciate it if people could give it a try. We're still facing issues on some layouts Linux due to unforeseen bugs in Chrome which will be addressed in a subsequent patch release.

styx commented

Works for me. Thnx.

jizi commented

Hi,
after upgrade to Atom 1.12.0 and keyboard-localization 1.5.0 on Windows most of the Alt+something combinations work but I am struggling with '[', ']', '{' and '}'.
I use 'cs_CZ-qwerty' keyboard layout (https://www.terena.org/activities/multiling/ml-mua/test/img/kbd_czech.gif) and in other editors Alt+ú, Alt+), Alt+Shift+/ and Alt+Shift+( works as above mentioned characters.
In previous versions it worked also in Atom.

Could you please check this? Thanks in advance.

Now that International Keyboard Support is baked into atom v1.12.0 you could safely uninstall the keyboard-localization package. If you still experience wrong keyboard behaviors you could create an issue here: @atom/atom-keymap

jizi commented

Thanks, I did -- atom/atom-keymap#173

@andischerer thanks for having providing this package so far, it was very useful 👍

Hi @maxbrunsfeld,

I saw on @nathansobo's post from issue #146 on Sep 19, 2016, to contact you with any questions about keyboards not working.

I’m using a Redragon Harpe K503 RGB Gaming USB Keyboard on my MacBook Pro with OS 10.10.5 (Yosemite). It has 112 keys. The keys on my laptop stopped working after some was spilled on it. I use an external keyboard. It works fine with all the other programs on my Mac. With Atom it does some weird things, primarily I can’t type in the editor. I can highlight folders and files on the tree view. But anytime I try to edit my code nothing happens. The only key that gets a response is "a". When I press a the "Enter the path for the new file" dialogue box pops up. So I'm guessing keystroke a causes Atom to think I'm trying to create a new file. I'm currently using Sublime to code but I prefer Atom.

I read your blog post “The Wonderful World of Keyboards”. It didn’t help. Can you help me? How can I fix this?

I noticed it with Atom 1.25. I updated to Atom 1.29 and my keyboard still doesn’t work.

I also created an issue #148, as you can see above. I really want to resolve this issue. I am looking for all the help I can get. Thanks!