11 ms·
Qutebrowser – a keyboard-focused browser with a minimal GUI
- vortico 9y agoVersion 1.0.0 was released today, check it out! This is definitely the best hackable browser out there. It combines QtWebEngine and Python, which are incredibly stable yet fast to develop in. It's a great alternative to what's left of the Firefox genocide of extensions, where only VimFX and Saka Key exist.
- nextos 9y agoA great successor to Vimperator is on the works now: https://github.com/cmcaine/tridactyl https://github.com/cmcaine/tridactyl
- StavrosK 9y agoRather off-topic question: aren't WebExtensions meant to work on all browsers? I don't see either Chrome extensions working with Firefox 57 or the reverse.
- jccalhoun 9y agoas I understand it webextensions are aiming to be a superset of chrome extensions.
- The-Compiler 9y agoWebExtensions are a common extension format/API, i.e. Chrome extensions are WebExtensions. However, each browser vendor has their own specific additions, and hopefully Mozilla will add some things addons like Vimperator would need, see e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=1215061 https://bugzilla.mozilla.org/show_bug.cgi?id=1215061
- sevensor 9y agoShouldn't be a problem here, as QtWebEngine is Chromium.
- vortico 9y agoFirefox and Chromium will never support full keybinding-driven navigation. WebExtensions severely limits when keys can be captured, so there are many cases where they cannot be used: when the addressbar is focused, while pages are loading, etc. Qutebrowser keybindings essentially have full control over the page at all times.
- The-Compiler 9y agoFWIW some people from the Tridactyl project are working with Mozilla at getting a better keyboard WebExtension API for Firefox: https://bugzilla.mozilla.org/show_bug.cgi?id=1215061 https://bugzilla.mozilla.org/show_bug.cgi?id=1215061 It's going quite slow however...
- 482794793792894 9y agoSome WebExtensions will work in all browsers. Other WebExtensions will only work in certain browsers that offer a capability that the extension needs. Kind of like webstandards have always worked. For example, Opera and Firefox support the Sidebar API, which allows essentially arbitrary HTML pages to be placed in, you guessed it, a sidebar. Chrome does not support this, because they supposedly just don't want to have sidebars in their browser (it's not exactly an unsolvable task to implement). Overall, Firefox will support the most extension APIs, but even there not all extensions will work, because there's always going to be some APIs that only make sense in one specific browser. Lastly, it is necessary for the extension authors to port their extension. The work they have to do for porting might often be as minimal as just repackaging, testing and then uploading to the other browser's extension webpage, but they do have to do it. So, this is going to cut off many extensions, too. If they're unmaintained, no one's going to port them. And Mozilla has much stricter policies for telemetry, ads etc. in extensions, too, so another chunk of extensions won't get ported for that reason. If there is a specific Chrome extensions that you care for getting ported and it's unmaintained, then you can try it with Chrome Store Foxified [1], which will do the repackaging automatically. The testing you'll have to do yourself and then the fixing of potentially broken things and uploading, that depends on the license of the extension, if you're allowed to do that. [1] https://addons.mozilla.org/en-US/firefox/addon/chrome-store-foxified/ https://addons.mozilla.org/en-US/firefox/addon/chrome-store-...
- inyourtenement 9y agoVimFX is dead.
- hannofcart 9y agoA shame really. VimFX is so critical for my workflow that I am not going to upgrade to FFv57 just because of this.
- semi-extrinsic 9y agoFF Extended Support Release will provide bugfixes for v52 until June 2018. I've switched to it with Pentadactyl while hoping there will be a useable API for proper Vim plugins by then.
- jrimbault 9y agoWhat's your typical workflow in your browser ?
- hannofcart 9y agoI use VimFX on FF, i3-wm as my window manager and vim for writing code. It's mouse free nirvana.
- asmdev 9y agoIs there a good alternative for VimFx?
- velkyel 9y agovimium
- The-Compiler 9y agoThere's Vimium-FF and Saka Key at the moment: https://addons.mozilla.org/en-GB/firefox/addon/vimium-ff/ https://addons.mozilla.org/en-GB/firefox/addon/vimium-ff/ https://key.saka.io/ https://key.saka.io/ Also, Tridactyl is at the planning stage and working with Mozilla on a better keyboard WebExtension API: https://github.com/cmcaine/tridactyl https://github.com/cmcaine/tridactyl https://bugzilla.mozilla.org/show_bug.cgi?id=1215061 https://bugzilla.mozilla.org/show_bug.cgi?id=1215061 edit: Oh, looks like Tridactyl has quite some code already. I'm not sure if it's runnable yet, though.
- crispinb 9y ago"Genocide"? Well there's a new low in English word usage.
- mort96 9y ago> The systematic and planned extermination of an entire group. Sure, technically it only applies to an ethnic/political/racial/etc group of humans, but it's not _that_ far-fetched to apply it to the systematic and planned extermination of an entire group of software (in this case Firefox add-ons).
- pidg 9y agoFirst they came for Greasemonkey, but I did not speak out, because I was a Scriptish user...
- Seirdy 9y agoIt has some negative connotations worth disagreeing with, though. I for one am pro-Webextensions (WE) because the legacy APIs gave all addons unlimited privileges and kept Firefox internals from improving. WE apis have come miles; even Tree Style Tabs has a WE alternative. I am hopeful for Qutebrowser, though; the dev is working on an interesting approach to extending the browser without WE support by allowing "userscripts" (not the Greasemonkey-esque ones). They can be written in tons of different languages. [Relevant documentation](https://qutebrowser.org/doc/userscripts.html https://qutebrowser.org/doc/userscripts.html).
- arthur_pryor 9y agoi think maybe we should keep "genocide" reserved for people, or at least wait on applying it to software till we think that software might be sentient. linguistic inflation sort of sucks [0]. [0] http://www.macmillandictionaryblog.com/is-linguistic-inflation-insanely-awesome http://www.macmillandictionaryblog.com/is-linguistic-inflati... ("linguistic inflation" is a term that i've been using in my own head for years without using it in conversation, so i'm glad to see others have the same complaint)
- 9y ago
- The-Compiler 9y agoQuick update on that: I just released v1.0.1 which fixes some bugs introduced in v1.0.0: - Fixed starting after customizing `fonts.tabs` or `fonts.debug_console`. - Fixed starting with old PyQt versions compiled against newer Qt versions. - Fixed check for PyQt version to correctly enforce 5.7 (not 5.2).
- jacek 9y agoI am using Vimium-FF on Firefox 57. https://addons.mozilla.org/en-US/firefox/addon/vimium-ff/?src=ss https://addons.mozilla.org/en-US/firefox/addon/vimium-ff/?sr...
- raamdev 9y agoI've been using Vimium [1] for years now to browse the web (almost) entirely via the keyboard and couldn't live without it. It's incredibly easy to use once you become familiar with the shortcuts. You can even change the bindings to more closely match Emacs [2] if that's your editor of choice. 1. https://vimium.github.io/ https://vimium.github.io/ 2. https://gist.github.com/dmgerman/6f0e5f9ffc6484dfaf53 https://gist.github.com/dmgerman/6f0e5f9ffc6484dfaf53 Edit: formatting.
- elago 9y agoI also use Vimium and can't live without it, then switched to Qutebrowser which solved some issues that were always annoying me with Vimium, specifically: 1) Vimium key bindings don't work on the new tab page, and don't work until a web page finishes loading. The Qutebrowser key bindings are more first class and built in to the browser, so you can fully trust them to work all the time. 2) Qutebrowser is much better with webpages that also implement their own key bindings. There is pass-through mode which disables all Qutebrowser key bindings (except escape to leave pass-through mode) and lets the web page interpret all keystrokes. Unfortunately I still keep the other browser around because of compatability, but I have much more hope that Qutebrowser will eventually render pages better rather than Chrome/Vimium ever getting a better interface.
- dictum 9y agoProblem #1 can be fixed by making the Vimium blank page your newtab page. Vimium comes with a blank .html file; IIRC it's what opens when you issue a command to open a new tab by pressing `t`. I'm spending more time with FF 57 (it's really great for my needs) so I don't remember how you would set a URL for chrome//:newtab. I think you have to write an extension that redirects (with an inline script) to the Vimium blank page. I'm on mobile so I can't confirm that.
- vortico 9y agoUnfortunately it seems that in WebExtensions, or at least Firefox and Chromium's current implementations of it, keybindings can only be captured by a plugin while a page is finished loading, and while the address bar is focused. There is also no way to do things like focus/defocus the addressbar, autohide the addressbar, autohide the tab bar, and many other small details that Qutebrowser effortlessly achieves.
- pmoriarty 9y agoI'll move to this when it can run NoScript and RequestPolicy.
- The-Compiler 9y agoNoScript will be there once there are per-domain settings, which is the next thing I plan working on: https://github.com/qutebrowser/qutebrowser/issues/27 https://github.com/qutebrowser/qutebrowser/issues/27 uMatrix is basically a superset of RequestPolicy - a stripped down version will work soon after per-domain settings, but I also plan on having a GUI similar to uMatrix: https://github.com/qutebrowser/qutebrowser/issues/2626 https://github.com/qutebrowser/qutebrowser/issues/2626 https://github.com/qutebrowser/qutebrowser/issues/28 https://github.com/qutebrowser/qutebrowser/issues/28
- scoggs 9y agoGreat work, really! Thank you so much.
- xvilka 9y agoThere is also a Luakit https://github.com/luakit/luakit https://github.com/luakit/luakit Moreover it allows to script some stuff easily.
- kronos29296 9y agoAn incredible project considering the average longevity of other vim key browsers and their limited communities. This one is loads better with a good renderer unlike most light weight browsers. (Qtwebengine which is just qt for blink because webkit is old now). It even has adblock.
- fermuch 9y agoNot all systems support qtwebengine (by support I mean: have the current version of qt), and the developer still has qtwebkit as a fallback. Both implementations differ a lot, and I'm happily impressed to see support for both at the same time!
- The-Compiler 9y agoFWIW you'd still need Qt 5.7.1 and an updated fork of QtWebKit: https://github.com/annulen/webkit/wiki https://github.com/annulen/webkit/wiki However, there's usually an easy way to get an up to date Qt with QtWebEngine if you're on Python 3.5/3.6: https://github.com/qutebrowser/qutebrowser/blob/master/doc/install.asciidoc#tox https://github.com/qutebrowser/qutebrowser/blob/master/doc/i...
- craftyguy 9y agoYea! (typing this extremely helpful comment from qutebrowser now, as I have with 100% of my HN comments)
- The-Compiler 9y agoNote that QtWebKit is still being developed (and supported by qutebrowser), just not by the Qt project anymore: https://github.com/annulen/webkit/wiki https://github.com/annulen/webkit/wiki Also, QtWebEngine isn't just Blink. It's basically a stripped down version of Chromium as a library, also containing things like the network stack, the JS engine (V8), etc.
- surfcao 9y agoTried once, but missed the addons in Firefox that Vimperator can also have access. Too bad vimperator will stop working soon.
- 482794793792894 9y agoYou can stick to Firefox 52 ESR until June 26, 2018, if you want. Mozilla is still working on a more powerful keyboard extension API for WebExtensions and I imagine some extension will be leveraging this at that point. No, it won't be as powerful as Vimperator, but should be a good bit more powerful than for example Vimium.
- The-Compiler 9y agoThe Tridactyl project is working on that - Mozilla hasn't shown too much interest so far unfortunately, despite code being there: https://bugzilla.mozilla.org/show_bug.cgi?id=1215061 https://bugzilla.mozilla.org/show_bug.cgi?id=1215061
- bovine3dom 9y agoThe aspiration is to get it in for FF58. I suspect progress will improve once 57 is out of the door - I think Mozillians are pretty busy right now. Congratulations on releasing v1, by the way.
- The-Compiler 9y agoOut of curiosity, what addons were you missing? Anything other than NoScript/uMatrix?
- cmcaine 9y agoWhen I last tried, the adblocker wasn't as good as ublock. If I were to switch now, I would miss easy access to my passwords, referrer control, zotero, and RES (a bit, a userscript would do). Some of the adblock issue is possibly an engine problem (there's some pre-script hooks that Webkit-forks don't support).
- shyn3 9y agoThis is an alternative, making your keyboard your mouse for other instances [1]. Thanks for this. I really needed it. [1] https://autohotkey.com/board/topic/1093-using-keyboard-numpad-as-a-mouse/ https://autohotkey.com/board/topic/1093-using-keyboard-numpa...
- TheSpiceIsLife 9y agoI operate a laser cutter so do a bit of 2D CAD work. Along with my 22 button gaming mouse, AutoHotKey is a massive productivity booster. I have a script compiled to exe running on the laser control console PC to make it more user friendly too.
- shyn3 9y ago22 button gaming mouse? I am impressed. Mind providing me the model #? Do you use all 22 keys?
- TheSpiceIsLife 9y agoRaza Naga. Sorry, 21 buttons: 12 key numpad on the side - 12 left and right regular buttons - 12 + 2 = 14 middle click - 14 + 1 = 15 scroll up and scroll down - 15 + 2 = 17 scroll wheel can be pushed left and right - 17 + 2 = 19 two addition buttons below the scroll wheel - 19 + 2 = 21 Every button I've listed is programmable. I made the left mouse button do something else by mistake once. That was awkward. Also, the software it comes with allows you to program in 8 keymaps over many profiles, and it can change the profile based on what program has focus. I typically just use 2 keymaps in one profile across the few programs I have to use at work. Just having enter, delete, backspace, tab keys, whatever on the mouse is amazing, but I also have macros programmed in for various tasks in the CAD program. I use AutoHotKey for most of the automated tasks in the proprietary software for the laser cutter.
- 0xCMP 9y agoI'm liking this trend of keyboard focused browsers on HN. It feels like I complained once and suddenly everyone has a pet-browser-project that's been in the works for a year or two that addresses a little problem here or there that we all complain about.
- bitexploder 9y agoThe display of TLS vs non TLS makes me a little nervous. A lot of thought has gone into those little lock icons. They can instill a false sense of security -- but it is also important to make TLS issues obvious. Can anyone comment on the handling and display of site certificate info?
- The-Compiler 9y agoThe nice thing about lock icons is that they can indicate EV certificates (extended validation, where the organization basically paid some more to be verified more thoroughly). Unfortunately that's not something I can do with qutebrowser because of missing QtWebEngine API to get that information. Another feature is to make it obvious whether you're connected via plaintext HTTP or HTTPS. qutebrowser solves that by showing the whole URL in white/green respectively. When you see a "broken lock" icon (i.e. when there was an actual TLS issue), you did already get a big error page you had to confirm, or (in case of qutebrowser) a prompt, so you already know there's no TLS going on, right? In that case, qutebrowser shows the URL in orange. As for getting certificate info: Unfortunately also not possible due to missing APIs - see e.g. https://bugreports.qt.io/browse/QTBUG-49822 https://bugreports.qt.io/browse/QTBUG-49822
- jaimehrubiks 9y agoI find this project very interesting. But for those of you who need chrome I highly recommend using SurfingKeys extension, which is a relatively new ext.
- The-Compiler 9y agoThere's also cVim, Vimium and Saka Key FWIW.
- yoz-y 9y agoJust yesterday I was looking for a macOS version of uzbl. This comes in and from the quick glance looks like everything I was looking for.
- davidp670 9y agoInteresting, I use Bookmark OS for bookmarks which is pretty powerful. Does this allow for bookmarking?
- The-Compiler 9y agoIt has basic bookmarking support built in. You might also be able to integrate it with Bookmark OS via an userscript: https://github.com/qutebrowser/qutebrowser/blob/master/doc/userscripts.asciidoc https://github.com/qutebrowser/qutebrowser/blob/master/doc/u...
- i6ruce 9y agoAt first I think that this would be some kind of terminal browsers with very limited number of features, but after few minutes of using it looks very impresive. I'll try to move all my dayly programming browsing and see how it will work.
- The-Compiler 9y agoI wonder, what made you think it's a terminal browser?
- sn0opy 9y agoReminds me of an even more minimal browser called "surf". https://surf.suckless.org https://surf.suckless.org
- sevensor 9y agoThere's always a more minimal browser. I'm posting this comment from w3m :)
- stuaxo 9y agoIn a similar spirit can anyone recommend a browser that works well with a remote control ? I've got an Android TV, but all the browsers are a bit meh with remote.
- ebrandell 9y agoThis should be fun to play around with.