X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/ca46e0efb3412594540acf2d02f7cc3030965c98..refs/heads/uh-backup:/qutebrowser/config.py diff --git a/qutebrowser/config.py b/qutebrowser/config.py index 1fb0932..7d5b0ca 100644 --- a/qutebrowser/config.py +++ b/qutebrowser/config.py @@ -17,7 +17,8 @@ c.aliases = {'w': 'session-save', 'mpv': 'spawn --userscript ~/src/qutebrowser/misc/userscripts/view_in_mpv' } -## How often (in milliseconds) to auto-save config/cookies/etc. +## Time interval (in milliseconds) between auto-saves of +## config/cookies/etc. ## Type: Int # c.auto_save.interval = 15000 @@ -25,18 +26,18 @@ c.aliases = {'w': 'session-save', ## Type: Bool c.auto_save.session = True -## The backend to use to display websites. qutebrowser supports two -## different web rendering engines / backends, QtWebKit and QtWebEngine. -## QtWebKit was discontinued by the Qt project with Qt 5.6, but picked up -## as a well maintained fork: https://github.com/annulen/webkit/wiki - +## Backend to use to display websites. qutebrowser supports two different +## web rendering engines / backends, QtWebKit and QtWebEngine. QtWebKit +## was discontinued by the Qt project with Qt 5.6, but picked up as a +## well maintained fork: https://github.com/annulen/webkit/wiki - ## qutebrowser only supports the fork. QtWebEngine is Qt's official -## successor to QtWebKit. It's slightly more resource hungry that +## successor to QtWebKit. It's slightly more resource hungry than ## QtWebKit and has a couple of missing features in qutebrowser, but is -## generally the preferred choice. This setting requires a restart. +## generally the preferred choice. ## Type: String ## Valid values: -## - webengine: Use QtWebEngine (based on Chromium) -## - webkit: Use QtWebKit (based on WebKit, similar to Safari) +## - webengine: Use QtWebEngine (based on Chromium). +## - webkit: Use QtWebKit (based on WebKit, similar to Safari). # c.backend = 'webengine' ## This setting can be used to map keys to other keys. When the key used @@ -46,7 +47,7 @@ c.auto_save.session = True ## when a key is bound (via `bindings.default` or `bindings.commands`), ## the mapping is ignored. ## Type: Dict -# c.bindings.key_mappings = {'': '', '': '', '': '', '': '', '': '', '': '', '': '', '': ''} +# c.bindings.key_mappings = {'': '', '': '', '': '', '': '', '': '', '': '', '': '', '': ''} ## Background color of the completion widget category headers. ## Type: QssColor @@ -68,9 +69,10 @@ c.auto_save.session = True ## Type: QssColor # c.colors.completion.even.bg = '#333333' -## Text color of the completion widget. -## Type: QtColor -# c.colors.completion.fg = 'white' +## Text color of the completion widget. May be a single color to use for +## all columns or a list of three colors, one for each column. +## Type: List of QtColor, or QtColor +# c.colors.completion.fg = ['white', 'white', 'white'] ## Background color of the selected completion item. ## Type: QssColor @@ -96,11 +98,11 @@ c.auto_save.session = True ## Type: QssColor # c.colors.completion.odd.bg = '#444444' -## Color of the scrollbar in completion view +## Color of the scrollbar in the completion view. ## Type: QssColor # c.colors.completion.scrollbar.bg = '#333333' -## Color of the scrollbar handle in completion view. +## Color of the scrollbar handle in the completion view. ## Type: QssColor # c.colors.completion.scrollbar.fg = 'white' @@ -195,7 +197,7 @@ c.auto_save.session = True ## Type: QssColor # c.colors.messages.info.border = '#333333' -## Foreground color an info message. +## Foreground color of an info message. ## Type: QssColor # c.colors.messages.info.fg = 'white' @@ -203,11 +205,11 @@ c.auto_save.session = True ## Type: QssColor # c.colors.messages.warning.bg = 'darkorange' -## Border color of an error message. +## Border color of a warning message. ## Type: QssColor # c.colors.messages.warning.border = '#d47300' -## Foreground color a warning message. +## Foreground color of a warning message. ## Type: QssColor # c.colors.messages.warning.fg = 'white' @@ -275,6 +277,14 @@ c.colors.prompts.bg = '#333333' ## Type: QssColor # c.colors.statusbar.normal.fg = 'white' +## Background color of the statusbar in passthrough mode. +## Type: QssColor +# c.colors.statusbar.passthrough.bg = 'darkblue' + +## Foreground color of the statusbar in passthrough mode. +## Type: QssColor +# c.colors.statusbar.passthrough.fg = 'white' + ## Background color of the statusbar in private browsing mode. ## Type: QssColor # c.colors.statusbar.private.bg = '#666666' @@ -371,29 +381,38 @@ c.colors.prompts.bg = '#333333' # c.colors.tabs.selected.odd.fg = 'white' ## Background color for webpages if unset (or empty to use the theme's -## color) +## color). ## Type: QtColor # c.colors.webpage.bg = 'white' -## How many commands to save in the command history. 0: no history / -1: +## Number of commands to save in the command history. 0: no history / -1: ## unlimited ## Type: Int # c.completion.cmd_history_max_items = 100 -## The height of the completion, in px or as percentage of the window. +## Delay (in milliseconds) before updating completions after typing a +## character. +## Type: Int +# c.completion.delay = 0 + +## Height (in pixels or as percentage of the window) of the completion. ## Type: PercOrInt c.completion.height = 150 +## Minimum amount of characters needed to update completions. +## Type: Int +# c.completion.min_chars = 1 + ## Move on to the next part when there's only one possible completion ## left. ## Type: Bool c.completion.quick = False -## Padding of scrollbar handle in the completion window (in px). +## Padding (in pixels) of the scrollbar handle in the completion window. ## Type: Int # c.completion.scrollbar.padding = 2 -## Width of the scrollbar in the completion window (in px). +## Width (in pixels) of the scrollbar in the completion window. ## Type: Int # c.completion.scrollbar.width = 12 @@ -410,16 +429,20 @@ c.completion.quick = False ## Type: Bool c.completion.shrink = True -## How to format timestamps (e.g. for the history completion). +## Format of timestamps (e.g. for the history completion). ## Type: TimestampTemplate # c.completion.timestamp_format = '%Y-%m-%d' -## How many URLs to show in the web history. 0: no history / -1: +## Execute the best-matching command on a partial match. +## Type: Bool +# c.completion.use_best_match = False + +## Number of URLs to show in the web history. 0: no history / -1: ## unlimited ## Type: Int # c.completion.web_history_max_items = -1 -## Whether quitting the application requires a confirmation. +## Require a confirmation before quitting the application. ## Type: ConfirmQuit ## Valid values: ## - always: Always show a confirmation. @@ -428,28 +451,29 @@ c.completion.shrink = True ## - never: Never show a confirmation. c.confirm_quit = ['downloads'] -## 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. +## Enable support for the HTML 5 web application cache feature. 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. ## Type: Bool # c.content.cache.appcache = True -## 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/ +## 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/ ## Type: Int # c.content.cache.maximum_pages = 0 -## Size of the HTTP network cache. Null to use the default value. +## Size (in bytes) of the HTTP network cache. Null to use the default +## value. With QtWebEngine, the maximum supported value is 2147483647 (~2 +## GB). ## Type: Int # c.content.cache.size = None -## Control which cookies to accept. +## Which cookies to accept. ## Type: String ## Valid values: ## - all: Accept all cookies. @@ -496,7 +520,7 @@ c.confirm_quit = ['downloads'] ## Type: String c.content.headers.accept_language = 'en-US,en,de,fr' -## Set custom headers for qutebrowser HTTP requests. +## Custom headers for qutebrowser HTTP requests. ## Type: Dict # c.content.headers.custom = {} @@ -506,8 +530,8 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## Type: Bool # c.content.headers.do_not_track = True -## Send the Referer header. The Referer header tells websites from which -## website you were coming from when visting them. +## When to send the Referer header. The Referer header tells websites +## from which website you were coming from when visiting them. ## Type: String ## Valid values: ## - always: Always send the Referer. @@ -519,16 +543,16 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## Type: String # c.content.headers.user_agent = None -## Whether host blocking is enabled. +## Enable host blocking. ## Type: Bool # c.content.host_blocking.enabled = True ## 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). +## file, or a file named `hosts` (with any extension). ## Type: List of Url -# c.content.host_blocking.lists = ['https://www.malwaredomainlist.com/hostslist/hosts.txt', 'http://someonewhocares.org/hosts/hosts', 'http://winhelp2002.mvps.org/hosts.zip', 'http://malwaredomains.lehigh.edu/files/justdomains.zip', 'https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&mimetype=plaintext'] +# c.content.host_blocking.lists = ['https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts'] ## List of domains that should always be loaded, despite being ad- ## blocked. Domains may contain * and ? wildcards and are otherwise @@ -537,11 +561,11 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## Type: List of String # c.content.host_blocking.whitelist = ['piwik.org'] -## Enable or disable hyperlink auditing (``). +## Enable hyperlink auditing (``). ## Type: Bool # c.content.hyperlink_auditing = False -## Whether images are automatically loaded in web pages. +## Load images automatically in web pages. ## Type: Bool # c.content.images = True @@ -549,21 +573,21 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## Type: Bool # c.content.javascript.alert = True -## Whether JavaScript can read from or write to the clipboard. With +## Allow JavaScript to read from or write to the clipboard. With ## QtWebEngine, writing the clipboard as response to a user interaction ## is always allowed. ## Type: Bool # c.content.javascript.can_access_clipboard = False -## Whether JavaScript can close tabs. +## Allow JavaScript to close tabs. ## Type: Bool # c.content.javascript.can_close_tabs = False -## Whether JavaScript can open new tabs without user interaction. +## Allow JavaScript to open new tabs without user interaction. ## Type: Bool # c.content.javascript.can_open_tabs_automatically = False -## Enables or disables JavaScript. +## Enable JavaScript. ## Type: Bool # c.content.javascript.enabled = True @@ -572,9 +596,10 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## logged, the corresponding dictionary value selects the qutebrowser ## logger to use. On QtWebKit, the "unknown" setting is always used. ## Type: Dict -# c.content.javascript.log = {'info': 'debug', 'warning': 'debug', 'error': 'debug', 'unknown': 'debug'} +# c.content.javascript.log = {'unknown': 'debug', 'info': 'debug', 'warning': 'debug', 'error': 'debug'} -## Use the standard JavaScript modal dialog for `alert()` and `confirm()` +## Use the standard JavaScript modal dialog for `alert()` and +## `confirm()`. ## Type: Bool # c.content.javascript.modal_dialog = False @@ -582,16 +607,15 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## Type: Bool # c.content.javascript.prompt = True -## Whether locally loaded documents are allowed to access other local -## urls. +## Allow locally loaded documents to access other local URLs. ## Type: Bool # c.content.local_content_can_access_file_urls = True -## Whether locally loaded documents are allowed to access remote urls. +## Allow locally loaded documents to access remote URLs. ## Type: Bool # c.content.local_content_can_access_remote_urls = False -## Whether support for HTML 5 local storage and Web SQL is enabled. +## Enable support for HTML 5 local storage and Web SQL. ## Type: Bool # c.content.local_storage = True @@ -603,8 +627,7 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## - ask # c.content.media_capture = 'ask' -## Location of a netrc-file for HTTP authentication. If unset, `~/.netrc` -## is used. +## Netrc-file for HTTP authentication. If unset, `~/.netrc` is used. ## Type: File # c.content.netrc_file = None @@ -616,18 +639,17 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## - ask # c.content.notifications = 'ask' -## 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 +## Allow 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. ## Type: Bool # c.content.pdfjs = False -## Enables or disables plugins in Web pages. +## Enable plugins in Web pages. ## Type: Bool # c.content.plugins = False -## Whether the background color and images are also drawn when the page -## is printed. +## Draw the background color and images also when the page is printed. ## Type: Bool # c.content.print_element_backgrounds = True @@ -636,7 +658,7 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## Type: Bool # c.content.private_browsing = False -## The proxy to use. In addition to the listed values, you can use a +## Proxy to use. In addition to the listed values, you can use a ## `socks://...` or `http://...` URL. ## Type: Proxy ## Valid values: @@ -656,22 +678,26 @@ c.content.headers.accept_language = 'en-US,en,de,fr' ## - ask # c.content.ssl_strict = 'ask' -## A list of user stylesheet filenames to use. +## List of user stylesheet filenames to use. ## Type: List of File, or File -# c.content.user_stylesheets = None +# c.content.user_stylesheets = [] -## Enables or disables WebGL. +## Enable WebGL. ## Type: Bool # c.content.webgl = True -## 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. +## Limit fullscreen to the browser window (does not expand to fill the +## screen). +## Type: Bool +# c.content.windowed_fullscreen = False + +## Monitor load requests 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. ## Type: Bool # c.content.xss_auditing = False -## The directory to save downloads to. If unset, a sensible os-specific +## Directory to save downloads to. If unset, a sensible OS-specific ## default is used. ## Type: Directory c.downloads.location.directory = "~/downloads" @@ -693,9 +719,9 @@ c.downloads.location.directory = "~/downloads" ## - both: Show download path and filename. # c.downloads.location.suggestion = 'path' -## The default program used to open downloads. If null, the default -## internal handler is used. Any `{}` in the string will be expanded to -## the filename, else the filename will be appended. +## Default program used to open downloads. If null, the default internal +## handler is used. Any `{}` in the string will be expanded to the +## filename, else the filename will be appended. ## Type: String c.downloads.open_dispatcher = "rifle" @@ -706,15 +732,19 @@ c.downloads.open_dispatcher = "rifle" ## - bottom # c.downloads.position = 'top' -## Number of milliseconds to wait before removing finished downloads. If -## set to -1, downloads are never removed. +## Duration (in milliseconds) to wait before removing finished downloads. +## If set to -1, downloads are never removed. ## Type: Int # c.downloads.remove_finished = -1 -## The editor (and arguments) to use for the `open-editor` command. `{}` -## gets replaced by the filename of the file to be edited. +## Editor (and arguments) to use for the `open-editor` command. The +## following placeholders are defined: * `{file}`: Filename of the file +## to be edited. * `{line}`: Line in which the caret is found in the +## text. * `{column}`: Column in which the caret is found in the text. * +## `{line0}`: Same as `{line}`, but starting from index 0. * `{column0}`: +## Same as `{column}`, but starting from index 0. ## Type: ShellCommand -c.editor.command = ['urxvtc', '-e', 'vim', '{}'] +c.editor.command = ['urxvtc', '-e', 'vim', '{file}', '-c', 'normal {line}G{column0}l'] ## Encoding to use for the editor. ## Type: Encoding @@ -722,19 +752,19 @@ c.editor.command = ['urxvtc', '-e', 'vim', '{}'] ## Font used in the completion categories. ## Type: Font -# c.fonts.completion.category = 'bold 8pt monospace' +# c.fonts.completion.category = 'bold 10pt monospace' ## Font used in the completion widget. ## Type: Font -# c.fonts.completion.entry = '8pt monospace' +# c.fonts.completion.entry = '10pt monospace' ## Font used for the debugging console. ## Type: QtFont -# c.fonts.debug_console = '8pt monospace' +# c.fonts.debug_console = '10pt monospace' ## Font used for the downloadbar. ## Type: Font -# c.fonts.downloads = '8pt monospace' +# c.fonts.downloads = '10pt monospace' ## Font used for the hints. ## Type: Font @@ -742,19 +772,19 @@ c.editor.command = ['urxvtc', '-e', 'vim', '{}'] ## Font used in the keyhint widget. ## Type: Font -# c.fonts.keyhint = '8pt monospace' +# c.fonts.keyhint = '10pt monospace' ## Font used for error messages. ## Type: Font -# c.fonts.messages.error = '8pt monospace' +# c.fonts.messages.error = '10pt monospace' ## Font used for info messages. ## Type: Font -# c.fonts.messages.info = '8pt monospace' +# c.fonts.messages.info = '10pt monospace' ## Font used for warning messages. ## Type: Font -# c.fonts.messages.warning = '8pt monospace' +# c.fonts.messages.warning = '10pt monospace' ## Default monospace fonts. Whenever "monospace" is used in a font ## setting, it's replaced with the fonts listed here. @@ -763,15 +793,15 @@ c.fonts.monospace = 'Hack, "xos4 Terminus", Terminus, Monospace, "DejaVu Sans Mo ## Font used for prompts. ## Type: Font -# c.fonts.prompts = '8pt sans-serif' +# c.fonts.prompts = '10pt sans-serif' ## Font used in the statusbar. ## Type: Font -# c.fonts.statusbar = '8pt monospace' +# c.fonts.statusbar = '10pt monospace' ## Font used in the tab bar. ## Type: QtFont -# c.fonts.tabs = '8pt monospace' +# c.fonts.tabs = '10pt monospace' ## Font family for cursive fonts. ## Type: FontFamily @@ -797,30 +827,24 @@ c.fonts.monospace = 'Hack, "xos4 Terminus", Terminus, Monospace, "DejaVu Sans Mo ## Type: FontFamily # c.fonts.web.family.standard = '' -## The default font size for regular text. +## Default font size (in pixels) for regular text. ## Type: Int # c.fonts.web.size.default = 16 -## The default font size for fixed-pitch text. +## Default font size (in pixels) for fixed-pitch text. ## Type: Int # c.fonts.web.size.default_fixed = 13 -## The hard minimum font size. +## Hard minimum font size (in pixels). ## Type: Int # c.fonts.web.size.minimum = 0 -## The minimum logical font size that is applied when zooming out. +## Minimum logical font size (in pixels) that is applied when zooming +## out. ## Type: Int # c.fonts.web.size.minimum_logical = 6 -## Force software rendering for QtWebEngine. This is needed for -## QtWebEngine to work with Nouveau drivers. This setting requires a -## restart. -## Type: Bool -# c.force_software_rendering = False - -## Controls when a hint can be automatically followed without pressing -## Enter. +## When a hint can be automatically followed without pressing Enter. ## Type: String ## Valid values: ## - always: Auto-follow whenever there is only a single hint on a page. @@ -829,7 +853,7 @@ c.fonts.monospace = 'Hack, "xos4 Terminus", Terminus, Monospace, "DejaVu Sans Mo ## - never: The user will always need to press Enter to follow a hint. # c.hints.auto_follow = 'unique-match' -## A timeout (in milliseconds) to ignore normal-mode key bindings after a +## Duration (in milliseconds) to ignore normal-mode key bindings after a ## successful auto-follow. ## Type: Int # c.hints.auto_follow_timeout = 0 @@ -838,11 +862,11 @@ c.fonts.monospace = 'Hack, "xos4 Terminus", Terminus, Monospace, "DejaVu Sans Mo ## Type: String # c.hints.border = '1px solid #E3BE23' -## Chars used for hint strings. +## Characters used for hint strings. ## Type: UniqueCharString c.hints.chars = 'aoeuidhtns' -## The dictionary file to be used by the word hints. +## Dictionary file to be used by the word hints. ## Type: File # c.hints.dictionary = '/usr/share/dict/words' @@ -857,23 +881,23 @@ c.hints.chars = 'aoeuidhtns' ## Type: Bool # c.hints.hide_unmatched_rapid_hints = True -## Minimum number of chars used for hint strings. +## Minimum number of characters used for hint strings. ## Type: Int -# c.hints.min_chars = 2 +c.hints.min_chars = 2 ## Mode to use for hints. ## Type: String ## Valid values: ## - number: Use numeric hints. (In this mode you can also type letters from the hinted element to filter and reduce the number of elements that are hinted.) -## - letter: Use the chars in the `hints.chars` setting. +## - letter: Use the characters in the `hints.chars` setting. ## - word: Use hints words based on the html elements and the extra words. # c.hints.mode = 'letter' -## A comma-separated list of regexes to use for 'next' links. +## Comma-separated list of regular expressions to use for 'next' links. ## Type: List of Regex # c.hints.next_regexes = ['\\bnext\\b', '\\bmore\\b', '\\bnewer\\b', '\\b[>→≫]\\b', '\\b(>>|»)\\b', '\\bcontinue\\b'] -## A comma-separated list of regexes to use for 'prev' links. +## Comma-separated list of regular expressions to use for 'prev' links. ## Type: List of Regex # c.hints.prev_regexes = ['\\bprev(ious)?\\b', '\\bback\\b', '\\bolder\\b', '\\b[<←≪]\\b', '\\b(<<|«)\\b'] @@ -882,26 +906,18 @@ c.hints.chars = 'aoeuidhtns' ## Type: Bool c.hints.scatter = False -## Make chars in hint strings uppercase. +## Make characters in hint strings uppercase. ## Type: Bool # c.hints.uppercase = False -## The maximum time in minutes between two history items for them to be +## Maximum time (in minutes) between two history items for them to be ## considered being from the same browsing session. Items with less time ## between them are grouped when being displayed in `:history`. Use -1 to ## disable separation. ## Type: Int # c.history_gap_interval = 30 -## Find text on a page case-insensitively. -## Type: String -## Valid values: -## - always: Search case-insensitively -## - never: Search case-sensitively -## - smart: Search case-sensitively if there are capital chars -# c.ignore_case = 'smart' - -## Forward unbound keys to the webview in normal mode. +## Which unbound keys to forward to the webview in normal mode. ## Type: String ## Valid values: ## - all: Forward all unbound keys. @@ -909,6 +925,10 @@ c.hints.scatter = False ## - none: Don't forward any keys. # c.input.forward_unbound_keys = 'auto' +## Enter insert mode if an editable element is clicked. +## Type: Bool +# c.input.insert_mode.auto_enter = True + ## Leave insert mode if a non-editable element is clicked. ## Type: Bool # c.input.insert_mode.auto_leave = True @@ -937,10 +957,10 @@ c.hints.scatter = False ## Type: Bool # c.input.rocker_gestures = False -## Enable Spatial Navigation. Spatial navigation consists in the ability +## Enable spatial navigation. 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 +## keys. For example, if the 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. ## Type: Bool @@ -952,18 +972,19 @@ c.hints.scatter = False ## Type: List of String # c.keyhint.blacklist = [] -## Time from pressing a key to seeing the keyhint dialog (ms). +## Time (in milliseconds) from pressing a key to seeing the keyhint +## dialog. ## Type: Int # c.keyhint.delay = 500 -## Time (in ms) to show messages in the statusbar for. Set to 0 to never -## clear messages. +## Rounding radius (in pixels) for the edges of the keyhint dialog. ## Type: Int -# c.messages.timeout = 2000 +# c.keyhint.radius = 6 -## Show messages in unfocused windows. -## Type: Bool -# c.messages.unfocused = False +## Duration (in milliseconds) to show messages in the statusbar for. Set +## to 0 to never clear messages. +## Type: Int +# c.messages.timeout = 2000 ## How to open links in an existing instance if a new one is launched. ## This happens when e.g. opening a link from a terminal. See @@ -992,16 +1013,34 @@ c.hints.scatter = False ## Type: Bool # c.prompt.filebrowser = True -## The rounding radius for the edges of prompts. +## Rounding radius (in pixels) for the edges of prompts. ## Type: Int # c.prompt.radius = 8 ## Additional arguments to pass to Qt, without leading `--`. With ## QtWebEngine, some Chromium arguments (see ## https://peter.sh/experiments/chromium-command-line-switches/ for a -## list) will work. This setting requires a restart. +## list) will work. ## Type: List of String -# c.qt_args = [] +# c.qt.args = [] + +## Force a Qt platform to use. This sets the `QT_QPA_PLATFORM` +## environment variable and is useful to force using the XCB plugin when +## running QtWebEngine on Wayland. +## Type: String +# c.qt.force_platform = None + +## Force software rendering for QtWebEngine. This is needed for +## QtWebEngine to work with Nouveau drivers. +## Type: Bool +# c.qt.force_software_rendering = False + +## Turn on Qt HighDPI scaling. This is equivalent to setting +## QT_AUTO_SCREEN_SCALE_FACTOR=1 in the environment. It's off by default +## as it can cause issues with some bitmap fonts. As an alternative to +## this, it's possible to set font sizes and the `zoom.default` setting. +## Type: Bool +# c.qt.highdpi = False ## Show a scrollbar. ## Type: Bool @@ -1012,31 +1051,110 @@ c.hints.scatter = False ## Type: Bool # c.scrolling.smooth = False -## The name of the session to save by default. If this is set to null, -## the session which was last loaded is saved. +## When to find text on a page case-insensitively. +## Type: String +## Valid values: +## - always: Search case-insensitively. +## - never: Search case-sensitively. +## - smart: Search case-sensitively if there are capital characters. +# c.search.ignore_case = 'smart' + +## Find text on a page incrementally, renewing the search for each typed +## character. +## Type: Bool +# c.search.incremental = True + +## Name of the session to save by default. If this is set to null, the +## session which was last loaded is saved. ## Type: SessionName -# c.session_default_name = None +# c.session.default_name = None + +## Load a restored tab as soon as it takes focus. +## Type: Bool +c.session.lazy_restore = True + +## Languages to use for spell checking. You can check for available +## languages and install dictionaries using scripts/dictcli.py. Run the +## script with -h/--help for instructions. +## Type: List of String +## Valid values: +## - af-ZA: Afrikaans (South Africa) +## - bg-BG: Bulgarian (Bulgaria) +## - ca-ES: Catalan (Spain) +## - cs-CZ: Czech (Czech Republic) +## - da-DK: Danish (Denmark) +## - de-DE: German (Germany) +## - el-GR: Greek (Greece) +## - en-AU: English (Australia) +## - en-CA: English (Canada) +## - en-GB: English (United Kingdom) +## - en-US: English (United States) +## - es-ES: Spanish (Spain) +## - et-EE: Estonian (Estonia) +## - fa-IR: Farsi (Iran) +## - fo-FO: Faroese (Faroe Islands) +## - fr-FR: French (France) +## - he-IL: Hebrew (Israel) +## - hi-IN: Hindi (India) +## - hr-HR: Croatian (Croatia) +## - hu-HU: Hungarian (Hungary) +## - id-ID: Indonesian (Indonesia) +## - it-IT: Italian (Italy) +## - ko: Korean +## - lt-LT: Lithuanian (Lithuania) +## - lv-LV: Latvian (Latvia) +## - nb-NO: Norwegian (Norway) +## - nl-NL: Dutch (Netherlands) +## - pl-PL: Polish (Poland) +## - pt-BR: Portuguese (Brazil) +## - pt-PT: Portuguese (Portugal) +## - ro-RO: Romanian (Romania) +## - ru-RU: Russian (Russia) +## - sh: Serbo-Croatian +## - sk-SK: Slovak (Slovakia) +## - sl-SI: Slovenian (Slovenia) +## - sq: Albanian +## - sr: Serbian +## - sv-SE: Swedish (Sweden) +## - ta-IN: Tamil (India) +## - tg-TG: Tajik (Tajikistan) +## - tr-TR: Turkish (Turkey) +## - uk-UA: Ukrainian (Ukraine) +## - vi-VN: Vietnamese (Viet Nam) +# c.spellcheck.languages = [] ## Hide the statusbar unless a message is shown. ## Type: Bool # c.statusbar.hide = False -## Padding for the statusbar. +## Padding (in pixels) for the statusbar. ## Type: Padding -# c.statusbar.padding = {'left': 0, 'right': 0, 'top': 1, 'bottom': 1} +# c.statusbar.padding = {'top': 1, 'bottom': 1, 'left': 0, 'right': 0} -## The position of the status bar. +## Position of the status bar. ## Type: VerticalPosition ## Valid values: ## - top ## - bottom # c.statusbar.position = 'bottom' +## List of widgets displayed in the statusbar. +## Type: List of String +## Valid values: +## - url: Current page URL. +## - scroll: Percentage of the current page position like `10%`. +## - scroll_raw: Raw percentage of the current page position like `10`. +## - history: Display an arrow when possible to go back/forward in history. +## - tabs: Current active tab, e.g. `2`. +## - keypress: Display pressed keys when composing a vi command. +## - progress: Progress bar for the current page loading. +# c.statusbar.widgets = ['keypress', 'url', 'scroll', 'history', 'tabs', 'progress'] + ## Open new tabs (middleclick/ctrl+click) in the background. ## Type: Bool # c.tabs.background = False -## On which mouse button to close tabs. +## Mouse button with which to close tabs. ## Type: String ## Valid values: ## - right: Close tabs on right-click. @@ -1044,20 +1162,37 @@ c.hints.scatter = False ## - none: Don't close tabs using the mouse. # c.tabs.close_mouse_button = 'middle' -## Scaling for favicons in the tab bar. The tab size is unchanged, so big -## favicons also require extra `tabs.padding`. +## How to behave when the close mouse button is pressed on the tab bar. +## Type: String +## Valid values: +## - new-tab: Open a new tab. +## - close-current: Close the current tab. +## - close-last: Close the last tab. +## - ignore: Don't do anything. +# c.tabs.close_mouse_button_on_bar = 'new-tab' + +## Scaling factor for favicons in the tab bar. The tab size is unchanged, +## so big favicons also require extra `tabs.padding`. ## Type: Float # c.tabs.favicons.scale = 1.0 -## Show favicons in the tab bar. -## Type: Bool -# c.tabs.favicons.show = True +## When to show favicons in the tab bar. +## Type: String +## Valid values: +## - always: Always show favicons. +## - never: Always hide favicons. +## - pinned: Show favicons only on pinned tabs. +# c.tabs.favicons.show = 'always' -## Padding for tab indicators +## Padding (in pixels) for tab indicators. ## Type: Padding -# c.tabs.indicator_padding = {'left': 0, 'right': 4, 'top': 2, 'bottom': 2} +# c.tabs.indicator.padding = {'top': 2, 'bottom': 2, 'left': 0, 'right': 4} -## Behavior when the last tab is closed. +## Width (in pixels) of the progress indicator (0 to disable). +## Type: Int +# c.tabs.indicator.width = 3 + +## How to behave when the last tab is closed. ## Type: String ## Valid values: ## - ignore: Don't do anything. @@ -1067,11 +1202,26 @@ c.hints.scatter = False ## - close: Close the window. # c.tabs.last_close = 'ignore' +## Minimum width (in pixels) of tabs (-1 for the default minimum size +## behavior). This setting only applies when tabs are horizontal. This +## setting does not apply to pinned tabs, unless `tabs.pinned.shrink` is +## False. +## Type: Int +# c.tabs.min_width = -1 + +## When switching tabs, what input mode is applied. +## Type: String +## Valid values: +## - persist: Retain the current mode. +## - restore: Restore previously saved mode. +## - normal: Always revert to normal mode. +# c.tabs.mode_on_change = 'normal' + ## Switch between tabs using the mouse wheel. ## Type: Bool # c.tabs.mousewheel_switching = True -## How new tabs opened from another tab are positioned. +## Position of new tabs opened from another tab. ## Type: NewTabPosition ## Valid values: ## - prev: Before the current tab. @@ -1080,7 +1230,7 @@ c.hints.scatter = False ## - last: At the end. # c.tabs.new_position.related = 'next' -## How new tabs which aren't opened from another tab are positioned. +## Position of new tabs which aren't opened from another tab. ## Type: NewTabPosition ## Valid values: ## - prev: Before the current tab. @@ -1089,11 +1239,15 @@ c.hints.scatter = False ## - last: At the end. c.tabs.new_position.unrelated = 'next' -## Padding around text for tabs +## Padding (in pixels) around text for tabs. ## Type: Padding -# c.tabs.padding = {'left': 5, 'right': 5, 'top': 0, 'bottom': 0} +# c.tabs.padding = {'top': 0, 'bottom': 0, 'left': 5, 'right': 5} -## The position of the tab bar. +## Shrink pinned tabs down to their contents. +## Type: Bool +# c.tabs.pinned.shrink = True + +## Position of the tab bar. ## Type: Position ## Valid values: ## - top @@ -1119,8 +1273,8 @@ c.tabs.select_on_remove = 'prev' ## - switching: Show the tab bar when switching tabs. # c.tabs.show = 'always' -## Time to show the tab bar before hiding it when tabs.show is set to -## 'switching'. +## Duration (in milliseconds) to show the tab bar before hiding it when +## tabs.show is set to 'switching'. ## Type: Int # c.tabs.show_switching_delay = 800 @@ -1136,37 +1290,34 @@ c.tabs.select_on_remove = 'prev' ## - center # c.tabs.title.alignment = 'left' -## 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. * `{host}`: The host of the current web page. * `{backend}`: -## Either ''webkit'' or ''webengine'' * `{private}` : Indicates when -## private mode is enabled. +## Format to use for the tab title. The following placeholders are +## defined: * `{perc}`: Percentage as a string like `[10%]`. * +## `{perc_raw}`: Raw percentage, e.g. `10`. * `{title}`: Title of the +## current web page. * `{title_sep}`: The string ` - ` if a title is set, +## empty otherwise. * `{index}`: Index of this tab. * `{id}`: Internal +## tab ID of this tab. * `{scroll_pos}`: Page scroll position. * +## `{host}`: Host of the current web page. * `{backend}`: Either +## ''webkit'' or ''webengine'' * `{private}`: Indicates when private mode +## is enabled. * `{current_url}`: URL of the current web page. * +## `{protocol}`: Protocol (http/https/...) of the current web page. ## Type: FormatString # c.tabs.title.format = '{index}: {title}' -## The format to use for the tab title for pinned tabs. The same -## placeholders like for `tabs.title.format` are defined. +## Format to use for the tab title for pinned tabs. The same placeholders +## like for `tabs.title.format` are defined. ## Type: FormatString # c.tabs.title.format_pinned = '{index}' -## The width of the tab bar if it's vertical, in px or as percentage of -## the window. +## Width (in pixels or as percentage of the window) of the tab bar if +## it's vertical. ## Type: PercOrInt -# c.tabs.width.bar = '20%' - -## Width of the progress indicator (0 to disable). -## Type: Int -# c.tabs.width.indicator = 3 +# c.tabs.width = '20%' -## Whether to wrap when changing tabs. +## Wrap when changing tabs. ## Type: Bool # c.tabs.wrap = True -## Whether to start a search when something else than a URL is entered. +## What search to start when something else than a URL is entered. ## Type: String ## Valid values: ## - naive: Use simple/naive check. @@ -1174,25 +1325,31 @@ c.tabs.select_on_remove = 'prev' ## - never: Never search automatically. # c.url.auto_search = 'naive' -## The page to open if :open -t/-b/-w is used without URL. Use -## `about:blank` for a blank page. +## Page to open if :open -t/-b/-w is used without URL. Use `about:blank` +## for a blank page. ## Type: FuzzyUrl c.url.default_page = 'https://duckduckgo.com/?t=chakra' -## The URL segments where `:navigate increment/decrement` will search for -## a number. +## URL segments where `:navigate increment/decrement` will search for a +## number. ## Type: FlagList ## Valid values: ## - host +## - port ## - path ## - query ## - anchor # c.url.incdec_segments = ['path', 'query'] -## Definitions of search engines which can be used via the address bar. -## Maps a searchengine name (such as `DEFAULT`, or `ddg`) to a URL with a -## `{}` placeholder. The placeholder will be replaced by the search term, -## use `{{` and `}}` for literal `{`/`}` signs. The searchengine named +## Open base URL of the searchengine if a searchengine shortcut is +## invoked without parameters. +## Type: Bool +# c.url.open_base_url = False + +## Search engines which can be used via the address bar. Maps a search +## engine name (such as `DEFAULT`, or `ddg`) to a URL with a `{}` +## placeholder. The placeholder will be replaced by the search term, use +## `{{` and `}}` for literal `{`/`}` signs. The search engine named ## `DEFAULT` is used when `url.auto_search` is turned on 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. @@ -1200,48 +1357,42 @@ c.url.default_page = 'https://duckduckgo.com/?t=chakra' ## Type: Dict c.url.searchengines = {'DEFAULT': 'https://duckduckgo.com/?t=chakra&q={}', 'ddg': 'https://duckduckgo.com/?t=chakra&q={}', + 'slack': 'https://ultrahaptics.slack.com/messages/{}', 'pcl': 'http://docs.pointclouds.org/trunk/search.php?query={}', 'std': 'http://en.cppreference.com/mwiki/index.php?title=Special%3ASearch&search={}', 'cv': 'http://docs.opencv.org/3.1.0/index.html#gsc.tab=0&gsc.ref=more%3A3.1&gsc.q={}' } -## The page(s) to open at the start. +## Page(s) to open at the start. ## Type: List of FuzzyUrl, or FuzzyUrl -# c.url.start_pages = 'https://start.duckduckgo.com' +# c.url.start_pages = ['https://start.duckduckgo.com'] -## The URL parameters to strip with `:yank url`. +## URL parameters to strip with `:yank url`. ## Type: List of String # c.url.yank_ignored_parameters = ['ref', 'utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content'] -## Hide the window decoration when using wayland (requires restart) +## Hide the window decoration. This setting requires a restart on +## Wayland. ## Type: Bool -# c.window.hide_wayland_decoration = False - -## 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. * `{host}`: The host of -## the current web page. * `{backend}`: Either ''webkit'' or -## ''webengine'' * `{private}` : Indicates when private mode is enabled. +# c.window.hide_decoration = False + +## Format to use for the window title. The same placeholders like for +## `tabs.title.format` are defined. ## Type: FormatString # c.window.title_format = '{perc}{title}{title_sep}qutebrowser' -## The default zoom level. +## Default zoom level. ## Type: Perc # c.zoom.default = '100%' -## The available zoom levels. +## Available zoom levels. ## Type: List of Perc # c.zoom.levels = ['25%', '33%', '50%', '67%', '75%', '90%', '100%', '110%', '125%', '150%', '175%', '200%', '250%', '300%', '400%', '500%'] -## How much to divide the mouse wheel movements to translate them into -## zoom increments. +## Number of zoom increments to divide the mouse wheel movements to. ## Type: Int # c.zoom.mouse_divider = 512 -## Whether the zoom factor on a frame applies only to the text or to all -## content. +## Apply the zoom factor on a frame only to the text or to all content. ## Type: Bool # c.zoom.text_only = False @@ -1322,6 +1473,9 @@ config.bind('J', 'tab-prev') # config.bind('PP', 'open -t -- {primary}') # config.bind('Pp', 'open -t -- {clipboard}') # config.bind('R', 'reload -f') +# config.bind('Sb', 'open qute://bookmarks#bookmarks') +# config.bind('Sh', 'open qute://history') +# config.bind('Sq', 'open qute://bookmarks') # config.bind('Ss', 'open qute://settings') # config.bind('T', 'tab-focus') # config.bind('ZQ', 'quit') @@ -1333,6 +1487,7 @@ config.bind('J', 'tab-prev') # config.bind('b', 'set-cmd-text -s :quickmark-load') # config.bind('cd', 'download-clear') config.unbind('co') +config.bind('co', 'download-open') # config.bind('d', 'tab-close') # config.bind('f', 'hint') # config.bind('g$', 'tab-focus -1') @@ -1347,6 +1502,7 @@ config.unbind('co') # config.bind('gd', 'download') # config.bind('gf', 'view-source') # config.bind('gg', 'scroll-to-perc 0') +# config.bind('gi', 'hint inputs --first') # config.bind('gl', 'tab-move -') # config.bind('gm', 'tab-move') # config.bind('go', 'set-cmd-text :open {url:pretty}') @@ -1370,8 +1526,20 @@ config.bind('m', 'spawn mpv {url}') # config.bind('sk', 'set-cmd-text -s :bind') # config.bind('sl', 'set-cmd-text -s :set -t') # config.bind('ss', 'set-cmd-text -s :set') +# config.bind('tPH', 'config-cycle -p -u *://*.{url:host}/* content.plugins ;; reload') +# config.bind('tPh', 'config-cycle -p -u *://{url:host}/* content.plugins ;; reload') +# config.bind('tPu', 'config-cycle -p -u {url} content.plugins ;; reload') +# config.bind('tSH', 'config-cycle -p -u *://*.{url:host}/* content.javascript.enabled ;; reload') +# config.bind('tSh', 'config-cycle -p -u *://{url:host}/* content.javascript.enabled ;; reload') +# config.bind('tSu', 'config-cycle -p -u {url} content.javascript.enabled ;; reload') # config.bind('th', 'back -t') # config.bind('tl', 'forward -t') +# config.bind('tpH', 'config-cycle -p -t -u *://*.{url:host}/* content.plugins ;; reload') +# config.bind('tph', 'config-cycle -p -t -u *://{url:host}/* content.plugins ;; reload') +# config.bind('tpu', 'config-cycle -p -t -u {url} content.plugins ;; reload') +# config.bind('tsH', 'config-cycle -p -t -u *://*.{url:host}/* content.javascript.enabled ;; reload') +# config.bind('tsh', 'config-cycle -p -t -u *://{url:host}/* content.javascript.enabled ;; reload') +# config.bind('tsu', 'config-cycle -p -t -u {url} content.javascript.enabled ;; reload') # config.bind('u', 'undo') # config.bind('v', 'enter-mode caret') # config.bind('wB', 'set-cmd-text -s :bookmark-load -w') @@ -1434,6 +1602,7 @@ config.bind('m', 'spawn mpv {url}') # config.bind('', 'rl-delete-char', mode='command') # config.bind('', 'rl-beginning-of-line', mode='command') # config.bind('', 'rl-backward-char', mode='command') +# config.bind('', 'completion-item-yank', mode='command') # config.bind('', 'completion-item-del', mode='command') # config.bind('', 'rl-end-of-line', mode='command') # config.bind('', 'rl-forward-char', mode='command') @@ -1441,18 +1610,20 @@ config.bind('m', 'spawn mpv {url}') # config.bind('', 'rl-kill-line', mode='command') # config.bind('', 'command-history-next', mode='command') # config.bind('', 'command-history-prev', mode='command') +# config.bind('', 'command-accept --rapid', mode='command') +# config.bind('', 'completion-item-yank --sel', mode='command') # config.bind('', 'completion-item-focus prev-category', mode='command') # config.bind('', 'completion-item-focus next-category', mode='command') # config.bind('', 'rl-unix-line-discard', mode='command') # config.bind('', 'rl-unix-word-rubout', mode='command') # config.bind('', 'rl-yank', mode='command') -# config.bind('', 'command-history-next', mode='command') +# config.bind('', 'completion-item-focus --history next', mode='command') # config.bind('', 'leave-mode', mode='command') # config.bind('', 'command-accept', mode='command') # config.bind('', 'completion-item-del', mode='command') # config.bind('', 'completion-item-focus prev', mode='command') # config.bind('', 'completion-item-focus next', mode='command') -# config.bind('', 'command-history-prev', mode='command') +# config.bind('', 'completion-item-focus --history prev', mode='command') ## Bindings for hint mode # config.bind('', 'hint all tab-bg', mode='hint') @@ -1474,6 +1645,8 @@ config.bind('m', 'spawn mpv {url}') # config.bind('', 'rl-backward-kill-word', mode='prompt') # config.bind('', 'rl-kill-word', mode='prompt') # config.bind('', 'rl-forward-word', mode='prompt') +# config.bind('', 'prompt-yank --sel', mode='prompt') +# config.bind('', 'prompt-yank', mode='prompt') # config.bind('', 'rl-delete-char', mode='prompt') # config.bind('', 'rl-beginning-of-line', mode='prompt') # config.bind('', 'rl-backward-char', mode='prompt') @@ -1491,8 +1664,14 @@ config.bind('m', 'spawn mpv {url}') # config.bind('', 'prompt-item-focus prev', mode='prompt') # config.bind('', 'prompt-item-focus next', mode='prompt') # config.bind('', 'prompt-item-focus prev', mode='prompt') -# config.bind('n', 'prompt-accept no', mode='prompt') -# config.bind('y', 'prompt-accept yes', mode='prompt') ## Bindings for register mode # config.bind('', 'leave-mode', mode='register') + +## Bindings for yesno mode +# config.bind('', 'prompt-yank --sel', mode='yesno') +# config.bind('', 'prompt-yank', mode='yesno') +# config.bind('', 'leave-mode', mode='yesno') +# config.bind('', 'prompt-accept', mode='yesno') +# config.bind('n', 'prompt-accept no', mode='yesno') +# config.bind('y', 'prompt-accept yes', mode='yesno')