Vimium was my introduction to software engineering :) I contributed a bunch of code to it back in 2011-2012. Glad to see it still being in use!
I'm quite proud of the little test I wrote to figure out which DOM APIs could be used to detect the visibility of different kinds of elements, in order that we could display link hints correctly: https://github.com/philc/vimium/blob/master/test_harnesses/v...
How fun! I'm also quite proud of another contribution, also related to detecting visibility, but this time with `document.elementFromPoint` to filter out elements completely covered by other ones :)
(I'm one of the authors) Love seeing this on HN today! It seems to get some front page attention every couple of years. Thank you everyone for the encouragement!
Hey, just wanted to say thanks for your work on Vimium. I have a lot of RSI issues from using a mouse and Vimium has been incredibly helpful in mitigating those.
I think it's fair to say that between Vimium and a windows manager on OSX I've cut my mouse actions by 90%.
Your work has had a profoundly positive impact on my life and I'm very grateful.
Thank you for your excellent work! I have some RSI issues and try not to use the mouse as much as possible. Vimium helps me avoid wear and tear every single day. I love it and install it immediately on any new Chrome instance.
(I am about to use it to press the "reply" button to submit this comment. It's fantastic.)
I once used Vimium and some bug caused the extension to permanently close my hard-earned ~500 tab collection. So while I feel like I lost a lot, I've never felt so much at peace since either.
That used to be my solution for managing tabs in chrome. Every few months it would just crash, I'd lose all my tab, and I'd think "probably for the best". Now chrome is a lot more stable :/.
Holy shit... 500 tabs? I thought I was bad about accumulating tabs but had no idea ~500 was even possible. I'm trying to even but I literally can't--You might say "I literally can't even".
I think this may have been this issue[0], which was fixed in [1]. Seems like the limit has crept up from 3 to 25 at some point in the last decade-ish, but in theory it should be undoable with 25X (or by mashing X to undo as many x commands as required).
[0]: https://github.com/philc/vimium/issues/1126
[1]: https://github.com/philc/vimium/pull/1128
my solution to beat the tab accumulation problem is to have firefox simply close all tabs, clear browsing and download history, clear form and search history, and clear cache upon the user choosing to close the program. if the browser or computer crashes the tabs and everything else still exist. if a site meets your interests, bookmark it. note that cookies remain but are usually cleared periodically. also you can setup a folder of bookmarks, or a new tab page, that you can open up everyday and check the websites you want.
I used Vimium for a while, mainly for the feature of opening links with the keyboard. But I never stuck with it, forgot to use it, because I really don't like the mode-switching and having it default to taking over keyboard input.
Finally found Link Hints, which does only the link opening part, but better (IMO), and with normal keyboard shortcuts. Now I'm constantly using it.
Modeless Keyboard Navigation[0] is a fork of Vimium by an RSI sufferer that doesn't have the mode switching element (but does keep all the other actual features); instead you use Control/Alt + whatever key combinations. Basically it's like Link Hints but with more shortcuts.
This comes up every once in a while on HN. I've been using vimium for over 10 years now since I did an internship at the same company as the guys who created it. Can't imagine browsing the web without it. Works especially well with HN and those small link targets :)
There's also a free, open source vim style browser called Qutebrowser which you can control like Vim if that's your thing. It works well, also with complicated web sites.
I have been using qutebrowser for some time now and it's pretty nice if you can accept having a browser without UBlock Origin and other extensions ranging from nice-to-have to obligatory. The main advantage and the reason and I can't get myself to switch to Firefox is that it's vim-UX is just flawless. It works amazingly well and is just magnitudes better than any Firefox or Chrome extension that adds vim-UX on top since it's built into the browser natively in qutebrowser.
Maybe I'll switch away some time in the future, but for now the flawless vim-UX, its customizability and my many scripts and custom bindings I've written for it keep my locked in the qutebrowser garden, haha!
I love qutebrowser and use it daily (and donate to the compiler), mostly on Linux but also on Windows.
Here are some of my headaches that force me to use Chrome/Firefox anyway sometimes, if anyone has answers to these I am very interested to hear them.
* Can't save passwords / autofill (for accounts I don't particularly care about)
* UI scaling in Windows (for high-res screens) is bad. The web page contents do not scale automatically.
* Does not resolve Teams "secure links" (workaround is to right click teams links instead and copy them, then paste in qutebrowser)
* Twitter videos don't work
* On linux (somehow this works on windows), "accept all cookies" sometimes does not get rid of that prompt. Stack overflow is an example where this happens. Another example is redhat where the prompt does not load for a while [0]
* Clicking something that spawns a box where text can be inserted does not bring me into insert mode. Example [1] (the searchglass). This causes me to close the tab by mistake sometimes by typing 'd'.
One Vimium feature that I use a lot is the "Vomnibar". As a heavy bookmarks user, it lets me easily search for any existing duplicates before bookmarking a page by just pressing 'b'. If I start the search with "/<Space>", it will show the full path to the bookmark folder too!
I've been using Vimium for quite some time now, and while I like it, there are two things which annoy the hell out of me.
Vimium disables the browser's backward-forward cache (by listening to the "unload" event), causing navigation to be much slower.
There is also no way for a website owner to warn a Vimium user of conflicting keybindings. I run a website which implements Vim keybindings and several of my users complain that it doesn't work. I have to remind them to disable Vimium. This issue has been open on their GitHub for more than 4 years with no end in sight.
I used to be a loving VimFX [0] user. It had intelligent link hints (essentially, links it thinks you are likely to want, e.g. because they're big, get single-key shortcuts). The scrolling was actually native, as in equivalent to hitting the arrow keys. I don't think any of the other Vim emulator plugins ever replicated that. Vimium doesn't, Tridactyl doesn't, and Vim Vixen was horribly broken.
Apparently VimFX still runs via some hacks on modern Firefox versions? The last release was even in 2022. Maybe I should give it a try again.
This looks amazing, but installing the Firefox extension I am worried about all the permissions it asks. I am surprised how comfortable people are signing off on these permissions. How do people at HN put these security worries to rest?
Been using vimium for years. I have gotten so used to scrolling pages at different speed by pressing keys that whenever I am using someone else's computer I have to fight muscle memory. I also use it for clicking links through keybinds, but really the custom up/down is the main usage.
The occasional website having its own keybinds never stops being annoying, but it's easy to disable the extension per site
I used Vimperator on Firefox about 10 years ago. Back then it was fantastic, but I think the add-on environment has changed in FF (WebExtensions) since then and add-ons aren't as powerful.
I've used Vimium on Chrome. Every few years I get excited, install it, feel 10x more productive, and then a few days later uninstall it.
As I recall, it doesn't work on the New Tab page. It doesn't work if the address bar is in focus. I believe you have to wait for the page to fully load before you can use it.
Most annoyingly, a lot of websites have custom keyboard shortcuts, so you have to blacklist them in the Vimium config. Eg Gmail, Miro. Then you need to remember you can't use Vimium on them.
None of this is their fault in any way, of course. But it does make Vimium a bit annoying to use for me anyway.
Tried using this recently. Even though I use vim daily I haven't made good use of Vimium yet. In fact I found it more annoying because it naturally breaks sites that I do know keybindings for like YouTube.
Overall I don't want to come across as critical of of something that just needs a little effort to use, more of just setting expectations.
Normally this would be less of an issue but for me, I ran into this problem while on my rowing machine, and I didn't want to stop to fiddle with keybindings.
The "f" mode in Vimium is just wonderful. I wish that I could have a system-wide keyboard just like that.
I seem to remember in Windows 7, there was some sort of voice assistant, that could similarly put a label on every visible clickable element. That was for voice command, but would be great for keyboard navigation, too.
[+] [-] int3|3 years ago|reply
I'm quite proud of the little test I wrote to figure out which DOM APIs could be used to detect the visibility of different kinds of elements, in order that we could display link hints correctly: https://github.com/philc/vimium/blob/master/test_harnesses/v...
[+] [-] philc|3 years ago|reply
[+] [-] danielskogly|3 years ago|reply
https://github.com/philc/vimium/pull/2251
[+] [-] mijoharas|3 years ago|reply
I built the custom search engines feature (which I ironically don't use much anymore).
[+] [-] edanm|3 years ago|reply
[+] [-] tambourine_man|3 years ago|reply
[+] [-] comfypotato|3 years ago|reply
[+] [-] philc|3 years ago|reply
Related: last week I published a very similar extension, but for Google Sheets. https://github.com/philc/sheetkeys
[+] [-] michaelbuckbee|3 years ago|reply
I think it's fair to say that between Vimium and a windows manager on OSX I've cut my mouse actions by 90%.
Your work has had a profoundly positive impact on my life and I'm very grateful.
[+] [-] apozem|3 years ago|reply
(I am about to use it to press the "reply" button to submit this comment. It's fantastic.)
[+] [-] osense|3 years ago|reply
Do you have any plans for a Google Docs extension as well? Or do you mostly get by with Vimium there?
[+] [-] sva_|3 years ago|reply
[+] [-] johnhenry|3 years ago|reply
[+] [-] epigramx|3 years ago|reply
[+] [-] komali2|3 years ago|reply
I'm sorry you lost your tabs but congratulations nonetheless.
https://stackoverflow.com/questions/11828270/how-do-i-exit-v...
[+] [-] sodapopcan|3 years ago|reply
[+] [-] unknown|3 years ago|reply
[deleted]
[+] [-] mrmr1993|3 years ago|reply
[+] [-] magios|3 years ago|reply
[+] [-] reportgunner|3 years ago|reply
[+] [-] berry_sortoro|3 years ago|reply
[deleted]
[+] [-] audunw|3 years ago|reply
Finally found Link Hints, which does only the link opening part, but better (IMO), and with normal keyboard shortcuts. Now I'm constantly using it.
https://addons.mozilla.org/en-US/firefox/addon/linkhints/
[+] [-] donatzsky|3 years ago|reply
https://addons.mozilla.org/en-US/firefox/addon/key-jump-keyb...
[+] [-] caspar|3 years ago|reply
0: https://handsfreecoding.org/2017/11/22/extensions-now-availa...
[+] [-] aliencat|3 years ago|reply
[+] [-] woleium|3 years ago|reply
Edit: no, but tridactyl is: https://github.com/tridactyl/tridactyl
[+] [-] devsda|3 years ago|reply
Offtopic:
The section "Declaration for Applicable Regions" from ReadMe, this is the first time I've come across it.
Should it be read as a disclaimer or an opinion?
[+] [-] N3cr0ph4g1st|3 years ago|reply
[+] [-] mplanchard|3 years ago|reply
[+] [-] ashton314|3 years ago|reply
[+] [-] m0rtalis|3 years ago|reply
[+] [-] keyle|3 years ago|reply
[+] [-] ernestipark|3 years ago|reply
[+] [-] airtag|3 years ago|reply
https://qutebrowser.org/
[+] [-] kataklasm|3 years ago|reply
Maybe I'll switch away some time in the future, but for now the flawless vim-UX, its customizability and my many scripts and custom bindings I've written for it keep my locked in the qutebrowser garden, haha!
[+] [-] rax0m|3 years ago|reply
Here are some of my headaches that force me to use Chrome/Firefox anyway sometimes, if anyone has answers to these I am very interested to hear them.
* Can't save passwords / autofill (for accounts I don't particularly care about)
* UI scaling in Windows (for high-res screens) is bad. The web page contents do not scale automatically.
* Does not resolve Teams "secure links" (workaround is to right click teams links instead and copy them, then paste in qutebrowser)
* Twitter videos don't work
* On linux (somehow this works on windows), "accept all cookies" sometimes does not get rid of that prompt. Stack overflow is an example where this happens. Another example is redhat where the prompt does not load for a while [0]
* Clicking something that spawns a box where text can be inserted does not bring me into insert mode. Example [1] (the searchglass). This causes me to close the tab by mistake sometimes by typing 'd'.
[0]: https://access.redhat.com/documentation/en-us/red_hat_enterp... [1]: https://www.atlassian.com/software/jira/templates/web-design...
[+] [-] rsapkf|3 years ago|reply
[+] [-] waz0wski|3 years ago|reply
[+] [-] rohitag13|3 years ago|reply
[+] [-] qolop|3 years ago|reply
Vimium disables the browser's backward-forward cache (by listening to the "unload" event), causing navigation to be much slower.
There is also no way for a website owner to warn a Vimium user of conflicting keybindings. I run a website which implements Vim keybindings and several of my users complain that it doesn't work. I have to remind them to disable Vimium. This issue has been open on their GitHub for more than 4 years with no end in sight.
[+] [-] a_rahmanshah|3 years ago|reply
[+] [-] ColonelPhantom|3 years ago|reply
Apparently VimFX still runs via some hacks on modern Firefox versions? The last release was even in 2022. Maybe I should give it a try again.
[0] https://github.com/akhodakivskiy/VimFx
[+] [-] noname120|3 years ago|reply
[+] [-] bovine3dom|3 years ago|reply
IMO the scrolling in Tridactyl is better than native as it can work even when the page has put focus somewhere daft (like a pop-up).
[+] [-] hajola|3 years ago|reply
[+] [-] belinder|3 years ago|reply
The occasional website having its own keybinds never stops being annoying, but it's easy to disable the extension per site
[+] [-] devsda|3 years ago|reply
It does not compare directly with the old vimperator addon but it works great for regular browser navigation.
The only occasional glitch I saw was in UI for adding site exceptions.
[+] [-] tastysandwich|3 years ago|reply
I've used Vimium on Chrome. Every few years I get excited, install it, feel 10x more productive, and then a few days later uninstall it.
As I recall, it doesn't work on the New Tab page. It doesn't work if the address bar is in focus. I believe you have to wait for the page to fully load before you can use it.
Most annoyingly, a lot of websites have custom keyboard shortcuts, so you have to blacklist them in the Vimium config. Eg Gmail, Miro. Then you need to remember you can't use Vimium on them.
None of this is their fault in any way, of course. But it does make Vimium a bit annoying to use for me anyway.
[+] [-] prettyStandard|3 years ago|reply
Overall I don't want to come across as critical of of something that just needs a little effort to use, more of just setting expectations.
Normally this would be less of an issue but for me, I ran into this problem while on my rowing machine, and I didn't want to stop to fiddle with keybindings.
[+] [-] powersnail|3 years ago|reply
I seem to remember in Windows 7, there was some sort of voice assistant, that could similarly put a label on every visible clickable element. That was for voice command, but would be great for keyboard navigation, too.