summaryrefslogtreecommitdiff
path: root/qutebrowser
diff options
context:
space:
mode:
authorUrbain Vaes <urbain@vaes.uk>2016-03-10 14:29:06 +0000
committerUrbain Vaes <urbain@vaes.uk>2016-03-10 14:29:06 +0000
commit3446f5387389b0e1671481c8a8fb9ea0eed519f6 (patch)
tree543bde435847c700507c3b229460b446f4a09028 /qutebrowser
parentc9f80e43f431d89bbccd1ecc68c7b48fb8c01dd4 (diff)
Remove . from dotfiles for convenience
Diffstat (limited to 'qutebrowser')
l---------qutebrowser/bookmarks1
-rw-r--r--qutebrowser/keys.conf631
l---------qutebrowser/quickmarks1
-rw-r--r--qutebrowser/qutebrowser.conf1394
-rwxr-xr-xqutebrowser/userscripts/bookmarks-dmenu7
-rwxr-xr-xqutebrowser/userscripts/quickmarks-dmenu7
-rwxr-xr-xqutebrowser/userscripts/url-from-surfraw20
7 files changed, 2061 insertions, 0 deletions
diff --git a/qutebrowser/bookmarks b/qutebrowser/bookmarks
new file mode 120000
index 0000000..c3dbda6
--- /dev/null
+++ b/qutebrowser/bookmarks
@@ -0,0 +1 @@
+../personal/qutebrowser/bookmarks \ No newline at end of file
diff --git a/qutebrowser/keys.conf b/qutebrowser/keys.conf
new file mode 100644
index 0000000..76f0e72
--- /dev/null
+++ b/qutebrowser/keys.conf
@@ -0,0 +1,631 @@
+# vim: ft=conf
+#
+# In this config file, qutebrowser's key bindings are configured.
+# The format looks like this:
+#
+# [keymode]
+#
+# command
+# keychain
+# keychain2
+# ...
+#
+# All blank lines and lines starting with '#' are ignored.
+# Inline-comments are not permitted.
+#
+# keymode is a comma separated list of modes in which the key binding should be
+# active. If keymode starts with !, the key binding is active in all modes
+# except the listed modes.
+#
+# For special keys (can't be part of a keychain), enclose them in `<`...`>`.
+# For modifiers, you can use either `-` or `+` as delimiters, and these names:
+#
+# * Control: `Control`, `Ctrl`
+# * Meta: `Meta`, `Windows`, `Mod4`
+# * Alt: `Alt`, `Mod1`
+# * Shift: `Shift`
+#
+# For simple keys (no `<>`-signs), a capital letter means the key is pressed
+# with Shift. For special keys (with `<>`-signs), you need to explicitly add
+# `Shift-` to match a key pressed with shift. You can bind multiple commands
+# by separating them with `;;`.
+#
+# Note that default keybindings are always bound, and need to be explicitly
+# unbound if you wish to remove them:
+#
+# <unbound>
+# keychain
+# keychain2
+# ...
+
+[!normal]
+
+clear-keychain ;; leave-mode
+ <Escape>
+ <Ctrl-[>
+
+[normal]
+# Keybindings for normal mode.
+
+clear-keychain ;; search
+ <Escape>
+
+set-cmd-text -s :spawn --userscript url-from-surfraw
+ o
+
+set-cmd-text -s :spawn --userscript url-from-surfraw -t
+ t
+
+set-cmd-text :open {url}
+ go
+
+set-cmd-text -s :open -t
+ O
+
+set-cmd-text :open -t {url}
+ gO
+
+set-cmd-text -s :open -b
+ xo
+
+set-cmd-text :open -b {url}
+ xO
+
+set-cmd-text -s :open -w
+ wo
+
+set-cmd-text :open -w {url}
+ wO
+
+open -t
+ ga
+ <Ctrl-T>
+
+tab-close
+ d
+ <Ctrl-W>
+
+tab-close -o
+ D
+
+tab-only
+ co
+
+tab-focus
+ J
+ gt
+
+tab-move
+ gm
+
+tab-move -
+ gl
+
+tab-move +
+ gr
+
+tab-prev
+ K
+ gT
+
+tab-clone
+ gC
+
+reload
+ r
+
+reload -f
+ R
+
+back
+ H
+
+back -t
+ th
+
+back -w
+ wh
+
+forward
+ L
+
+forward -t
+ tl
+
+forward -w
+ wl
+
+fullscreen
+ <F11>
+
+hint
+ f
+
+hint all tab
+ F
+
+hint all window
+ wf
+
+hint all tab-bg
+ ;b
+
+hint all tab-fg
+ ;f
+
+hint all hover
+ ;h
+
+hint images
+ ;i
+
+hint images tab
+ ;I
+
+hint images tab-bg
+ .i
+
+hint links fill ":open {hint-url}"
+ ;o
+
+hint links fill ":open -t {hint-url}"
+ ;O
+
+hint links fill ":open -b {hint-url}"
+ .o
+
+hint links yank
+ ;y
+
+hint links yank-primary
+ ;Y
+
+hint --rapid links tab-bg
+ ;r
+
+hint --rapid links window
+ ;R
+
+hint links download
+ ;d
+
+scroll left
+ h
+
+scroll down
+ j
+
+scroll up
+ k
+
+scroll right
+ l
+
+scroll-perc 0
+ gg
+
+scroll-perc
+ G
+
+search-next
+ n
+
+search-prev
+ N
+
+enter-mode insert
+ i
+
+enter-mode caret
+ v
+
+yank
+ yy
+
+yank -s
+ yY
+
+yank -t
+ yt
+
+yank -ts
+ yT
+
+yank -d
+ yd
+
+yank -ds
+ yD
+
+paste
+ pp
+
+paste -s
+ pP
+
+paste -t
+ Pp
+
+paste -ts
+ PP
+
+paste -w
+ wp
+
+paste -ws
+ wP
+
+quickmark-save
+ m
+
+set-cmd-text -s :quickmark-load -t
+ B
+
+set-cmd-text -s :quickmark-load -w
+ wb
+
+bookmark-add
+ M
+
+spawn --userscript quickmarks-dmenu
+ u
+
+spawn --userscript bookmarks-dmenu
+ b
+
+set-cmd-text -s :bookmark-load -t
+ gB
+
+set-cmd-text -s :bookmark-load -w
+ wB
+
+save
+ sf
+
+set-cmd-text -s :set
+ ss
+
+set-cmd-text -s :set -t
+ sl
+
+set-cmd-text -s :set keybind
+ sk
+
+zoom-out
+ -
+
+zoom-in
+ +
+
+zoom
+ =
+
+navigate prev
+ [[
+
+navigate next
+ ]]
+
+navigate prev -t
+ {{
+
+navigate next -t
+ }}
+
+navigate up
+ gu
+
+navigate up -t
+ gU
+
+navigate increment
+ <Ctrl-A>
+
+navigate decrement
+ <Ctrl-X>
+
+inspector
+ wi
+
+download
+ gd
+
+download-cancel
+ ad
+
+download-clear
+ cd
+
+view-source
+ gf
+
+tab-focus last
+ <Ctrl-Tab>
+
+enter-mode passthrough
+ <Ctrl-V>
+
+quit
+ <Ctrl-Q>
+
+scroll-page 0 1
+ <Ctrl-F>
+
+scroll-page 0 -1
+ <Ctrl-B>
+
+scroll-page 0 0.5
+ <Ctrl-D>
+
+scroll-page 0 -0.5
+ <Ctrl-U>
+
+tab-focus 1
+ <Alt-1>
+
+tab-focus 2
+ <Alt-2>
+
+tab-focus 3
+ <Alt-3>
+
+tab-focus 4
+ <Alt-4>
+
+tab-focus 5
+ <Alt-5>
+
+tab-focus 6
+ <Alt-6>
+
+tab-focus 7
+ <Alt-7>
+
+tab-focus 8
+ <Alt-8>
+
+tab-focus 9
+ <Alt-9>
+
+home
+ <Ctrl-h>
+
+stop
+ <Ctrl-s>
+
+print
+ <Ctrl-Alt-p>
+
+open qute:settings
+ Ss
+
+follow-selected
+ <Return>
+ <Ctrl-M>
+ <Shift-Return>
+ <Enter>
+ <Shift-Enter>
+
+follow-selected -t
+ <Ctrl-Return>
+ <Ctrl-Enter>
+
+set-cmd-text -s :bookmark-load
+ gb
+
+undo
+ <Ctrl-Shift-T>
+
+[insert]
+# Keybindings for insert mode.
+# Since normal keypresses are passed through, only special keys are
+# supported in this mode.
+# Useful hidden commands to map in this section:
+# * `open-editor`: Open a texteditor with the focused field.
+
+open-editor
+ <Ctrl-E>
+
+[hint]
+# Keybindings for hint mode.
+# Since normal keypresses are passed through, only special keys are
+# supported in this mode.
+# Useful hidden commands to map in this section:
+# * `follow-hint`: Follow the currently selected hint.
+
+follow-hint
+ <Return>
+ <Ctrl-M>
+ <Shift-Return>
+ <Enter>
+ <Shift-Enter>
+
+hint --rapid links tab-bg
+ <Ctrl-R>
+
+hint links
+ <Ctrl-F>
+
+hint all tab-bg
+ <Ctrl-B>
+
+[command]
+# Keybindings for command mode.
+# Since normal keypresses are passed through, only special keys are
+# supported in this mode.
+# Useful hidden commands to map in this section:
+# * `command-history-prev`: Switch to previous command in history.
+# * `command-history-next`: Switch to next command in history.
+# * `completion-item-prev`: Select previous item in completion.
+# * `completion-item-next`: Select next item in completion.
+# * `command-accept`: Execute the command currently in the commandline.
+
+command-history-prev
+ <Ctrl-K>
+ <Up>
+
+command-history-next
+ <Ctrl-J>
+ <Down>
+
+completion-item-prev
+ <Ctrl-P>
+
+completion-item-next
+ <Ctrl-N>
+
+completion-item-del
+ <Ctrl-D>
+
+command-accept
+ <Return>
+ <Ctrl-M>
+ <Shift-Return>
+ <Enter>
+ <Shift-Enter>
+
+[prompt]
+# Keybindings for prompts in the status line.
+# You can bind normal keys in this mode, but they will be only active
+# when a yes/no-prompt is asked. For other prompt modes, you can only
+# bind special keys.
+# Useful hidden commands to map in this section:
+# * `prompt-accept`: Confirm the entered value.
+# * `prompt-yes`: Answer yes to a yes/no question.
+# * `prompt-no`: Answer no to a yes/no question.
+
+prompt-accept
+ <Return>
+ <Ctrl-M>
+ <Shift-Return>
+ <Enter>
+ <Shift-Enter>
+
+prompt-yes
+ y
+
+prompt-no
+ n
+
+[command,prompt]
+
+rl-backward-char
+ <Ctrl-B>
+
+rl-forward-char
+ <Ctrl-F>
+
+rl-backward-word
+ <Alt-B>
+
+rl-forward-word
+ <Alt-F>
+
+rl-beginning-of-line
+ <Ctrl-A>
+
+rl-end-of-line
+ <Ctrl-E>
+
+rl-unix-line-discard
+ <Ctrl-U>
+
+rl-kill-word
+ <Alt-D>
+
+rl-unix-word-rubout
+ <Ctrl-W>
+ <Alt-Backspace>
+
+rl-yank
+ <Ctrl-Y>
+
+rl-delete-char
+ <Ctrl-?>
+
+rl-backward-delete-char
+ <Ctrl-H>
+
+rl-kill-line
+ <Ctrl-K>
+
+[caret]
+
+toggle-selection
+ v
+ <Space>
+
+drop-selection
+ <Ctrl-Space>
+
+enter-mode normal
+ c
+
+move-to-next-line
+ j
+
+move-to-prev-line
+ k
+
+move-to-next-char
+ l
+
+move-to-prev-char
+ h
+
+move-to-end-of-word
+ e
+
+move-to-next-word
+ w
+
+move-to-prev-word
+ b
+
+move-to-start-of-next-block
+ ]
+
+move-to-start-of-prev-block
+ [
+
+move-to-end-of-next-block
+ }
+
+move-to-end-of-prev-block
+ {
+
+move-to-start-of-line
+ 0
+
+move-to-end-of-line
+ $
+
+move-to-start-of-document
+ gg
+
+move-to-end-of-document
+ G
+
+yank-selected -p
+ Y
+
+yank-selected
+ y
+ <Return>
+ <Ctrl-M>
+ <Shift-Return>
+ <Enter>
+ <Shift-Enter>
+
+scroll left
+ H
+
+scroll down
+ J
+
+scroll up
+ K
+
+scroll right
+ L
+
diff --git a/qutebrowser/quickmarks b/qutebrowser/quickmarks
new file mode 120000
index 0000000..5313215
--- /dev/null
+++ b/qutebrowser/quickmarks
@@ -0,0 +1 @@
+../personal/qutebrowser/quickmarks \ No newline at end of file
diff --git a/qutebrowser/qutebrowser.conf b/qutebrowser/qutebrowser.conf
new file mode 100644
index 0000000..606c81d
--- /dev/null
+++ b/qutebrowser/qutebrowser.conf
@@ -0,0 +1,1394 @@
+# vim: ft=dosini
+
+# Configfile for qutebrowser.
+#
+# This configfile is parsed by python's configparser in extended
+# interpolation mode. The format is very INI-like, so there are
+# categories like [general] with "key = value"-pairs.
+#
+# Note that you shouldn't add your own comments, as this file is
+# regenerated every time the config is saved.
+#
+# Interpolation looks like ${value} or ${section:value} and will be
+# replaced by the respective value.
+#
+# Some settings will expand environment variables. Note that, since
+# interpolation is run first, you will need to escape the $ char as
+# described below.
+#
+# This is the default config, so if you want to remove anything from
+# here (as opposed to change/add), for example a key binding, set it to
+# an empty value.
+#
+# You will need to escape the following values:
+# - # at the start of the line (at the first position of the key) (\#)
+# - $ in a value ($$)
+
+[general]
+# General/miscellaneous options.
+#
+# ignore-case (IgnoreCase):
+# Whether to find text on a page case-insensitively.
+# true: Search case-insensitively
+# false: Search case-sensitively
+# smart: Search case-sensitively if there are capital chars
+# Default: smart
+#
+# wrap-search (Bool):
+# Whether to wrap finding text to the top when arriving at the end.
+# Valid values: true, false
+# Default: true
+#
+# startpage (List):
+# The default page(s) to open at the start, separated by commas.
+# Default: https://duckduckgo.com
+#
+# default-page (FuzzyUrl):
+# The page to open if :open -t/-b/-w is used without URL. Use
+# `about:blank` for a blank page.
+# Default: ${startpage}
+#
+# auto-search (AutoSearch):
+# Whether to start a search when something else than a URL is
+# entered.
+# naive: Use simple/naive check.
+# dns: Use DNS requests (might be slow!).
+# false: Never search automatically.
+# Default: naive
+#
+# auto-save-config (Bool):
+# Whether to save the config automatically on quit.
+# Valid values: true, false
+# Default: true
+#
+# auto-save-interval (Int):
+# How often (in milliseconds) to auto-save config/cookies/etc.
+# Default: 15000
+#
+# editor (ShellCommand):
+# The editor (and arguments) to use for the `open-editor` command.
+# The arguments get split like in a shell, so you can use `"` or `'`
+# to quote them.
+# `{}` gets replaced by the filename of the file to be edited.
+# Default: gvim -f "{}"
+#
+# editor-encoding (Encoding):
+# Encoding to use for editor.
+# Default: utf-8
+#
+# private-browsing (Bool):
+# Do not record visited pages in the history or store web page
+# icons.
+# Valid values: true, false
+# Default: false
+#
+# developer-extras (Bool):
+# Enable extra tools for Web developers.
+# This needs to be enabled for `:inspector` to work and also adds an
+# _Inspect_ entry to the context menu.
+# Valid values: true, false
+# Default: false
+#
+# print-element-backgrounds (Bool):
+# Whether the background color and images are also drawn when the
+# page is printed.
+# Valid values: true, false
+# Default: true
+#
+# xss-auditing (Bool):
+# Whether load requests should be monitored for cross-site scripting
+# attempts.
+# Suspicious scripts will be blocked and reported in the inspector's
+# JavaScript console. Enabling this feature might have an impact on
+# performance.
+# Valid values: true, false
+# Default: false
+#
+# site-specific-quirks (Bool):
+# Enable workarounds for broken sites.
+# Valid values: true, false
+# Default: true
+#
+# default-encoding (String):
+# Default encoding to use for websites.
+# The encoding must be a string describing an encoding such as
+# _utf-8_, _iso-8859-1_, etc. If left empty a default value will be
+# used.
+# Default:
+#
+# new-instance-open-target (String):
+# How to open links in an existing instance if a new one is
+# launched.
+# tab: Open a new tab in the existing window and activate the
+# window.
+# tab-bg: Open a new background tab in the existing window and
+# activate the window.
+# tab-silent: Open a new tab in the existing window without
+# activating the window.
+# tab-bg-silent: Open a new background tab in the existing
+# window without activating the window.
+# window: Open in a new window.
+# Default: tab
+#
+# log-javascript-console (String):
+# How to log javascript console messages.
+# none: Don't log messages.
+# debug: Log messages with debug level.
+# info: Log messages with info level.
+# Default: debug
+#
+# save-session (Bool):
+# Whether to always save the open pages.
+# Valid values: true, false
+# Default: false
+#
+# session-default-name (SessionName):
+# The name of the session to save by default, or empty for the last
+# loaded session.
+# Default:
+#
+# url-incdec-segments (FlagList):
+# The URL segments where `:navigate increment/decrement` will search
+# for a number.
+# Valid values: host, path, query, anchor
+# Default: path,query
+ignore-case = smart
+wrap-search = true
+startpage = about:blank
+default-page = https://startpage.com
+auto-search = naive
+auto-save-config = true
+auto-save-interval = 15000
+editor = urxvt -e vim -f "{}"
+editor-encoding = utf-8
+private-browsing = false
+developer-extras = false
+print-element-backgrounds = true
+xss-auditing = false
+site-specific-quirks = true
+default-encoding =
+new-instance-open-target = tab
+log-javascript-console = debug
+save-session = false
+session-default-name =
+url-incdec-segments = path,query
+
+[ui]
+# General options related to the user interface.
+#
+# zoom-levels (PercList):
+# The available zoom levels, separated by commas.
+# Default:
+# 25%,33%,50%,67%,75%,90%,100%,110%,125%,150%,175%,200%,250%,300%,400%,500%
+#
+# default-zoom (Perc):
+# The default zoom level.
+# Default: 100%
+#
+# downloads-position (VerticalPosition):
+# Where to show the downloaded files.
+# Valid values: top, bottom
+# Default: top
+#
+# message-timeout (Int):
+# Time (in ms) to show messages in the statusbar for.
+# Default: 2000
+#
+# message-unfocused (Bool):
+# Whether to show messages in unfocused windows.
+# Valid values: true, false
+# Default: false
+#
+# confirm-quit (ConfirmQuit):
+# Whether to confirm quitting the application.
+# always: Always show a confirmation.
+# multiple-tabs: Show a confirmation if multiple tabs are
+# opened.
+# downloads: Show a confirmation if downloads are running
+# never: Never show a confirmation.
+# Default: never
+#
+# display-statusbar-messages (Bool):
+# Whether to display javascript statusbar messages.
+# Valid values: true, false
+# Default: false
+#
+# zoom-text-only (Bool):
+# Whether the zoom factor on a frame applies only to the text or to
+# all content.
+# Valid values: true, false
+# Default: false
+#
+# frame-flattening (Bool):
+# Whether to expand each subframe to its contents.
+# This will flatten all the frames to become one scrollable page.
+# Valid values: true, false
+# Default: false
+#
+# user-stylesheet (UserStyleSheet):
+# User stylesheet to use (absolute filename, filename relative to
+# the config directory or CSS string). Will expand environment
+# variables.
+# Default: ::-webkit-scrollbar { width: 0px; height: 0px; }
+#
+# css-media-type (String):
+# Set the CSS media type.
+# Default:
+#
+# smooth-scrolling (Bool):
+# Whether to enable smooth scrolling for webpages.
+# Valid values: true, false
+# Default: false
+#
+# remove-finished-downloads (Int):
+# Number of milliseconds to wait before removing finished downloads.
+# Will not be removed if value is -1.
+# Default: -1
+#
+# hide-statusbar (Bool):
+# Whether to hide the statusbar unless a message is shown.
+# Valid values: true, false
+# Default: false
+#
+# statusbar-padding (Padding):
+# Padding for statusbar (top, bottom, left, right).
+# Default: 1,1,0,0
+#
+# window-title-format (FormatString):
+# The format to use for the window title. The following placeholders
+# are defined:
+# * `{perc}`: The percentage as a string like `[10%]`.
+# * `{perc_raw}`: The raw percentage, e.g. `10`
+# * `{title}`: The title of the current web page
+# * `{title_sep}`: The string ` - ` if a title is set, empty
+# otherwise.
+# * `{id}`: The internal window ID of this window.
+# * `{scroll_pos}`: The page scroll position.
+# Default: {perc}{title}{title_sep}qutebrowser
+#
+# hide-mouse-cursor (Bool):
+# Whether to hide the mouse cursor.
+# Valid values: true, false
+# Default: false
+#
+# modal-js-dialog (Bool):
+# Use standard JavaScript modal dialog for alert() and confirm()
+# Valid values: true, false
+# Default: false
+#
+# hide-wayland-decoration (Bool):
+# Hide the window decoration when using wayland (requires restart)
+# Valid values: true, false
+# Default: false
+zoom-levels = 25%,33%,50%,67%,75%,90%,100%,110%,125%,150%,175%,200%,250%,300%,400%,500%
+default-zoom = 100%
+downloads-position = top
+message-timeout = 2000
+message-unfocused = false
+confirm-quit = never
+display-statusbar-messages = false
+zoom-text-only = false
+frame-flattening = false
+user-stylesheet = ::-webkit-scrollbar { width: 0px; height: 0px; }
+css-media-type =
+smooth-scrolling = false
+remove-finished-downloads = -1
+hide-statusbar = false
+statusbar-padding = 1,1,0,0
+window-title-format = {perc}{title}{title_sep}qutebrowser
+hide-mouse-cursor = false
+modal-js-dialog = false
+hide-wayland-decoration = false
+
+[network]
+# Settings related to the network.
+#
+# do-not-track (Bool):
+# Value to send in the `DNT` header.
+# Valid values: true, false
+# Default: true
+#
+# accept-language (String):
+# Value to send in the `accept-language` header.
+# Default: en-US,en
+#
+# referer-header (String):
+# Send the Referer header
+# always: Always send.
+# never: Never send; this is not recommended, as some sites may
+# break.
+# same-domain: Only send for the same domain. This will still
+# protect your privacy, but shouldn't break any sites.
+# Default: same-domain
+#
+# user-agent (UserAgent):
+# User agent to send. Empty to send the default.
+# Default:
+#
+# proxy (Proxy):
+# The proxy to use.
+# In addition to the listed values, you can use a `socks://...` or
+# `http://...` URL.
+# system: Use the system wide proxy.
+# none: Don't use any proxy
+# Default: system
+#
+# proxy-dns-requests (Bool):
+# Whether to send DNS requests over the configured proxy.
+# Valid values: true, false
+# Default: true
+#
+# ssl-strict (BoolAsk):
+# Whether to validate SSL handshakes.
+# Valid values: true, false, ask
+# Default: ask
+#
+# dns-prefetch (Bool):
+# Whether to try to pre-fetch DNS entries to speed up browsing.
+# Valid values: true, false
+# Default: true
+do-not-track = true
+accept-language = en-US,en
+referer-header = same-domain
+user-agent =
+proxy = system
+proxy-dns-requests = true
+ssl-strict = ask
+dns-prefetch = true
+
+[completion]
+# Options related to completion and command history.
+#
+# auto-open (Bool):
+# Automatically open completion when typing.
+# Valid values: true, false
+# Default: true
+#
+# download-path-suggestion (String):
+# What to display in the download filename input.
+# path: Show only the download path.
+# filename: Show only download filename.
+# both: Show download path and filename.
+# Default: path
+#
+# timestamp-format (TimestampTemplate):
+# How to format timestamps (e.g. for history)
+# Default: %Y-%m-%d
+#
+# show (Bool):
+# Whether to show the autocompletion window.
+# Valid values: true, false
+# Default: true
+#
+# height (PercOrInt):
+# The height of the completion, in px or as percentage of the
+# window.
+# Default: 50%
+#
+# cmd-history-max-items (Int):
+# How many commands to save in the command history.
+# 0: no history / -1: unlimited
+# Default: 100
+#
+# web-history-max-items (Int):
+# How many URLs to show in the web history.
+# 0: no history / -1: unlimited
+# Default: 1000
+#
+# quick-complete (Bool):
+# Whether to move on to the next part when there's only one possible
+# completion left.
+# Valid values: true, false
+# Default: true
+#
+# shrink (Bool):
+# Whether to shrink the completion to be smaller than the configured
+# size if there are no scrollbars.
+# Valid values: true, false
+# Default: false
+#
+# scrollbar-width (Int):
+# Width of the scrollbar in the completion window (in px).
+# Default: 12
+#
+# scrollbar-padding (Int):
+# Padding of scrollbar handle in completion window (in px).
+# Default: 2
+auto-open = true
+download-path-suggestion = path
+timestamp-format = %Y-%m-%d
+show = true
+height = 50%
+cmd-history-max-items = 100
+web-history-max-items = 1000
+quick-complete = true
+shrink = false
+scrollbar-width = 12
+scrollbar-padding = 2
+
+[input]
+# Options related to input modes.
+#
+# timeout (Int):
+# Timeout for ambiguous key bindings.
+# Default: 500
+#
+# partial-timeout (Int):
+# Timeout for partially typed key bindings.
+# Default: 1000
+#
+# insert-mode-on-plugins (Bool):
+# Whether to switch to insert mode when clicking flash and other
+# plugins.
+# Valid values: true, false
+# Default: false
+#
+# auto-leave-insert-mode (Bool):
+# Whether to leave insert mode if a non-editable element is clicked.
+# Valid values: true, false
+# Default: true
+#
+# auto-insert-mode (Bool):
+# Whether to automatically enter insert mode if an editable element
+# is focused after page load.
+# Valid values: true, false
+# Default: false
+#
+# forward-unbound-keys (String):
+# Whether to forward unbound keys to the webview in normal mode.
+# all: Forward all unbound keys.
+# auto: Forward unbound non-alphanumeric keys.
+# none: Don't forward any keys.
+# Default: auto
+#
+# spatial-navigation (Bool):
+# Enables or disables the Spatial Navigation feature.
+# Spatial navigation consists in the ability to navigate between
+# focusable elements in a Web page, such as hyperlinks and form
+# controls, by using Left, Right, Up and Down arrow keys. For
+# example, if a user presses the Right key, heuristics determine
+# whether there is an element he might be trying to reach towards
+# the right and which element he probably wants.
+# Valid values: true, false
+# Default: false
+#
+# links-included-in-focus-chain (Bool):
+# Whether hyperlinks should be included in the keyboard focus chain.
+# Valid values: true, false
+# Default: true
+#
+# rocker-gestures (Bool):
+# Whether to enable Opera-like mouse rocker gestures. This disables
+# the context menu.
+# Valid values: true, false
+# Default: false
+#
+# mouse-zoom-divider (Int):
+# How much to divide the mouse wheel movements to translate them
+# into zoom increments.
+# Default: 512
+timeout = 500
+partial-timeout = 1000
+insert-mode-on-plugins = false
+auto-leave-insert-mode = true
+auto-insert-mode = false
+forward-unbound-keys = auto
+spatial-navigation = false
+links-included-in-focus-chain = true
+rocker-gestures = false
+mouse-zoom-divider = 512
+
+[tabs]
+# Configuration of the tab bar.
+#
+# background-tabs (Bool):
+# Whether to open new tabs (middleclick/ctrl+click) in background.
+# Valid values: true, false
+# Default: false
+#
+# select-on-remove (SelectOnRemove):
+# Which tab to select when the focused tab is removed.
+# left: Select the tab on the left.
+# right: Select the tab on the right.
+# previous: Select the previously selected tab.
+# Default: right
+#
+# new-tab-position (NewTabPosition):
+# How new tabs are positioned.
+# left: On the left of the current tab.
+# right: On the right of the current tab.
+# first: At the left end.
+# last: At the right end.
+# Default: right
+#
+# new-tab-position-explicit (NewTabPosition):
+# How new tabs opened explicitly are positioned.
+# left: On the left of the current tab.
+# right: On the right of the current tab.
+# first: At the left end.
+# last: At the right end.
+# Default: last
+#
+# last-close (String):
+# Behavior when the last tab is closed.
+# ignore: Don't do anything.
+# blank: Load a blank page.
+# startpage: Load the start page.
+# default-page: Load the default page.
+# close: Close the window.
+# Default: ignore
+#
+# show (String):
+# When to show the tab bar
+# always: Always show the tab bar.
+# never: Always hide the tab bar.
+# multiple: Hide the tab bar if only one tab is open.
+# switching: Show the tab bar when switching tabs.
+# Default: always
+#
+# show-switching-delay (Int):
+# Time to show the tab bar before hiding it when tabs->show is set
+# to 'switching'.
+# Default: 800
+#
+# wrap (Bool):
+# Whether to wrap when changing tabs.
+# Valid values: true, false
+# Default: true
+#
+# movable (Bool):
+# Whether tabs should be movable.
+# Valid values: true, false
+# Default: true
+#
+# close-mouse-button (String):
+# On which mouse button to close tabs.
+# right: Close tabs on right-click.
+# middle: Close tabs on middle-click.
+# none: Don't close tabs using the mouse.
+# Default: middle
+#
+# position (Position):
+# The position of the tab bar.
+# Valid values: top, bottom, left, right
+# Default: top
+#
+# show-favicons (Bool):
+# Whether to show favicons in the tab bar.
+# Valid values: true, false
+# Default: true
+#
+# width (PercOrInt):
+# The width of the tab bar if it's vertical, in px or as percentage
+# of the window.
+# Default: 20%
+#
+# indicator-width (Int):
+# Width of the progress indicator (0 to disable).
+# Default: 3
+#
+# tabs-are-windows (Bool):
+# Whether to open windows instead of tabs.
+# Valid values: true, false
+# Default: false
+#
+# title-format (FormatString):
+# The format to use for the tab title. The following placeholders
+# are defined:
+# * `{perc}`: The percentage as a string like `[10%]`.
+# * `{perc_raw}`: The raw percentage, e.g. `10`
+# * `{title}`: The title of the current web page
+# * `{title_sep}`: The string ` - ` if a title is set, empty
+# otherwise.
+# * `{index}`: The index of this tab.
+# * `{id}`: The internal tab ID of this tab.
+# * `{scroll_pos}`: The page scroll position.
+# Default: {index}: {title}
+#
+# title-alignment (TextAlignment):
+# Alignment of the text inside of tabs
+# Valid values: left, right, center
+# Default: left
+#
+# mousewheel-tab-switching (Bool):
+# Switch between tabs using the mouse wheel.
+# Valid values: true, false
+# Default: true
+#
+# padding (Padding):
+# Padding for tabs (top, bottom, left, right).
+# Default: 0,0,5,5
+#
+# indicator-padding (Padding):
+# Padding for indicators (top, bottom, left, right).
+# Default: 2,2,0,4
+background-tabs = false
+select-on-remove = right
+new-tab-position = right
+new-tab-position-explicit = last
+last-close = ignore
+show = multiple
+show-switching-delay = 800
+wrap = true
+movable = true
+close-mouse-button = middle
+position = top
+show-favicons = false
+width = 20%
+indicator-width = 3
+tabs-are-windows = true
+title-format = {index}: {title}
+title-alignment = left
+mousewheel-tab-switching = true
+padding = 0,0,5,5
+indicator-padding = 2,2,0,4
+
+[storage]
+# Settings related to cache and storage.
+#
+# download-directory (Directory):
+# The directory to save downloads to. An empty value selects a
+# sensible os-specific default. Will expand environment variables.
+# Default:
+#
+# prompt-download-directory (Bool):
+# Whether to prompt the user for the download location.
+# If set to false, 'download-directory' will be used.
+# Valid values: true, false
+# Default: true
+#
+# remember-download-directory (Bool):
+# Whether to remember the last used download directory.
+# Valid values: true, false
+# Default: true
+#
+# maximum-pages-in-cache (Int):
+# The maximum number of pages to hold in the global memory page
+# cache.
+# The Page Cache allows for a nicer user experience when navigating
+# forth or back to pages in the forward/back history, by pausing and
+# resuming up to _n_ pages.
+# For more information about the feature, please refer to:
+# http://webkit.org/blog/427/webkit-page-cache-i-the-basics/
+# Default:
+#
+# object-cache-capacities (WebKitBytesList):
+# The capacities for the global memory cache for dead objects such
+# as stylesheets or scripts. Syntax: cacheMinDeadCapacity,
+# cacheMaxDead, totalCapacity.
+# The _cacheMinDeadCapacity_ specifies the minimum number of bytes
+# that dead objects should consume when the cache is under pressure.
+# _cacheMaxDead_ is the maximum number of bytes that dead objects
+# should consume when the cache is *not* under pressure.
+# _totalCapacity_ specifies the maximum number of bytes that the
+# cache should consume *overall*.
+# Default:
+#
+# offline-storage-default-quota (WebKitBytes):
+# Default quota for new offline storage databases.
+# Default:
+#
+# offline-web-application-cache-quota (WebKitBytes):
+# Quota for the offline web application cache.
+# Default:
+#
+# offline-storage-database (Bool):
+# Whether support for the HTML 5 offline storage feature is enabled.
+# Valid values: true, false
+# Default: true
+#
+# offline-web-application-storage (Bool):
+# Whether support for the HTML 5 web application cache feature is
+# enabled.
+# An application cache acts like an HTTP cache in some sense. For
+# documents that use the application cache via JavaScript, the
+# loader engine will first ask the application cache for the
+# contents, before hitting the network.
+# The feature is described in details at:
+# http://dev.w3.org/html5/spec/Overview.html#appcache
+# Valid values: true, false
+# Default: true
+#
+# local-storage (Bool):
+# Whether support for the HTML 5 local storage feature is enabled.
+# Valid values: true, false
+# Default: true
+#
+# cache-size (Int):
+# Size of the HTTP network cache.
+# Default: 52428800
+download-directory =
+prompt-download-directory = true
+remember-download-directory = true
+maximum-pages-in-cache =
+object-cache-capacities =
+offline-storage-default-quota =
+offline-web-application-cache-quota =
+offline-storage-database = true
+offline-web-application-storage = true
+local-storage = true
+cache-size = 52428800
+
+[content]
+# Loaded plugins/scripts and allowed actions.
+#
+# allow-images (Bool):
+# Whether images are automatically loaded in web pages.
+# Valid values: true, false
+# Default: true
+#
+# allow-javascript (Bool):
+# Enables or disables the running of JavaScript programs.
+# Valid values: true, false
+# Default: true
+#
+# allow-plugins (Bool):
+# Enables or disables plugins in Web pages.
+# Qt plugins with a mimetype such as "application/x-qt-plugin" are
+# not affected by this setting.
+# Valid values: true, false
+# Default: false
+#
+# webgl (Bool):
+# Enables or disables WebGL.
+# Valid values: true, false
+# Default: true
+#
+# css-regions (Bool):
+# Enable or disable support for CSS regions.
+# Valid values: true, false
+# Default: true
+#
+# hyperlink-auditing (Bool):
+# Enable or disable hyperlink auditing (<a ping>).
+# Valid values: true, false
+# Default: false
+#
+# geolocation (BoolAsk):
+# Allow websites to request geolocations.
+# Valid values: true, false, ask
+# Default: ask
+#
+# notifications (BoolAsk):
+# Allow websites to show notifications.
+# Valid values: true, false, ask
+# Default: ask
+#
+# javascript-can-open-windows (Bool):
+# Whether JavaScript programs can open new windows.
+# Valid values: true, false
+# Default: false
+#
+# javascript-can-close-windows (Bool):
+# Whether JavaScript programs can close windows.
+# Valid values: true, false
+# Default: false
+#
+# javascript-can-access-clipboard (Bool):
+# Whether JavaScript programs can read or write to the clipboard.
+# Valid values: true, false
+# Default: false
+#
+# ignore-javascript-prompt (Bool):
+# Whether all javascript prompts should be ignored.
+# Valid values: true, false
+# Default: false
+#
+# ignore-javascript-alert (Bool):
+# Whether all javascript alerts should be ignored.
+# Valid values: true, false
+# Default: false
+#
+# local-content-can-access-remote-urls (Bool):
+# Whether locally loaded documents are allowed to access remote
+# urls.
+# Valid values: true, false
+# Default: false
+#
+# local-content-can-access-file-urls (Bool):
+# Whether locally loaded documents are allowed to access other local
+# urls.
+# Valid values: true, false
+# Default: true
+#
+# cookies-accept (String):
+# Control which cookies to accept.
+# all: Accept all cookies.
+# no-3rdparty: Accept cookies from the same origin only.
+# no-unknown-3rdparty: Accept cookies from the same origin only,
+# unless a cookie is already set for the domain.
+# never: Don't accept cookies at all.
+# Default: no-3rdparty
+#
+# cookies-store (Bool):
+# Whether to store cookies.
+# Valid values: true, false
+# Default: true
+#
+# host-block-lists (UrlList):
+# List of URLs of lists which contain hosts to block.
+# The file can be in one of the following formats:
+# - An '/etc/hosts'-like file
+# - One host per line
+# - A zip-file of any of the above, with either only one file, or a
+# file named 'hosts' (with any extension).
+# Default:
+# http://www.malwaredomainlist.com/hostslist/hosts.txt,http://someonewhocares.org/hosts/hosts,http://winhelp2002.mvps.org/hosts.zip,http://malwaredomains.lehigh.edu/files/justdomains.zip,http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&mimetype=plaintext
+#
+# host-blocking-enabled (Bool):
+# Whether host blocking is enabled.
+# Valid values: true, false
+# Default: true
+#
+# host-blocking-whitelist (List):
+# List of domains that should always be loaded, despite being
+# ad-blocked.
+# Domains may contain * and ? wildcards and are otherwise required
+# to exactly match the requested domain.
+# Local domains are always exempt from hostblocking.
+# Default: piwik.org
+#
+# enable-pdfjs (Bool):
+# Enable pdf.js to view PDF files in the browser.
+# Note that the files can still be downloaded by clicking the
+# download button in the pdf.js viewer.
+# Valid values: true, false
+# Default: false
+allow-images = true
+allow-javascript = true
+allow-plugins = false
+webgl = true
+css-regions = true
+hyperlink-auditing = false
+geolocation = ask
+notifications = ask
+javascript-can-open-windows = false
+javascript-can-close-windows = false
+javascript-can-access-clipboard = false
+ignore-javascript-prompt = false
+ignore-javascript-alert = false
+local-content-can-access-remote-urls = false
+local-content-can-access-file-urls = true
+cookies-accept = no-3rdparty
+cookies-store = true
+host-block-lists = http://www.malwaredomainlist.com/hostslist/hosts.txt,http://someonewhocares.org/hosts/hosts,http://winhelp2002.mvps.org/hosts.zip,http://malwaredomains.lehigh.edu/files/justdomains.zip,http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&mimetype=plaintext
+host-blocking-enabled = true
+host-blocking-whitelist = piwik.org
+enable-pdfjs = false
+
+[hints]
+# Hinting settings.
+#
+# border (String):
+# CSS border value for hints.
+# Default: 1px solid #E3BE23
+#
+# opacity (Float):
+# Opacity for hints.
+# Default: 0.7
+#
+# mode (String):
+# Mode to use for hints.
+# number: Use numeric hints.
+# letter: Use the chars in the hints -> chars setting.
+# Default: letter
+#
+# chars (String):
+# Chars used for hint strings.
+# Default: asdfghjkl
+#
+# min-chars (Int):
+# Minimum number of chars used for hint strings.
+# Default: 1
+#
+# scatter (Bool):
+# Whether to scatter hint key chains (like Vimium) or not (like
+# dwb).
+# Valid values: true, false
+# Default: true
+#
+# uppercase (Bool):
+# Make chars in hint strings uppercase.
+# Valid values: true, false
+# Default: false
+#
+# auto-follow (Bool):
+# Whether to auto-follow a hint if there's only one left.
+# Valid values: true, false
+# Default: true
+#
+# next-regexes (RegexList):
+# A comma-separated list of regexes to use for 'next' links.
+# Default:
+# \bnext\b,\bmore\b,\bnewer\b,\b[>→≫]\b,\b(>>|»)\b,\bcontinue\b
+#
+# prev-regexes (RegexList):
+# A comma-separated list of regexes to use for 'prev' links.
+# Default: \bprev(ious)?\b,\bback\b,\bolder\b,\b[<←≪]\b,\b(<<|«)\b
+border = 1px solid #E3BE23
+opacity = 1
+mode = letter
+chars = aoeuidhtns
+min-chars = 1
+scatter = true
+uppercase = true
+auto-follow = true
+next-regexes = \bnext\b,\bmore\b,\bnewer\b,\b[>→≫]\b,\b(>>|»)\b,\bcontinue\b
+prev-regexes = \bprev(ious)?\b,\bback\b,\bolder\b,\b[<←≪]\b,\b(<<|«)\b
+
+[searchengines]
+# Definitions of search engines which can be used via the address bar.
+# The searchengine named `DEFAULT` is used when `general -> auto-search`
+# is true and something else than a URL was entered to be opened. Other
+# search engines can be used by prepending the search engine name to the
+# search term, e.g. `:open google qutebrowser`. The string `{}` will be
+# replaced by the search term, use `{{` and `}}` for literal `{`/`}`
+# signs.
+DEFAULT = https://duckduckgo.com/?q={}
+
+[aliases]
+# Aliases for commands.
+# By default, no aliases are defined. Example which adds a new command
+# `:qtb` to open qutebrowsers website:
+# `qtb = open http://www.qutebrowser.org/`
+
+[colors]
+# Colors used in the UI.
+# A value can be in one of the following format:
+# * `#RGB`/`#RRGGBB`/`#RRRGGGBBB`/`#RRRRGGGGBBBB`
+# * A SVG color name as specified in http://www.w3.org/TR/SVG/types.html#ColorKeywords[the W3C specification].
+# * transparent (no color)
+# * `rgb(r, g, b)` / `rgba(r, g, b, a)` (values 0-255 or percentages)
+# * `hsv(h, s, v)` / `hsva(h, s, v, a)` (values 0-255, hue 0-359)
+# * A gradient as explained in http://doc.qt.io/qt-5/stylesheet-reference.html#list-of-property-types[the Qt documentation] under ``Gradient''.
+# A *.system value determines the color system to use for color
+# interpolation between similarly-named *.start and *.stop entries,
+# regardless of how they are defined in the options. Valid values are
+# 'rgb', 'hsv', and 'hsl'.
+# The `hints.*` values are a special case as they're real CSS colors, not Qt-CSS colors. There, for a gradient, you need to use `-webkit-gradient`, see https://www.webkit.org/blog/175/introducing-css-gradients/[the WebKit documentation].
+#
+# completion.fg (QtColor):
+# Text color of the completion widget.
+# Default: white
+#
+# completion.bg (QssColor):
+# Background color of the completion widget.
+# Default: #333333
+#
+# completion.alternate-bg (QssColor):
+# Alternating background color of the completion widget.
+# Default: #444444
+#
+# completion.category.fg (QtColor):
+# Foreground color of completion widget category headers.
+# Default: white
+#
+# completion.category.bg (QssColor):
+# Background color of the completion widget category headers.
+# Default: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #888888,
+# stop:1 #505050)
+#
+# completion.category.border.top (QssColor):
+# Top border color of the completion widget category headers.
+# Default: black
+#
+# completion.category.border.bottom (QssColor):
+# Bottom border color of the completion widget category headers.
+# Default: ${completion.category.border.top}
+#
+# completion.item.selected.fg (QtColor):
+# Foreground color of the selected completion item.
+# Default: black
+#
+# completion.item.selected.bg (QssColor):
+# Background color of the selected completion item.
+# Default: #e8c000
+#
+# completion.item.selected.border.top (QssColor):
+# Top border color of the completion widget category headers.
+# Default: #bbbb00
+#
+# completion.item.selected.border.bottom (QssColor):
+# Bottom border color of the selected completion item.
+# Default: ${completion.item.selected.border.top}
+#
+# completion.match.fg (QssColor):
+# Foreground color of the matched text in the completion.
+# Default: #ff4444
+#
+# completion.scrollbar.fg (QssColor):
+# Color of the scrollbar handle in completion view.
+# Default: ${completion.fg}
+#
+# completion.scrollbar.bg (QssColor):
+# Color of the scrollbar in completion view
+# Default: ${completion.bg}
+#
+# statusbar.fg (QssColor):
+# Foreground color of the statusbar.
+# Default: white
+#
+# statusbar.bg (QssColor):
+# Background color of the statusbar.
+# Default: black
+#
+# statusbar.fg.error (QssColor):
+# Foreground color of the statusbar if there was an error.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.error (QssColor):
+# Background color of the statusbar if there was an error.
+# Default: red
+#
+# statusbar.fg.warning (QssColor):
+# Foreground color of the statusbar if there is a warning.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.warning (QssColor):
+# Background color of the statusbar if there is a warning.
+# Default: darkorange
+#
+# statusbar.fg.prompt (QssColor):
+# Foreground color of the statusbar if there is a prompt.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.prompt (QssColor):
+# Background color of the statusbar if there is a prompt.
+# Default: darkblue
+#
+# statusbar.fg.insert (QssColor):
+# Foreground color of the statusbar in insert mode.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.insert (QssColor):
+# Background color of the statusbar in insert mode.
+# Default: darkgreen
+#
+# statusbar.fg.command (QssColor):
+# Foreground color of the statusbar in command mode.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.command (QssColor):
+# Background color of the statusbar in command mode.
+# Default: ${statusbar.bg}
+#
+# statusbar.fg.caret (QssColor):
+# Foreground color of the statusbar in caret mode.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.caret (QssColor):
+# Background color of the statusbar in caret mode.
+# Default: purple
+#
+# statusbar.fg.caret-selection (QssColor):
+# Foreground color of the statusbar in caret mode with a selection
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.caret-selection (QssColor):
+# Background color of the statusbar in caret mode with a selection
+# Default: #a12dff
+#
+# statusbar.progress.bg (QssColor):
+# Background color of the progress bar.
+# Default: white
+#
+# statusbar.url.fg (QssColor):
+# Default foreground color of the URL in the statusbar.
+# Default: ${statusbar.fg}
+#
+# statusbar.url.fg.success (QssColor):
+# Foreground color of the URL in the statusbar on successful load
+# (http).
+# Default: white
+#
+# statusbar.url.fg.success.https (QssColor):
+# Foreground color of the URL in the statusbar on successful load
+# (https).
+# Default: lime
+#
+# statusbar.url.fg.error (QssColor):
+# Foreground color of the URL in the statusbar on error.
+# Default: orange
+#
+# statusbar.url.fg.warn (QssColor):
+# Foreground color of the URL in the statusbar when there's a
+# warning.
+# Default: yellow
+#
+# statusbar.url.fg.hover (QssColor):
+# Foreground color of the URL in the statusbar for hovered links.
+# Default: aqua
+#
+# tabs.fg.odd (QtColor):
+# Foreground color of unselected odd tabs.
+# Default: white
+#
+# tabs.bg.odd (QtColor):
+# Background color of unselected odd tabs.
+# Default: grey
+#
+# tabs.fg.even (QtColor):
+# Foreground color of unselected even tabs.
+# Default: white
+#
+# tabs.bg.even (QtColor):
+# Background color of unselected even tabs.
+# Default: darkgrey
+#
+# tabs.fg.selected.odd (QtColor):
+# Foreground color of selected odd tabs.
+# Default: white
+#
+# tabs.bg.selected.odd (QtColor):
+# Background color of selected odd tabs.
+# Default: black
+#
+# tabs.fg.selected.even (QtColor):
+# Foreground color of selected even tabs.
+# Default: ${tabs.fg.selected.odd}
+#
+# tabs.bg.selected.even (QtColor):
+# Background color of selected even tabs.
+# Default: ${tabs.bg.selected.odd}
+#
+# tabs.bg.bar (QtColor):
+# Background color of the tab bar.
+# Default: #555555
+#
+# tabs.indicator.start (QtColor):
+# Color gradient start for the tab indicator.
+# Default: #0000aa
+#
+# tabs.indicator.stop (QtColor):
+# Color gradient end for the tab indicator.
+# Default: #00aa00
+#
+# tabs.indicator.error (QtColor):
+# Color for the tab indicator on errors..
+# Default: #ff0000
+#
+# tabs.indicator.system (ColorSystem):
+# Color gradient interpolation system for the tab indicator.
+# rgb: Interpolate in the RGB color system.
+# hsv: Interpolate in the HSV color system.
+# hsl: Interpolate in the HSL color system.
+# none: Don't show a gradient.
+# Default: rgb
+#
+# hints.fg (CssColor):
+# Font color for hints.
+# Default: black
+#
+# hints.bg (CssColor):
+# Background color for hints.
+# Default: -webkit-gradient(linear, left top, left bottom,
+# color-stop(0%,#FFF785), color-stop(100%,#FFC542))
+#
+# hints.fg.match (CssColor):
+# Font color for the matched part of hints.
+# Default: green
+#
+# downloads.bg.bar (QssColor):
+# Background color for the download bar.
+# Default: black
+#
+# downloads.fg.start (QtColor):
+# Color gradient start for download text.
+# Default: white
+#
+# downloads.bg.start (QtColor):
+# Color gradient start for download backgrounds.
+# Default: #0000aa
+#
+# downloads.fg.stop (QtColor):
+# Color gradient end for download text.
+# Default: ${downloads.fg.start}
+#
+# downloads.bg.stop (QtColor):
+# Color gradient stop for download backgrounds.
+# Default: #00aa00
+#
+# downloads.fg.system (ColorSystem):
+# Color gradient interpolation system for download text.
+# rgb: Interpolate in the RGB color system.
+# hsv: Interpolate in the HSV color system.
+# hsl: Interpolate in the HSL color system.
+# none: Don't show a gradient.
+# Default: rgb
+#
+# downloads.bg.system (ColorSystem):
+# Color gradient interpolation system for download backgrounds.
+# rgb: Interpolate in the RGB color system.
+# hsv: Interpolate in the HSV color system.
+# hsl: Interpolate in the HSL color system.
+# none: Don't show a gradient.
+# Default: rgb
+#
+# downloads.fg.error (QtColor):
+# Foreground color for downloads with errors.
+# Default: white
+#
+# downloads.bg.error (QtColor):
+# Background color for downloads with errors.
+# Default: red
+#
+# webpage.bg (QtColor):
+# Background color for webpages if unset (or empty to use the
+# theme's color)
+# Default: white
+completion.fg = white
+completion.bg = #333333
+completion.alternate-bg = #444444
+completion.category.fg = white
+completion.category.bg = qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #888888, stop:1 #505050)
+completion.category.border.top = black
+completion.category.border.bottom = ${completion.category.border.top}
+completion.item.selected.fg = black
+completion.item.selected.bg = #e8c000
+completion.item.selected.border.top = #bbbb00
+completion.item.selected.border.bottom = ${completion.item.selected.border.top}
+completion.match.fg = #ff4444
+completion.scrollbar.fg = ${completion.fg}
+completion.scrollbar.bg = ${completion.bg}
+statusbar.fg = white
+statusbar.bg = black
+statusbar.fg.error = ${statusbar.fg}
+statusbar.bg.error = red
+statusbar.fg.warning = ${statusbar.fg}
+statusbar.bg.warning = darkorange
+statusbar.fg.prompt = ${statusbar.fg}
+statusbar.bg.prompt = darkblue
+statusbar.fg.insert = ${statusbar.fg}
+statusbar.bg.insert = darkgreen
+statusbar.fg.command = ${statusbar.fg}
+statusbar.bg.command = ${statusbar.bg}
+statusbar.fg.caret = ${statusbar.fg}
+statusbar.bg.caret = purple
+statusbar.fg.caret-selection = ${statusbar.fg}
+statusbar.bg.caret-selection = #a12dff
+statusbar.progress.bg = white
+statusbar.url.fg = ${statusbar.fg}
+statusbar.url.fg.success = white
+statusbar.url.fg.success.https = lime
+statusbar.url.fg.error = orange
+statusbar.url.fg.warn = yellow
+statusbar.url.fg.hover = aqua
+tabs.fg.odd = white
+tabs.bg.odd = grey
+tabs.fg.even = white
+tabs.bg.even = darkgrey
+tabs.fg.selected.odd = white
+tabs.bg.selected.odd = black
+tabs.fg.selected.even = ${tabs.fg.selected.odd}
+tabs.bg.selected.even = ${tabs.bg.selected.odd}
+tabs.bg.bar = #555555
+tabs.indicator.start = #0000aa
+tabs.indicator.stop = #00aa00
+tabs.indicator.error = #ff0000
+tabs.indicator.system = rgb
+hints.fg = black
+hints.bg = -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FFF785), color-stop(100%,#FFC542))
+hints.fg.match = green
+downloads.bg.bar = black
+downloads.fg.start = white
+downloads.bg.start = #0000aa
+downloads.fg.stop = ${downloads.fg.start}
+downloads.bg.stop = #00aa00
+downloads.fg.system = rgb
+downloads.bg.system = rgb
+downloads.fg.error = white
+downloads.bg.error = red
+webpage.bg = white
+
+[fonts]
+# Fonts used for the UI, with optional style/weight/size.
+# * Style: `normal`/`italic`/`oblique`
+# * Weight: `normal`, `bold`, `100`..`900`
+# * Size: _number_ `px`/`pt`
+#
+# _monospace (Font):
+# Default monospace fonts.
+# Default: Terminus, Monospace, "DejaVu Sans Mono", Monaco,
+# "Bitstream Vera Sans Mono", "Andale Mono", "Liberation Mono",
+# "Courier New", Courier, monospace, Fixed, Consolas, Terminal
+#
+# completion (Font):
+# Font used in the completion widget.
+# Default: 8pt ${_monospace}
+#
+# tabbar (QtFont):
+# Font used in the tab bar.
+# Default: 8pt ${_monospace}
+#
+# statusbar (Font):
+# Font used in the statusbar.
+# Default: 8pt ${_monospace}
+#
+# downloads (Font):
+# Font used for the downloadbar.
+# Default: 8pt ${_monospace}
+#
+# hints (Font):
+# Font used for the hints.
+# Default: bold 13px Monospace
+#
+# debug-console (QtFont):
+# Font used for the debugging console.
+# Default: 8pt ${_monospace}
+#
+# web-family-standard (FontFamily):
+# Font family for standard fonts.
+# Default:
+#
+# web-family-fixed (FontFamily):
+# Font family for fixed fonts.
+# Default:
+#
+# web-family-serif (FontFamily):
+# Font family for serif fonts.
+# Default:
+#
+# web-family-sans-serif (FontFamily):
+# Font family for sans-serif fonts.
+# Default:
+#
+# web-family-cursive (FontFamily):
+# Font family for cursive fonts.
+# Default:
+#
+# web-family-fantasy (FontFamily):
+# Font family for fantasy fonts.
+# Default:
+#
+# web-size-minimum (Int):
+# The hard minimum font size.
+# Default:
+#
+# web-size-minimum-logical (Int):
+# The minimum logical font size that is applied when zooming out.
+# Default:
+#
+# web-size-default (Int):
+# The default font size for regular text.
+# Default:
+#
+# web-size-default-fixed (Int):
+# The default font size for fixed-pitch text.
+# Default:
+_monospace = Terminus, Monospace, "DejaVu Sans Mono", Monaco, "Bitstream Vera Sans Mono", "Andale Mono", "Liberation Mono", "Courier New", Courier, monospace, Fixed, Consolas, Terminal
+completion = 8pt ${_monospace}
+tabbar = 8pt ${_monospace}
+statusbar = 8pt ${_monospace}
+downloads = 8pt ${_monospace}
+hints = bold 13px Monospace
+debug-console = 8pt ${_monospace}
+web-family-standard =
+web-family-fixed =
+web-family-serif =
+web-family-sans-serif =
+web-family-cursive =
+web-family-fantasy =
+web-size-minimum =
+web-size-minimum-logical =
+web-size-default =
+web-size-default-fixed =
diff --git a/qutebrowser/userscripts/bookmarks-dmenu b/qutebrowser/userscripts/bookmarks-dmenu
new file mode 100755
index 0000000..0f89413
--- /dev/null
+++ b/qutebrowser/userscripts/bookmarks-dmenu
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+url=$(cat ~/.config/qutebrowser/bookmarks/urls | dmenu -i -l 15 | awk '{print $1}')
+
+[ -z ${url} ] && exit
+
+echo "open $url" >> "$QUTE_FIFO"
diff --git a/qutebrowser/userscripts/quickmarks-dmenu b/qutebrowser/userscripts/quickmarks-dmenu
new file mode 100755
index 0000000..354b398
--- /dev/null
+++ b/qutebrowser/userscripts/quickmarks-dmenu
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+url=$(cat ~/.config/qutebrowser/quickmarks | dmenu -i -l 15 | awk '{print $NF}')
+
+[ -z ${url} ] && exit
+
+echo "open $url" >> "$QUTE_FIFO"
diff --git a/qutebrowser/userscripts/url-from-surfraw b/qutebrowser/userscripts/url-from-surfraw
new file mode 100755
index 0000000..9bd6795
--- /dev/null
+++ b/qutebrowser/userscripts/url-from-surfraw
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+
+DEFAULT_SEARCH=startpage
+
+if [[ $1 =~ ^-.$ ]]; then
+ option="$1"
+ shift 1
+fi
+
+is_elvi=$(surfraw -elvi | grep -c "^$1\s")
+nbr_words=$(echo $1 | wc -w)
+
+if [[ $is_elvi -eq 0 && $nbr_words -eq 1 && ($1 == *.* || $1 == *:*) ]]; then
+ url="$1"
+else
+ [[ $is_elvi -eq 0 ]] && sr="$DEFAULT_SEARCH $*" || sr=$*
+ url=$(surfraw -print $sr)
+fi
+
+echo "open $option $url" >> $QUTE_FIFO