Big browsers are fine, you absolutely can browse with a keyboard in vimperator/pentadactyl/tridactyl without touching a mouse in months (I do). Other users above/below suggested vimium and vimperator-style extensions, and just look at the difference. Vimium is simple and works great in 9/10 cases, but there's always that one little element or a quirk where it doesn't work. Vimperator and its descendants work everywhere, but they often require a lot of manual labor and workarounds just to be able to put the mouse away. And the difference between 90% and 100% keyboard browsing is massive (no context switching).
Thing is, the modern web itself is super hostile to the keyboard control and power users, I don't think this has anything to do with browsers.
> Vimperator and its descendants work everywhere
Vimperator at least has been dead for years, ever since Firefox Quantum. The switch to WebExtensions was too much, and not everything could be converted anyway. Don't know about the others you've listed.
Vim Vixen is the closest I've found for the majority of my uses.
So I managed to write a proof of concept extesion [3] which exposes API to create sequence keyboard shortcuts (eg. Ctrl+x Ctrl+c in emacs) and creates bindings to Awesome Bar prefixes for filtering suggestions [4]. Although it is heavy experimental by now.
I suppose it may be pretty easy from here to add a feature for managing all the built-in shortcuts and commands of the browser.
Besides I think there are some effords to improve shortcuts stuff in Firefox [5].
[0]: https://webextensions-experiments.readthedocs.io/en/latest/i... [1]: https://firefox-source-docs.mozilla.org/toolkit/components/e... [2]: https://bugzilla.mozilla.org/show_bug.cgi?id=1397874 [3]: https://www.dropbox.com/s/2va0icchtittbnx/shortcuts-experime... [4]: https://support.mozilla.org/en-US/kb/awesome-bar-search-fire... [5]: https://bugzilla.mozilla.org/show_bug.cgi?id=1303384
i ended up with vim-vixen, but it's still missing a lot of functionality.
This is one of those things that's sorely missing for me. Firefox has keyboard shortcuts for most things I want to do in it, but they're often really inconvenient and I'd like to be able to change them to match those in other tools I often use.
Some other things I'd love to see in a browser:
- A command palette to make functionality & shortcuts more discoverable
- Fuzzy tab search and switcher
- Customizable split panes
On the whole I think browsers could benefit a lot by learning from UX patterns in modern editors like Atom/VSCode.
By default it does fuzzy tab search, (multi) selection and closing. The new advanced mode[1] turns it into something more like Quicksilver, with object->action->optional-param command sequences.
It's only on the Chrome extension marketplace, although it should be mostly compatible with Firefox.
Huge wins for discoverability and usability.
At least in my mind that would involve a kind of holding space separate from files (but serving some of those purposes). It's going to involve a lot of large, structured data, remote resources, and potentially "live" entities (like an open tab). All of which are still manipulable entities, but they need representations and a place to exist.
In the space of "live" entities, I played a bit with something I called "genies" (out of a notion that they were "a kind of daemon" or "something that's not quite a daemon", depending on where you drew lines) where a long-running process would register itself with your shell before backgrounding, and then you could make requests of it at leisure and possibly poll in your PROMPT_COMMAND. There's a lot of potential ecosystem I haven't really fleshed out, but I did put together a libpurple client that worked that way (with a UX very much inspired by https://en.wikipedia.org/wiki/MH_Message_Handling_System)
The UX I'm picturing is a suite of individual commands that can run from the shell against the current "state of the page", some of which would produce a display in either the shell or a separate window. One of those might be of the form of "render the whole page" but it could be less privileged a view than it is in existing browsers.
(I think that Tree Style Tabs change tab handling so much to the better that it's completely worth a native implementation as a part of the browser. That would be a killer feature.)
The workspace specific functionality is an interesting idea though.
Incidentally, Vivaldi comes the closest.
I want really good tab management built in through some kind of workspace. I want something more than just profiles a workspace should be kind of like an editor workspace and provide different tools to help you be productive.
A minimal UI and user configurable keyboard shortcuts would be great too.
I wish I had written down more of my thoughts but I think to sum it up - all browsers are trying to compete for the average customer. I would pay money for a power user/developer focused browser.
For now I’m trying to customize qutebrowser to get closer to what I want.