qutebrowser
qutebrowser is a lightweight keyboard-driven, vim-like browser based on PyQt5 and QtWebKit.
Installation
Install either the qutebrowser or the qutebrowser-gitAUR package.
Basic usage
Use :
to access the command prompt. You can use Tab
to auto-complete.
On first usage of qutebrowser, a Quickstart page appears. It is later accessible via :help
. See the cheatsheet for keyboard shortcuts.
User Configuration
You will find the configuration files of qutebrowser under $XDG_CONFIG_HOME/qutebrowser/
. The main configuration happens in the file qutebrowser.conf
, which is organized in sections like an ini-file. For example, under [searchengines]
you can configure your search engines as described by the comment. To add a shortcut for searching the the arch wiki, add this line:
aw = https://wiki.archlinux.org/?search={}
Now, in qutebrowser you can search the arch wiki for an article about qutebrowser via :open aw qutebrowser
which will bring you to this page. As per the standard configuration the key mapping o
will subsitute :open
, so typing o aw your_search_term
will henceforth allow you to quickly search the arch wiki. Notice that the arguments required to perform a search vary across search engines, for example, to set up Google use:
g = https://www.google.com/search?hl=en&q={}
Keybindings
Keybindings reside in $XDG_CONFIG_HOME/qutebrowser/keys.conf)
.
You can edit the keybindings directly from the browser with the command :bind key command
or you can edit them directly from the file. Notice that there are many, many keybinds already in place. If you notice a lag on one of your keybind it is because some other keybind is also starting with the same key.
Video playback
See Browser plugins#Multimedia playback.
Tips and tricks
Use experimental webengine backend
To use the more secure webengine backend, use the --backend
flag:
$ qutebrowser --backend webengine
Minimize fingerprinting
Websites may be able to identify you based on combining information on screen size, user-agent, HTTP_ACCEPT headers, and more. See [1] for more information and to test the uniqueness of your browser. Below are a few steps that can be taken to make your qutebrowser installation more "generic".
Additionally see Firefox/Privacy#Configuration tweaks for more ideas.
Set a common user-agent
Several user agents are available as options when using :set network user-agent
. Another, possibly more generic user-agent is:
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0
Set a common HTTP_ACCEPT header
The following is a common HTTP_ACCEPT header. Under network
in qutebrowser's settings set:
accept-language = en-US,en;q=0.5 custom-headers = {"accept": "text/html, */*; q=0.01"}
Disable reading from canvas
This option is not currently available in qutebrowser other than by specifying it on the commandline like so:
$ qutebrowser --qt-flag disable-reading-from-canvas
See this issue for more information.
dwb-like session handling
To have qutebrowser handle sessions more like in dwb with the --restore
option ("per-window" sessions, multiple simultaneously active sessions), you can use this wrapper script.