philc / vimium

The hacker's browser.
https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb
MIT License
23.1k stars 2.48k forks source link

Ignore keyboard layout option doesn't work with ru_RU layout #3451

Open Yorween opened 4 years ago

Yorween commented 4 years ago

**Bug description*** Ignore keyboard layout option doesn't work in Firefox (Xorg 1.20.4 session, DWM 6.2 window manager standalone). When system layout is en_US vimium keybindings works, if layout is ru_RU bindings don't work at all. All bindings are default.

Steps to reproduce the behavior:

  1. Enable en_US and ru_RU layouts with setxkbmap setxkbmap -layout us,ru -option grp:caps_toggle
  2. Enable option "Ignore keyboard layout" in vimium settings.
  3. Go to any url (e. g. github.com) and try to use keybindings with ru_RU layout turned on.

Browser and Vimium version Mozilla Firefox 68.3.0esr Debian Buster 10.2 Vimium 1.64.6

gdh1995 commented 4 years ago

Um, more tests are needed, so could you disable Vimium and then test on https://gdh1995.github.io/vimium-c/keyboard-test.html ?

It will record your keyboard messages, so when you press a Russian letter corresponding to F, it should report keydown KeyF ф, and so will other letters.

Then, a screen snapshot of the message records would help a lot.

Added: during my test on Ubuntu 18.04 (x86-64) desktop + Firefox 68 + Russian layout, Vimium (master) worked well when I had enabled "Ignore keyboard layout" and then clicked "save options".

Yorween commented 4 years ago

Screenshot_2019-12-26 Keyboard Events(2)

Actually with vimium turned on i've got the same results.

gdh1995 commented 4 years ago

Do the lines with key = f or w mean you were using en_US keyboard layout?

Then this issue is because Firefox doesn't get correct "code" info from your window manager, which will mean Vimium can do nothing to work it around.

Added: You may try Chromium under the same window manager software, and if Vimium works well on it, then this is a bug of Firefox - Firefox does have lots of compatibility issues on various versions of Linux.

Yorween commented 4 years ago

Do the lines with key = f or w mean you were using en_US keyboard layout?

Correct.

Here's a screenshot from chromium 78.0.3904.108 2019-12-26-225340_1366x768_scrot Seems like it works without a problem with both layouts in chromium.

v1a0 commented 2 years ago

Vimium doesn't work at all with ru_RU keyboard layout in Firefox.

изображение

Browser, OS and Vimium version: Mozilla Firefox 96.0.1 Windows 10 Vimium 1.67.1

gdh1995 commented 2 years ago

@v1a0 You may enable the advanced option named Ignore keyboard layout on Vimium Options page, and then Vimium will recognize keys as if you're in an English layout. You may need to click Show Advanced Options firstly to make those advanced options show.

v1a0 commented 2 years ago

@v1a0 You may enable the advanced option named Ignore keyboard layout on Vimium Options page, and then Vimium will recognize keys as if you're in an English layout. You may need to click Show Advanced Options firstly to make those advanced options show.

Thanks!!!