philc / vimium

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

"Ignore Keyboard Layout" ignores keyboard layout for link-hint filtering #2964

Open NickTheTurtle opened 6 years ago

NickTheTurtle commented 6 years ago

I use the Dvorak keyboard layout, and I really like Vimium's Ignore Keyboard Layout feature. However, for link-hint filtering, it ignores my Dvorak keyboard layout and uses Qwerty instead. I'm not sure if this is the intended behavior, but it's kind of hard for me to search links with Qwerty when I'm more comfortable with Dvorak.

smblott-github commented 6 years ago

If I understand correctly, you have ignoreKeyboardLayout selected, but want to not ignore the keyboard layout for filtering in link hints (in filtered mode, I guess).

We can leave this issue here to see what others think, but the clearest meaning for the ignoreKeyboardLayout flag is probably that Vimium always ignores the keyboard layout. Anything else requires explanation.

NickTheTurtle commented 6 years ago

Well, withignoreKeyboardLayout selected, in find mode, typing is still in Dvorak for me, so I would expect link-hint filtering to be in Dvorak too, since both are essentially finding texts on the webpage.

lydell commented 6 years ago

@NickTheTurtle Hi! I'm the developer of VimFx. When that extension was discontinued and I started recommending VimFx users to switch to Vimium, people were missing the "Ignore keyboard layout" option from VimFx in Vimium. So I helped push for adding that feature in Vimium, and reviewed the PR for it: #2626

The primary use case for the option is for people who use more than one keyboard layout, usually one for their native language and one for English (en-US QWERTY), but want to be able to use Vimium the same way regardless of which layout the happen to have enabled. In that case it makes a lot of sense to ignore keyboard layout in Hints mode. Here's a recent example: https://github.com/philc/vimium/issues/953#issuecomment-368312043

Personally, I use only one keyboard layout, and it is a non-QWERTY one, just like yours. But I don't have the "Ignore keyboard layout" option enabled. For shortcuts I don't use very often, I prefer having keys based on mnemonics so that I can remember them, but for frequently used shortcuts I like keys in great positions on the keyboard better. So I've remapped a couple of shortcuts so that they end up on better keys.

So the question is: Why do you use the "Ignore keyboard layout" option in the first place? Is it because many shortcuts end up on better keys and you are too "lazy" to do any remapping? It helps knowing your use case better here :)

maciejmotyka commented 5 years ago

Problem: preserve the comfortable physical layout of the shortcut keys when using non-QWERTY layout without affecting link selection process Current solution: remap all of the shortcuts manually Ideal solution: select layout that you're using

Example: I use Dvorak. I'd like to preserve the physical layout of the shortcut keys, so I select ignoreKeyboardLayout. Consequence: I have to think in QWERTY when opening links or manually remap all the shortcuts.

filipencopav commented 4 years ago

I think what he means here is he loves to press on the DVORAK "U" key to show the hints, but he hates that he has to type out the hints in QWERTY.

Kinda what maciejmotyka tried to describe

maciejmotyka commented 4 years ago

@theamazingwaffle exactly.

One addition to my previous post: even if you remap all of the keys as I mentioned, there still remain hardcoded keys that are used in the visual mode. To change these you have to edit content_scripts/mode_visual.coffee, then build the extension and install it manually, which of course means that you cannot update it without pulling the changes, building and reinstalling.

You can use/consult my fork if you want a vimium set up this way.