diff --git a/doc/help/commands.asciidoc b/doc/help/commands.asciidoc index 0d08253b7..83c243bba 100644 --- a/doc/help/commands.asciidoc +++ b/doc/help/commands.asciidoc @@ -281,7 +281,7 @@ Syntax: +:edit-url [*--bg*] [*--tab*] [*--window*] ['url']+ Navigate to a url formed in an external editor. -The editor which should be launched can be configured via the `general -> editor` config option. +The editor which should be launched can be configured via the `editor.command` config option. ==== positional arguments * +'url'+: URL to edit; defaults to the current page url. @@ -338,7 +338,7 @@ Show help about a command or setting. * +'topic'+: The topic to show help for. - :__command__ for commands. - - __option.foo.bar__ for settings. + - __section__.__option__ for settings. ==== optional arguments @@ -408,7 +408,7 @@ Start hinting. * +*-m*+, +*--mode*+: The hinting mode to use. - `number`: Use numeric hints. - - `letter`: Use the chars in the hints.chars settings. + - `letter`: Use the chars in the hints.chars setting. - `word`: Use hint words based on the html elements and the extra words. @@ -545,7 +545,7 @@ For `increment` and `decrement`, the number to change the URL by. For `up`, the [[open]] === open -Syntax: +:open [*--implicit*] [*--bg*] [*--tab*] [*--window*] [*--secure*] [*--private*] +Syntax: +:open [*--related*] [*--bg*] [*--tab*] [*--window*] [*--secure*] [*--private*] ['url']+ Open a URL in the current/[count]th tab. @@ -556,7 +556,7 @@ If the URL contains newlines, each line gets opened in its own tab. * +'url'+: The URL to open. ==== optional arguments -* +*-i*+, +*--implicit*+: If opening a new tab, treat the tab as implicit (like clicking on a link). +* +*-r*+, +*--related*+: If opening a new tab, position the tab as related to the current one (like clicking on a link). * +*-b*+, +*--bg*+: Open in a new background tab. * +*-t*+, +*--tab*+: Open in a new tab. @@ -632,8 +632,17 @@ Save the current page as a quickmark. [[quit]] === quit +Syntax: +:quit [*--save*] ['session']+ + Quit qutebrowser. +==== positional arguments +* +'session'+: The name of the session to save. + +==== optional arguments +* +*-s*+, +*--save*+: When given, save the open windows even if auto_save.session is turned off. + + [[record-macro]] === record-macro Syntax: +:record-macro ['register']+ @@ -752,7 +761,7 @@ Syntax: +:session-save [*--current*] [*--quiet*] [*--force*] [*--only-active-win Save a session. ==== positional arguments -* +'name'+: The name of the session. If not given, the session configured in general -> session-default-name is saved. +* +'name'+: The name of the session. If not given, the session configured in session_default_name is saved. ==== optional arguments @@ -764,19 +773,18 @@ Save a session. [[set]] === set -Syntax: +:set [*--temp*] [*--print*] ['section'] ['option'] ['values' ['values' ...]]+ +Syntax: +:set [*--temp*] [*--print*] ['option'] ['values' ['values' ...]]+ Set an option. If the option name ends with '?', the value of the option is shown instead. If the option name ends with '!' and it is a boolean value, toggle it. ==== positional arguments -* +'section'+: The section where the option is in. * +'option'+: The name of the option. * +'values'+: The value to set, or the values to cycle through. ==== optional arguments -* +*-t*+, +*--temp*+: Set value temporarily. +* +*-t*+, +*--temp*+: Set value temporarily until qutebrowser is closed. * +*-p*+, +*--print*+: Print the value after setting. [[set-cmd-text]] @@ -843,7 +851,7 @@ Close the current/[count]th tab. ==== optional arguments * +*-p*+, +*--prev*+: Force selecting the tab before the current tab. * +*-n*+, +*--next*+: Force selecting the tab after the current tab. -* +*-o*+, +*--opposite*+: Force selecting the tab in the opposite direction of what's configured in 'tabs->select-on-remove'. +* +*-o*+, +*--opposite*+: Force selecting the tab in the opposite direction of what's configured in 'tabs.select_on_remove'. * +*-f*+, +*--force*+: Avoid confirmation for pinned tabs. @@ -911,7 +919,7 @@ Close all tabs except for the current one. === tab-pin Pin/Unpin the current/[count]th tab. -Pinning a tab shrinks it to tabs->pinned-width size. Attempting to close a pinned tab will cause a confirmation, unless --force is passed. +Pinning a tab shrinks it to `tabs.width.pinned` size. Attempting to close a pinned tab will cause a confirmation, unless --force is passed. ==== count The tab index to pin or unpin @@ -931,8 +939,7 @@ Unbind a keychain. ==== positional arguments * +'key'+: The keychain or special key (inside <...>) to unbind. -* +'mode'+: A comma-separated list of modes to unbind the key in (default: `normal`). - +* +'mode'+: A mode to unbind the key in (default: `normal`). [[undo]] === undo @@ -1043,6 +1050,7 @@ How many steps to zoom out. |<>|Move the cursor or selection to the start of the line. |<>|Move the cursor or selection to the start of next block. |<>|Move the cursor or selection to the start of previous block. +|<>|Do nothing. |<>|Open an external editor with the currently selected form field. |<>|Accept the current prompt. |<>|Shift the focus of the prompt file completion menu to another item. @@ -1290,11 +1298,15 @@ Move the cursor or selection to the start of previous block. ==== count How many blocks to move. +[[nop]] +=== nop +Do nothing. + [[open-editor]] === open-editor Open an external editor with the currently selected form field. -The editor which should be launched can be configured via the `general -> editor` config option. +The editor which should be launched can be configured via the `editor.command` config option. [[prompt-accept]] === prompt-accept diff --git a/doc/help/settings.asciidoc b/doc/help/settings.asciidoc index 9c362dbca..31f7fc07a 100644 --- a/doc/help/settings.asciidoc +++ b/doc/help/settings.asciidoc @@ -4,364 +4,260 @@ = Settings -.Quick reference for section ``general'' [options="header",width="75%",cols="25%,75%"] |============== |Setting|Description -|<>|Whether to find text on a page case-insensitively. -|<>|The default page(s) to open at the start, separated by commas. -|<>|The URL parameters to strip with :yank url, separated by commas. -|<>|The default program used to open downloads. Set to an empty string to use the default internal handler. -|<>|The page to open if :open -t/-b/-w is used without URL. Use `about:blank` for a blank page. -|<>|Whether to start a search when something else than a URL is entered. -|<>|Whether to save the config automatically on quit. -|<>|How often (in milliseconds) to auto-save config/cookies/etc. -|<>|The editor (and arguments) to use for the `open-editor` command. -|<>|Encoding to use for editor. -|<>|Open new windows in private browsing mode which does not record visited pages. -|<>|Enable extra tools for Web developers. -|<>|Whether the background color and images are also drawn when the page is printed. -|<>|Whether load requests should be monitored for cross-site scripting attempts. -|<>|Default encoding to use for websites. -|<>|How to open links in an existing instance if a new one is launched. -|<>|Which window to choose when opening links as new tabs. -|<>|How to log javascript console messages. -|<>|Whether to always save the open pages. -|<>|The name of the session to save by default, or empty for the last loaded session. -|<>|The URL segments where `:navigate increment/decrement` will search for a number. +|<>|Aliases for commands. +|<>|Whether to save the config automatically on quit. +|<>|How often (in milliseconds) to auto-save config/cookies/etc. +|<>|Whether to always save the open pages. +|<>|Whether to start a search when something else than a URL is entered. +|<>|Keybindings mapping keys to commands in different modes. +|<>|Default keybindings. If you want to add bindings, modify `bindings.commands` instead. +|<>|This setting can be used to map keys to other keys. +|<>|Background color of the completion widget category headers. +|<>|Bottom border color of the completion widget category headers. +|<>|Top border color of the completion widget category headers. +|<>|Foreground color of completion widget category headers. +|<>|Background color of the completion widget for even rows. +|<>|Text color of the completion widget. +|<>|Background color of the selected completion item. +|<>|Bottom border color of the selected completion item. +|<>|Top border color of the completion widget category headers. +|<>|Foreground color of the selected completion item. +|<>|Foreground color of the matched text in the completion. +|<>|Background color of the completion widget for odd rows. +|<>|Color of the scrollbar in completion view +|<>|Color of the scrollbar handle in completion view. +|<>|Background color for the download bar. +|<>|Background color for downloads with errors. +|<>|Foreground color for downloads with errors. +|<>|Color gradient start for download backgrounds. +|<>|Color gradient start for download text. +|<>|Color gradient stop for download backgrounds. +|<>|Color gradient end for download text. +|<>|Color gradient interpolation system for download backgrounds. +|<>|Color gradient interpolation system for download text. +|<>|Background color for hints. Note that you can use a `rgba(...)` value for transparency. +|<>|Font color for hints. +|<>|Font color for the matched part of hints. +|<>|Background color of the keyhint widget. +|<>|Text color for the keyhint widget. +|<>|Highlight color for keys to complete the current keychain +|<>|Background color of an error message. +|<>|Border color of an error message. +|<>|Foreground color of an error message. +|<>|Background color of an info message. +|<>|Border color of an info message. +|<>|Foreground color an info message. +|<>|Background color of a warning message. +|<>|Border color of an error message. +|<>|Foreground color a warning message. +|<>|Background color for prompts. +|<>|Foreground color for prompts. +|<>|Background color for the selected item in filename prompts. +|<>|Background color of the statusbar in caret mode. +|<>|Foreground color of the statusbar in caret mode. +|<>|Background color of the statusbar in caret mode with a selection +|<>|Foreground color of the statusbar in caret mode with a selection +|<>|Background color of the statusbar in command mode. +|<>|Foreground color of the statusbar in command mode. +|<>|Background color of the statusbar in private browsing + command mode. +|<>|Foreground color of the statusbar in private browsing + command mode. +|<>|Background color of the statusbar in insert mode. +|<>|Foreground color of the statusbar in insert mode. +|<>|Background color of the statusbar. +|<>|Foreground color of the statusbar. +|<>|Background color of the statusbar in private browsing mode. +|<>|Foreground color of the statusbar in private browsing mode. +|<>|Background color of the progress bar. +|<>|Foreground color of the URL in the statusbar on error. +|<>|Default foreground color of the URL in the statusbar. +|<>|Foreground color of the URL in the statusbar for hovered links. +|<>|Foreground color of the URL in the statusbar on successful load (http). +|<>|Foreground color of the URL in the statusbar on successful load (https). +|<>|Foreground color of the URL in the statusbar when there's a warning. +|<>|Background color of the tab bar. +|<>|Background color of unselected even tabs. +|<>|Foreground color of unselected even tabs. +|<>|Color for the tab indicator on errors.. +|<>|Color gradient start for the tab indicator. +|<>|Color gradient end for the tab indicator. +|<>|Color gradient interpolation system for the tab indicator. +|<>|Background color of unselected odd tabs. +|<>|Foreground color of unselected odd tabs. +|<>|Background color of selected even tabs. +|<>|Foreground color of selected even tabs. +|<>|Background color of selected odd tabs. +|<>|Foreground color of selected odd tabs. +|<>|Background color for webpages if unset (or empty to use the theme's color) +|<>|How many commands to save in the command history. +|<>|The height of the completion, in px or as percentage of the window. +|<>|Whether to move on to the next part when there's only one possible completion left. +|<>|Padding of scrollbar handle in completion window (in px). +|<>|Width of the scrollbar in the completion window (in px). +|<>|When to show the autocompletion window. +|<>|Whether to shrink the completion to be smaller than the configured size if there are no scrollbars. +|<>|How to format timestamps (e.g. for history) +|<>|How many URLs to show in the web history. +|<>|Whether to confirm quitting the application. +|<>|Value to send in the `accept-language` header. +|<>|Size of the HTTP network cache. Empty to use the default value. +|<>|Control which cookies to accept. +|<>|Whether to store cookies. Note this option needs a restart with QtWebEngine on Qt < 5.9. +|<>|Set custom headers for qutebrowser HTTP requests. +|<>|Default encoding to use for websites. +|<>|Enable extra tools for Web developers. +|<>|Whether to try to pre-fetch DNS entries to speed up browsing. +|<>|Value to send in the `DNT` header. +|<>|Whether to expand each subframe to its contents. +|<>|Allow websites to request geolocations. +|<>|Whether host blocking is enabled. +|<>|List of URLs of lists which contain hosts to block. +|<>|List of domains that should always be loaded, despite being ad-blocked. +|<>|Enable or disable hyperlink auditing (``). +|<>|Whether images are automatically loaded in web pages. +|<>|Show javascript alerts. +|<>|Whether JavaScript programs can read or write to the clipboard. +|<>|Whether JavaScript programs can close windows. +|<>|Whether JavaScript programs can open new windows without user interaction. +|<>|Enables or disables the running of JavaScript programs. +|<>|How to log javascript console messages. +|<>|Use the standard JavaScript modal dialog for `alert()` and `confirm()` +|<>|Show javascript prompts. +|<>|Whether locally loaded documents are allowed to access other local urls. +|<>|Whether locally loaded documents are allowed to access remote urls. +|<>|Whether support for HTML 5 local storage and Web SQL is enabled. +|<>|The maximum number of pages to hold in the global memory page cache. +|<>|Allow websites to record audio/video. +|<>|Location of a netrc-file for HTTP authentication. +|<>|Allow websites to show notifications. +|<>|Whether support for the HTML 5 web application cache feature is enabled. +|<>|Enable pdf.js to view PDF files in the browser. +|<>|Enables or disables plugins in Web pages. +|<>|Whether the background color and images are also drawn when the page is printed. +|<>|Open new windows in private browsing mode which does not record visited pages. +|<>|The proxy to use. +|<>|Whether to send DNS requests over the configured proxy. +|<>|Send the Referer header +|<>|Whether to validate SSL handshakes. +|<>|User agent to send. Unset to send the default. +|<>|User stylesheet to use (absolute filename or filename relative to the config directory). Will expand environment variables. +|<>|Enables or disables WebGL. +|<>|Whether load requests should be monitored for cross-site scripting attempts. +|<>|The page to open if :open -t/-b/-w is used without URL. Use `about:blank` for a blank page. +|<>|The directory to save downloads to. +|<>|Whether to prompt the user for the download location. +|<>|Whether to remember the last used download directory. +|<>|What to display in the download filename input. +|<>|The default program used to open downloads. If unset, the default internal handler is used. +|<>|Where to show the downloaded files. +|<>|Number of milliseconds to wait before removing finished downloads. Will not be removed if value is -1. +|<>|The editor (and arguments) to use for the `open-editor` command. +|<>|Encoding to use for the editor. +|<>|Font used in the completion categories. +|<>|Font used in the completion widget. +|<>|Font used for the debugging console. +|<>|Font used for the downloadbar. +|<>|Font used for the hints. +|<>|Font used in the keyhint widget. +|<>|Font used for error messages. +|<>|Font used for info messages. +|<>|Font used for warning messages. +|<>|Default monospace fonts. +|<>|Font used for prompts. +|<>|Font used in the statusbar. +|<>|Font used in the tab bar. +|<>|Font family for cursive fonts. +|<>|Font family for fantasy fonts. +|<>|Font family for fixed fonts. +|<>|Font family for sans-serif fonts. +|<>|Font family for serif fonts. +|<>|Font family for standard fonts. +|<>|The default font size for regular text. +|<>|The default font size for fixed-pitch text. +|<>|The hard minimum font size. +|<>|The minimum logical font size that is applied when zooming out. +|<>|Controls when a hint can be automatically followed without the user pressing Enter. +|<>|A timeout (in milliseconds) to inhibit normal-mode key bindings after a successful auto-follow. +|<>|CSS border value for hints. +|<>|Chars used for hint strings. +|<>|The dictionary file to be used by the word hints. +|<>|Which implementation to use to find elements to hint. +|<>|Controls hiding unmatched hints in rapid mode. +|<>|Minimum number of chars used for hint strings. +|<>|Mode to use for hints. +|<>|A comma-separated list of regexes to use for 'next' links. +|<>|A comma-separated list of regexes to use for 'prev' links. +|<>|Whether to scatter hint key chains (like Vimium) or not (like dwb). Ignored for number hints. +|<>|Make chars in hint strings uppercase. +|<>|The maximum time in minutes between two history items for them to be considered being from the same session. Use -1 to disable separation. +|<>|Whether to find text on a page case-insensitively. +|<>|Timeout (in milliseconds) for ambiguous key bindings. +|<>|Whether to forward unbound keys to the webview in normal mode. +|<>|Whether to leave insert mode if a non-editable element is clicked. +|<>|Whether to automatically enter insert mode if an editable element is focused after page load. +|<>|Whether to switch to insert mode when clicking flash and other plugins. +|<>|Whether hyperlinks should be included in the keyboard focus chain. +|<>|Timeout (in milliseconds) for partially typed key bindings. +|<>|Whether to enable Opera-like mouse rocker gestures. This disables the context menu. +|<>|Enables or disables the Spatial Navigation feature. +|<>|Keychains that shouldn\'t be shown in the keyhint dialog. +|<>|Time from pressing a key to seeing the keyhint dialog (ms) +|<>|Time (in ms) to show messages in the statusbar for. +|<>|Whether to show messages in unfocused windows. +|<>|How to open links in an existing instance if a new one is launched. +|<>|Which window to choose when opening links as new tabs. +|<>|Show a filebrowser in upload/download prompts. +|<>|The rounding radius for the edges of prompts. +|<>|Show a scrollbar. +|<>|Whether to enable smooth scrolling for web pages. Note smooth scrolling does not work with the `:scroll-px` command. +|<>|Definitions of search engines which can be used via the address bar. +|<>|The name of the session to save by default, or unset for the last loaded session. +|<>|The default page(s) to open at the start. +|<>|Whether to hide the statusbar unless a message is shown. +|<>|Padding for the statusbar. +|<>|The position of the status bar. +|<>|Whether to open new tabs (middleclick/ctrl+click) in background. +|<>|On which mouse button to close tabs. +|<>|Scale for favicons in the tab bar. The tab size is unchanged, so big favicons also require extra `tabs.padding`. +|<>|Whether to show favicons in the tab bar. +|<>|Padding for indicators +|<>|Behavior when the last tab is closed. +|<>|Switch between tabs using the mouse wheel. +|<>|How new tabs opened from another tab are positioned. +|<>|How new tabs which aren't opened from another tab are positioned. +|<>|Padding for tabs +|<>|The position of the tab bar. +|<>|Which tab to select when the focused tab is removed. +|<>|When to show the tab bar. +|<>|Time to show the tab bar before hiding it when tabs.show is set to 'switching'. +|<>|Whether to open windows instead of tabs. +|<>|Alignment of the text inside of tabs +|<>|The format to use for the tab title. The following placeholders are defined: +|<>|The format to use for the tab title for pinned tabs. The same placeholders like for title-format are defined. +|<>|The width of the tab bar if it's vertical, in px or as percentage of the window. +|<>|Width of the progress indicator (0 to disable). +|<>|The width for pinned tabs with a horizontal tabbar, in px. +|<>|Whether to wrap when changing tabs. +|<>|The URL segments where `:navigate increment/decrement` will search for a number. +|<>|Hide the window decoration when using wayland (requires restart) +|<>|The format to use for the window title. The following placeholders are defined: +|<>|The URL parameters to strip with :yank url. +|<>|The default zoom level. +|<>|The available zoom levels. +|<>|How much to divide the mouse wheel movements to translate them into zoom increments. +|<>|Whether the zoom factor on a frame applies only to the text or to all content. |============== -.Quick reference for section ``ui'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|The maximum time in minutes between two history items for them to be considered being from the same session. Use -1 to disable separation. -|<>|The available zoom levels, separated by commas. -|<>|The default zoom level. -|<>|Where to show the downloaded files. -|<>|The position of the status bar. -|<>|Time (in ms) to show messages in the statusbar for. -|<>|Whether to show messages in unfocused windows. -|<>|Whether to confirm quitting the application. -|<>|Whether the zoom factor on a frame applies only to the text or to all content. -|<>|Whether to expand each subframe to its contents. -|<>|User stylesheet to use (absolute filename or filename relative to the config directory). Will expand environment variables. -|<>|Hide the main scrollbar. -|<>|Whether to enable smooth scrolling for web pages. Note smooth scrolling does not work with the :scroll-px command. -|<>|Number of milliseconds to wait before removing finished downloads. Will not be removed if value is -1. -|<>|Whether to hide the statusbar unless a message is shown. -|<>|Padding for statusbar (top, bottom, left, right). -|<>|The format to use for the window title. The following placeholders are defined: -|<>|Use standard JavaScript modal dialog for alert() and confirm() -|<>|Hide the window decoration when using wayland (requires restart) -|<>|Keychains that shouldn't be shown in the keyhint dialog -|<>|Time from pressing a key to seeing the keyhint dialog (ms) -|<>|The rounding radius for the edges of prompts. -|<>|Show a filebrowser in upload/download prompts. -|============== +[[aliases]] +== aliases +Aliases for commands. -.Quick reference for section ``network'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|Value to send in the `DNT` header. -|<>|Value to send in the `accept-language` header. -|<>|Send the Referer header -|<>|User agent to send. Empty to send the default. -|<>|The proxy to use. -|<>|Whether to send DNS requests over the configured proxy. -|<>|Whether to validate SSL handshakes. -|<>|Whether to try to pre-fetch DNS entries to speed up browsing. -|<>|Set custom headers for qutebrowser HTTP requests. -|<>|Set location of a netrc-file for HTTP authentication. If empty, ~/.netrc is used. -|============== +Default: +pass:[{"w": "session-save", "q": "quit", "wq": "quit --save"}]+ -.Quick reference for section ``completion'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|When to show the autocompletion window. -|<>|What to display in the download filename input. -|<>|How to format timestamps (e.g. for history) -|<>|The height of the completion, in px or as percentage of the window. -|<>|How many commands to save in the command history. -|<>|How many URLs to show in the web history. -|<>|Whether to move on to the next part when there's only one possible completion left. -|<>|Whether to shrink the completion to be smaller than the configured size if there are no scrollbars. -|<>|Width of the scrollbar in the completion window (in px). -|<>|Padding of scrollbar handle in completion window (in px). -|============== - -.Quick reference for section ``input'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|Timeout (in milliseconds) for ambiguous key bindings. -|<>|Timeout (in milliseconds) for partially typed key bindings. -|<>|Whether to switch to insert mode when clicking flash and other plugins. -|<>|Whether to leave insert mode if a non-editable element is clicked. -|<>|Whether to automatically enter insert mode if an editable element is focused after page load. -|<>|Whether to forward unbound keys to the webview in normal mode. -|<>|Enables or disables the Spatial Navigation feature. -|<>|Whether hyperlinks should be included in the keyboard focus chain. -|<>|Whether to enable Opera-like mouse rocker gestures. This disables the context menu. -|<>|How much to divide the mouse wheel movements to translate them into zoom increments. -|============== - -.Quick reference for section ``tabs'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|Whether to open new tabs (middleclick/ctrl+click) in background. -|<>|Which tab to select when the focused tab is removed. -|<>|How new tabs are positioned. -|<>|How new tabs opened explicitly are positioned. -|<>|Behavior when the last tab is closed. -|<>|When to show the tab bar -|<>|Time to show the tab bar before hiding it when tabs->show is set to 'switching'. -|<>|Whether to wrap when changing tabs. -|<>|Whether tabs should be movable. -|<>|On which mouse button to close tabs. -|<>|The position of the tab bar. -|<>|Whether to show favicons in the tab bar. -|<>|Scale for favicons in the tab bar. The tab size is unchanged, so big favicons also require extra `tabs->padding`. -|<>|The width of the tab bar if it's vertical, in px or as percentage of the window. -|<>|The width for pinned tabs with a horizontal tabbar, in px. -|<>|Width of the progress indicator (0 to disable). -|<>|Whether to open windows instead of tabs. -|<>|The format to use for the tab title. The following placeholders are defined: -|<>|The format to use for the tab title for pinned tabs. The same placeholders like for title-format are defined. -|<>|Alignment of the text inside of tabs -|<>|Switch between tabs using the mouse wheel. -|<>|Padding for tabs (top, bottom, left, right). -|<>|Padding for indicators (top, bottom, left, right). -|============== - -.Quick reference for section ``storage'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|The directory to save downloads to. An empty value selects a sensible os-specific default. Will expand environment variables. -|<>|Whether to prompt the user for the download location. -|<>|Whether to remember the last used download directory. -|<>|The maximum number of pages to hold in the global memory page cache. -|<>|Whether support for the HTML 5 web application cache feature is enabled. -|<>|Whether support for HTML 5 local storage and Web SQL is enabled. -|<>|Size of the HTTP network cache. Empty to use the default value. -|============== - -.Quick reference for section ``content'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|Whether images are automatically loaded in web pages. -|<>|Enables or disables the running of JavaScript programs. -|<>|Enables or disables plugins in Web pages. -|<>|Enables or disables WebGL. -|<>|Enable or disable hyperlink auditing (). -|<>|Allow websites to request geolocations. -|<>|Allow websites to show notifications. -|<>|Allow websites to record audio/video. -|<>|Whether JavaScript programs can open new windows without user interaction. -|<>|Whether JavaScript programs can close windows. -|<>|Whether JavaScript programs can read or write to the clipboard. -|<>|Whether all javascript prompts should be ignored. -|<>|Whether all javascript alerts should be ignored. -|<>|Whether locally loaded documents are allowed to access remote urls. -|<>|Whether locally loaded documents are allowed to access other local urls. -|<>|Control which cookies to accept. -|<>|Whether to store cookies. Note this option needs a restart with QtWebEngine on Qt < 5.9. -|<>|List of URLs of lists which contain hosts to block. -|<>|Whether host blocking is enabled. -|<>|List of domains that should always be loaded, despite being ad-blocked. -|<>|Enable pdf.js to view PDF files in the browser. -|============== - -.Quick reference for section ``hints'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|CSS border value for hints. -|<>|Mode to use for hints. -|<>|Chars used for hint strings. -|<>|Minimum number of chars used for hint strings. -|<>|Whether to scatter hint key chains (like Vimium) or not (like dwb). Ignored for number hints. -|<>|Make chars in hint strings uppercase. -|<>|The dictionary file to be used by the word hints. -|<>|Controls when a hint can be automatically followed without the user pressing Enter. -|<>|A timeout (in milliseconds) to inhibit normal-mode key bindings after a successful auto-follow. -|<>|A comma-separated list of regexes to use for 'next' links. -|<>|A comma-separated list of regexes to use for 'prev' links. -|<>|Which implementation to use to find elements to hint. -|<>|Controls hiding unmatched hints in rapid mode. -|============== - -.Quick reference for section ``colors'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|Text color of the completion widget. -|<>|Background color of the completion widget. -|<>|Alternating background color of the completion widget. -|<>|Foreground color of completion widget category headers. -|<>|Background color of the completion widget category headers. -|<>|Top border color of the completion widget category headers. -|<>|Bottom border color of the completion widget category headers. -|<>|Foreground color of the selected completion item. -|<>|Background color of the selected completion item. -|<>|Top border color of the completion widget category headers. -|<>|Bottom border color of the selected completion item. -|<>|Foreground color of the matched text in the completion. -|<>|Color of the scrollbar handle in completion view. -|<>|Color of the scrollbar in completion view -|<>|Foreground color of the statusbar. -|<>|Background color of the statusbar. -|<>|Foreground color of the statusbar in private browsing mode. -|<>|Background color of the statusbar in private browsing mode. -|<>|Foreground color of the statusbar in insert mode. -|<>|Background color of the statusbar in insert mode. -|<>|Foreground color of the statusbar in command mode. -|<>|Background color of the statusbar in command mode. -|<>|Foreground color of the statusbar in private browsing + command mode. -|<>|Background color of the statusbar in private browsing + command mode. -|<>|Foreground color of the statusbar in caret mode. -|<>|Background color of the statusbar in caret mode. -|<>|Foreground color of the statusbar in caret mode with a selection -|<>|Background color of the statusbar in caret mode with a selection -|<>|Background color of the progress bar. -|<>|Default foreground color of the URL in the statusbar. -|<>|Foreground color of the URL in the statusbar on successful load (http). -|<>|Foreground color of the URL in the statusbar on successful load (https). -|<>|Foreground color of the URL in the statusbar on error. -|<>|Foreground color of the URL in the statusbar when there's a warning. -|<>|Foreground color of the URL in the statusbar for hovered links. -|<>|Foreground color of unselected odd tabs. -|<>|Background color of unselected odd tabs. -|<>|Foreground color of unselected even tabs. -|<>|Background color of unselected even tabs. -|<>|Foreground color of selected odd tabs. -|<>|Background color of selected odd tabs. -|<>|Foreground color of selected even tabs. -|<>|Background color of selected even tabs. -|<>|Background color of the tab bar. -|<>|Color gradient start for the tab indicator. -|<>|Color gradient end for the tab indicator. -|<>|Color for the tab indicator on errors.. -|<>|Color gradient interpolation system for the tab indicator. -|<>|Font color for hints. -|<>|Background color for hints. Note that you can use a `rgba(...)` value for transparency. -|<>|Font color for the matched part of hints. -|<>|Background color for the download bar. -|<>|Color gradient start for download text. -|<>|Color gradient start for download backgrounds. -|<>|Color gradient end for download text. -|<>|Color gradient stop for download backgrounds. -|<>|Color gradient interpolation system for download text. -|<>|Color gradient interpolation system for download backgrounds. -|<>|Foreground color for downloads with errors. -|<>|Background color for downloads with errors. -|<>|Background color for webpages if unset (or empty to use the theme's color) -|<>|Text color for the keyhint widget. -|<>|Highlight color for keys to complete the current keychain -|<>|Background color of the keyhint widget. -|<>|Foreground color of an error message. -|<>|Background color of an error message. -|<>|Border color of an error message. -|<>|Foreground color a warning message. -|<>|Background color of a warning message. -|<>|Border color of an error message. -|<>|Foreground color an info message. -|<>|Background color of an info message. -|<>|Border color of an info message. -|<>|Foreground color for prompts. -|<>|Background color for prompts. -|<>|Background color for the selected item in filename prompts. -|============== - -.Quick reference for section ``fonts'' -[options="header",width="75%",cols="25%,75%"] -|============== -|Setting|Description -|<>|Default monospace fonts. -|<>|Font used in the completion widget. -|<>|Font used in the completion categories. -|<>|Font used in the tab bar. -|<>|Font used in the statusbar. -|<>|Font used for the downloadbar. -|<>|Font used for the hints. -|<>|Font used for the debugging console. -|<>|Font family for standard fonts. -|<>|Font family for fixed fonts. -|<>|Font family for serif fonts. -|<>|Font family for sans-serif fonts. -|<>|Font family for cursive fonts. -|<>|Font family for fantasy fonts. -|<>|The hard minimum font size. -|<>|The minimum logical font size that is applied when zooming out. -|<>|The default font size for regular text. -|<>|The default font size for fixed-pitch text. -|<>|Font used in the keyhint widget. -|<>|Font used for error messages. -|<>|Font used for warning messages. -|<>|Font used for info messages. -|<>|Font used for prompts. -|============== - -== general -General/miscellaneous options. - -[[general-ignore-case]] -=== ignore-case -Whether to find text on a page case-insensitively. - -Valid values: - - * +true+: Search case-insensitively - * +false+: Search case-sensitively - * +smart+: Search case-sensitively if there are capital chars - -Default: +pass:[smart]+ - -[[general-startpage]] -=== startpage -The default page(s) to open at the start, separated by commas. - -Default: +pass:[https://start.duckduckgo.com]+ - -[[general-yank-ignored-url-parameters]] -=== yank-ignored-url-parameters -The URL parameters to strip with :yank url, separated by commas. - -Default: +pass:[ref,utm_source,utm_medium,utm_campaign,utm_term,utm_content]+ - -[[general-default-open-dispatcher]] -=== default-open-dispatcher -The default program used to open downloads. Set to an empty string to use the default internal handler. - -Any {} in the string will be expanded to the filename, else the filename will be appended. - -Default: empty - -[[general-default-page]] -=== default-page -The page to open if :open -t/-b/-w is used without URL. Use `about:blank` for a blank page. - -Default: +pass:[${startpage}]+ - -[[general-auto-search]] -=== auto-search -Whether to start a search when something else than a URL is entered. - -Valid values: - - * +naive+: Use simple/naive check. - * +dns+: Use DNS requests (might be slow!). - * +false+: Never search automatically. - -Default: +pass:[naive]+ - -[[general-auto-save-config]] -=== auto-save-config +[[auto_save.config]] +== auto_save.config Whether to save the config automatically on quit. Valid values: @@ -371,127 +267,14 @@ Valid values: Default: +pass:[true]+ -[[general-auto-save-interval]] -=== auto-save-interval +[[auto_save.interval]] +== auto_save.interval How often (in milliseconds) to auto-save config/cookies/etc. Default: +pass:[15000]+ -[[general-editor]] -=== editor -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: +pass:[gvim -f "{}"]+ - -[[general-editor-encoding]] -=== editor-encoding -Encoding to use for editor. - -Default: +pass:[utf-8]+ - -[[general-private-browsing]] -=== private-browsing -Open new windows in private browsing mode which does not record visited pages. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[general-developer-extras]] -=== developer-extras -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. For QtWebEngine, see 'qutebrowser --help' instead. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -This setting is only available with the QtWebKit backend. - -[[general-print-element-backgrounds]] -=== print-element-backgrounds -Whether the background color and images are also drawn when the page is printed. -This setting only works with Qt 5.8 or newer when using the QtWebEngine backend. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[general-xss-auditing]] -=== xss-auditing -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: +pass:[false]+ - -[[general-default-encoding]] -=== default-encoding -Default encoding to use for websites. - -The encoding must be a string describing an encoding such as _utf-8_, _iso-8859-1_, etc. - -Default: +pass:[iso-8859-1]+ - -[[general-new-instance-open-target]] -=== new-instance-open-target -How to open links in an existing instance if a new one is launched. - -Valid values: - - * +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: +pass:[tab]+ - -[[general-new-instance-open-target.window]] -=== new-instance-open-target.window -Which window to choose when opening links as new tabs. - -Valid values: - - * +first-opened+: Open new tabs in the first (oldest) opened window. - * +last-opened+: Open new tabs in the last (newest) opened window. - * +last-focused+: Open new tabs in the most recently focused window. - * +last-visible+: Open new tabs in the most recently visible window. - -Default: +pass:[last-focused]+ - -[[general-log-javascript-console]] -=== log-javascript-console -How to log javascript console messages. - -Valid values: - - * +none+: Don't log messages. - * +debug+: Log messages with debug level. - * +info+: Log messages with info level. - -Default: +pass:[debug]+ - -[[general-save-session]] -=== save-session +[[auto_save.session]] +== auto_save.session Whether to always save the open pages. Valid values: @@ -499,138 +282,581 @@ Valid values: * +true+ * +false+ -Default: +pass:[false]+ +Default: empty -[[general-session-default-name]] -=== session-default-name -The name of the session to save by default, or empty for the last loaded session. +[[auto_search]] +== auto_search +Whether to start a search when something else than a URL is entered. + +Valid values: + + * +naive+: Use simple/naive check. + * +dns+: Use DNS requests (might be slow!). + * +never+: Never search automatically. + +Default: +pass:[naive]+ + +[[bindings.commands]] +== bindings.commands +Keybindings mapping keys to commands in different modes. +This setting is a dictionary containing mode names and dictionaries mapping keys to commands: +`{mode: {key: command}}` +If you want to map a key to another key, check the `bindings.key_mappings` setting instead. +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. +If you want a binding to do nothing, bind it to the `nop` command. If you want a default binding to be passed through to the website, bind it to null. +Note that some commands which are only useful for bindings (but not used interactively) are hidden from the command completion. See `:help` for a full list of available commands. +The following modes are available: +* normal: The default mode, where most commands are invoked. +* insert: Entered when an input field is focused on a website, or by + pressing `i` in normal mode. Passes through almost all keypresses to the + website, but has some bindings like `` to open an external editor. + Note that single keys can't be bound in this mode. + +* hint: Entered when `f` is pressed to select links with the keyboard. Note + that single keys can't be bound in this mode. + +* passthrough: Similar to insert mode, but passes through all keypresses + except `` to leave the mode. It might be useful to bind `` + to some other key in this mode if you want to be able to send an Escape + key to the website as well. Note that single keys can't be bound in this + mode. + +* command: Entered when pressing the `:` key in order to enter a command. + Note that single keys can't be bound in this mode. + +* prompt: Entered when there's a prompt to display, like for download + locations or when invoked from JavaScript. + + 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. + +* caret: Entered when pressing the `v` mode, used to select text using the + keyboard. + +* register: Entered when qutebrowser is waiting for a register name/key for + commands like `:set-mark`. Default: empty -[[general-url-incdec-segments]] -=== url-incdec-segments -The URL segments where `:navigate increment/decrement` will search for a number. +[[bindings.default]] +== bindings.default +Default keybindings. If you want to add bindings, modify `bindings.commands` instead. +The main purpose of this setting is that you can set it to an empty dictionary if you want to load no default keybindings at all. +If you want to preserve default bindings (and get new bindings when there is an update), add new bindings to `bindings.commands` (or use `:bind`) and leave this setting alone. + + +[[bindings.key_mappings]] +== bindings.key_mappings +This setting can be used to map keys to other keys. +When the key used as dictionary-key is pressed, the binding for the key used as dictionary-value is invoked instead. +This is useful for global remappings of keys, for example to map Ctrl-[ to Escape. + +Default: +pass:[{"<Ctrl-[>": "<Escape>", "<Ctrl-6>": "<Ctrl-^>", "<Ctrl-M>": "<Return>", "<Ctrl-J>": "<Return>", "<Shift-Return>": "<Return>", "<Enter>": "<Return>", "<Shift-Enter>": "<Return>", "<Ctrl-Enter>": "<Ctrl-Return>"}]+ + +[[colors.completion.category.bg]] +== colors.completion.category.bg +Background color of the completion widget category headers. + +Default: +pass:[qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #888888, stop:1 #505050)]+ + +[[colors.completion.category.border.bottom]] +== colors.completion.category.border.bottom +Bottom border color of the completion widget category headers. + +Default: +pass:[black]+ + +[[colors.completion.category.border.top]] +== colors.completion.category.border.top +Top border color of the completion widget category headers. + +Default: +pass:[black]+ + +[[colors.completion.category.fg]] +== colors.completion.category.fg +Foreground color of completion widget category headers. + +Default: +pass:[white]+ + +[[colors.completion.even.bg]] +== colors.completion.even.bg +Background color of the completion widget for even rows. + +Default: +pass:[#333333]+ + +[[colors.completion.fg]] +== colors.completion.fg +Text color of the completion widget. + +Default: +pass:[white]+ + +[[colors.completion.item.selected.bg]] +== colors.completion.item.selected.bg +Background color of the selected completion item. + +Default: +pass:[#e8c000]+ + +[[colors.completion.item.selected.border.bottom]] +== colors.completion.item.selected.border.bottom +Bottom border color of the selected completion item. + +Default: +pass:[#bbbb00]+ + +[[colors.completion.item.selected.border.top]] +== colors.completion.item.selected.border.top +Top border color of the completion widget category headers. + +Default: +pass:[#bbbb00]+ + +[[colors.completion.item.selected.fg]] +== colors.completion.item.selected.fg +Foreground color of the selected completion item. + +Default: +pass:[black]+ + +[[colors.completion.match.fg]] +== colors.completion.match.fg +Foreground color of the matched text in the completion. + +Default: +pass:[#ff4444]+ + +[[colors.completion.odd.bg]] +== colors.completion.odd.bg +Background color of the completion widget for odd rows. + +Default: +pass:[#444444]+ + +[[colors.completion.scrollbar.bg]] +== colors.completion.scrollbar.bg +Color of the scrollbar in completion view + +Default: +pass:[#333333]+ + +[[colors.completion.scrollbar.fg]] +== colors.completion.scrollbar.fg +Color of the scrollbar handle in completion view. + +Default: +pass:[white]+ + +[[colors.downloads.bar.bg]] +== colors.downloads.bar.bg +Background color for the download bar. + +Default: +pass:[black]+ + +[[colors.downloads.error.bg]] +== colors.downloads.error.bg +Background color for downloads with errors. + +Default: +pass:[red]+ + +[[colors.downloads.error.fg]] +== colors.downloads.error.fg +Foreground color for downloads with errors. + +Default: +pass:[white]+ + +[[colors.downloads.start.bg]] +== colors.downloads.start.bg +Color gradient start for download backgrounds. + +Default: +pass:[#0000aa]+ + +[[colors.downloads.start.fg]] +== colors.downloads.start.fg +Color gradient start for download text. + +Default: +pass:[white]+ + +[[colors.downloads.stop.bg]] +== colors.downloads.stop.bg +Color gradient stop for download backgrounds. + +Default: +pass:[#00aa00]+ + +[[colors.downloads.stop.fg]] +== colors.downloads.stop.fg +Color gradient end for download text. + +Default: +pass:[white]+ + +[[colors.downloads.system.bg]] +== colors.downloads.system.bg +Color gradient interpolation system for download backgrounds. Valid values: - * +host+ - * +path+ - * +query+ - * +anchor+ + * +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: +pass:[path,query]+ +Default: +pass:[rgb]+ -== ui -General options related to the user interface. - -[[ui-history-session-interval]] -=== history-session-interval -The maximum time in minutes between two history items for them to be considered being from the same session. Use -1 to disable separation. - -Default: +pass:[30]+ - -[[ui-zoom-levels]] -=== zoom-levels -The available zoom levels, separated by commas. - -Default: +pass:[25%,33%,50%,67%,75%,90%,100%,110%,125%,150%,175%,200%,250%,300%,400%,500%]+ - -[[ui-default-zoom]] -=== default-zoom -The default zoom level. - -Default: +pass:[100%]+ - -[[ui-downloads-position]] -=== downloads-position -Where to show the downloaded files. +[[colors.downloads.system.fg]] +== colors.downloads.system.fg +Color gradient interpolation system for download text. Valid values: - * +top+ - * +bottom+ + * +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: +pass:[top]+ +Default: +pass:[rgb]+ -[[ui-status-position]] -=== status-position -The position of the status bar. +[[colors.hints.bg]] +== colors.hints.bg +Background color for hints. Note that you can use a `rgba(...)` value for transparency. + +Default: +pass:[qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 rgba(255, 247, 133, 0.8), stop:1 rgba(255, 197, 66, 0.8))]+ + +[[colors.hints.fg]] +== colors.hints.fg +Font color for hints. + +Default: +pass:[black]+ + +[[colors.hints.match.fg]] +== colors.hints.match.fg +Font color for the matched part of hints. + +Default: +pass:[green]+ + +[[colors.keyhint.bg]] +== colors.keyhint.bg +Background color of the keyhint widget. + +Default: +pass:[rgba(0, 0, 0, 80%)]+ + +[[colors.keyhint.fg]] +== colors.keyhint.fg +Text color for the keyhint widget. + +Default: +pass:[#FFFFFF]+ + +[[colors.keyhint.suffix.fg]] +== colors.keyhint.suffix.fg +Highlight color for keys to complete the current keychain + +Default: +pass:[#FFFF00]+ + +[[colors.messages.error.bg]] +== colors.messages.error.bg +Background color of an error message. + +Default: +pass:[red]+ + +[[colors.messages.error.border]] +== colors.messages.error.border +Border color of an error message. + +Default: +pass:[#bb0000]+ + +[[colors.messages.error.fg]] +== colors.messages.error.fg +Foreground color of an error message. + +Default: +pass:[white]+ + +[[colors.messages.info.bg]] +== colors.messages.info.bg +Background color of an info message. + +Default: +pass:[black]+ + +[[colors.messages.info.border]] +== colors.messages.info.border +Border color of an info message. + +Default: +pass:[#333333]+ + +[[colors.messages.info.fg]] +== colors.messages.info.fg +Foreground color an info message. + +Default: +pass:[white]+ + +[[colors.messages.warning.bg]] +== colors.messages.warning.bg +Background color of a warning message. + +Default: +pass:[darkorange]+ + +[[colors.messages.warning.border]] +== colors.messages.warning.border +Border color of an error message. + +Default: +pass:[#d47300]+ + +[[colors.messages.warning.fg]] +== colors.messages.warning.fg +Foreground color a warning message. + +Default: +pass:[white]+ + +[[colors.prompts.bg]] +== colors.prompts.bg +Background color for prompts. + +Default: +pass:[darkblue]+ + +[[colors.prompts.fg]] +== colors.prompts.fg +Foreground color for prompts. + +Default: +pass:[white]+ + +[[colors.prompts.selected.bg]] +== colors.prompts.selected.bg +Background color for the selected item in filename prompts. + +Default: +pass:[#308cc6]+ + +[[colors.statusbar.caret.bg]] +== colors.statusbar.caret.bg +Background color of the statusbar in caret mode. + +Default: +pass:[purple]+ + +[[colors.statusbar.caret.fg]] +== colors.statusbar.caret.fg +Foreground color of the statusbar in caret mode. + +Default: +pass:[white]+ + +[[colors.statusbar.caret.selection.bg]] +== colors.statusbar.caret.selection.bg +Background color of the statusbar in caret mode with a selection + +Default: +pass:[#a12dff]+ + +[[colors.statusbar.caret.selection.fg]] +== colors.statusbar.caret.selection.fg +Foreground color of the statusbar in caret mode with a selection + +Default: +pass:[white]+ + +[[colors.statusbar.command.bg]] +== colors.statusbar.command.bg +Background color of the statusbar in command mode. + +Default: +pass:[black]+ + +[[colors.statusbar.command.fg]] +== colors.statusbar.command.fg +Foreground color of the statusbar in command mode. + +Default: +pass:[white]+ + +[[colors.statusbar.command.private.bg]] +== colors.statusbar.command.private.bg +Background color of the statusbar in private browsing + command mode. + +Default: +pass:[grey]+ + +[[colors.statusbar.command.private.fg]] +== colors.statusbar.command.private.fg +Foreground color of the statusbar in private browsing + command mode. + +Default: +pass:[white]+ + +[[colors.statusbar.insert.bg]] +== colors.statusbar.insert.bg +Background color of the statusbar in insert mode. + +Default: +pass:[darkgreen]+ + +[[colors.statusbar.insert.fg]] +== colors.statusbar.insert.fg +Foreground color of the statusbar in insert mode. + +Default: +pass:[white]+ + +[[colors.statusbar.normal.bg]] +== colors.statusbar.normal.bg +Background color of the statusbar. + +Default: +pass:[black]+ + +[[colors.statusbar.normal.fg]] +== colors.statusbar.normal.fg +Foreground color of the statusbar. + +Default: +pass:[white]+ + +[[colors.statusbar.private.bg]] +== colors.statusbar.private.bg +Background color of the statusbar in private browsing mode. + +Default: +pass:[#666666]+ + +[[colors.statusbar.private.fg]] +== colors.statusbar.private.fg +Foreground color of the statusbar in private browsing mode. + +Default: +pass:[white]+ + +[[colors.statusbar.progress.bg]] +== colors.statusbar.progress.bg +Background color of the progress bar. + +Default: +pass:[white]+ + +[[colors.statusbar.url.error.fg]] +== colors.statusbar.url.error.fg +Foreground color of the URL in the statusbar on error. + +Default: +pass:[orange]+ + +[[colors.statusbar.url.fg]] +== colors.statusbar.url.fg +Default foreground color of the URL in the statusbar. + +Default: +pass:[white]+ + +[[colors.statusbar.url.hover.fg]] +== colors.statusbar.url.hover.fg +Foreground color of the URL in the statusbar for hovered links. + +Default: +pass:[aqua]+ + +[[colors.statusbar.url.success.http.fg]] +== colors.statusbar.url.success.http.fg +Foreground color of the URL in the statusbar on successful load (http). + +Default: +pass:[white]+ + +[[colors.statusbar.url.success.https.fg]] +== colors.statusbar.url.success.https.fg +Foreground color of the URL in the statusbar on successful load (https). + +Default: +pass:[lime]+ + +[[colors.statusbar.url.warn.fg]] +== colors.statusbar.url.warn.fg +Foreground color of the URL in the statusbar when there's a warning. + +Default: +pass:[yellow]+ + +[[colors.tabs.bar.bg]] +== colors.tabs.bar.bg +Background color of the tab bar. + +Default: +pass:[#555555]+ + +[[colors.tabs.even.bg]] +== colors.tabs.even.bg +Background color of unselected even tabs. + +Default: +pass:[darkgrey]+ + +[[colors.tabs.even.fg]] +== colors.tabs.even.fg +Foreground color of unselected even tabs. + +Default: +pass:[white]+ + +[[colors.tabs.indicator.error]] +== colors.tabs.indicator.error +Color for the tab indicator on errors.. + +Default: +pass:[#ff0000]+ + +[[colors.tabs.indicator.start]] +== colors.tabs.indicator.start +Color gradient start for the tab indicator. + +Default: +pass:[#0000aa]+ + +[[colors.tabs.indicator.stop]] +== colors.tabs.indicator.stop +Color gradient end for the tab indicator. + +Default: +pass:[#00aa00]+ + +[[colors.tabs.indicator.system]] +== colors.tabs.indicator.system +Color gradient interpolation system for the tab indicator. Valid values: - * +top+ - * +bottom+ + * +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: +pass:[bottom]+ +Default: +pass:[rgb]+ -[[ui-message-timeout]] -=== message-timeout -Time (in ms) to show messages in the statusbar for. -Set to 0 to never clear messages. +[[colors.tabs.odd.bg]] +== colors.tabs.odd.bg +Background color of unselected odd tabs. -Default: +pass:[2000]+ +Default: +pass:[grey]+ -[[ui-message-unfocused]] -=== message-unfocused -Whether to show messages in unfocused windows. +[[colors.tabs.odd.fg]] +== colors.tabs.odd.fg +Foreground color of unselected odd tabs. -Valid values: +Default: +pass:[white]+ - * +true+ - * +false+ +[[colors.tabs.selected.even.bg]] +== colors.tabs.selected.even.bg +Background color of selected even tabs. -Default: +pass:[false]+ +Default: +pass:[black]+ -[[ui-confirm-quit]] -=== confirm-quit -Whether to confirm quitting the application. +[[colors.tabs.selected.even.fg]] +== colors.tabs.selected.even.fg +Foreground color of selected even tabs. -Valid values: +Default: +pass:[white]+ - * +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. +[[colors.tabs.selected.odd.bg]] +== colors.tabs.selected.odd.bg +Background color of selected odd tabs. -Default: +pass:[never]+ +Default: +pass:[black]+ -[[ui-zoom-text-only]] -=== zoom-text-only -Whether the zoom factor on a frame applies only to the text or to all content. +[[colors.tabs.selected.odd.fg]] +== colors.tabs.selected.odd.fg +Foreground color of selected odd tabs. -Valid values: +Default: +pass:[white]+ - * +true+ - * +false+ +[[colors.webpage.bg]] +== colors.webpage.bg +Background color for webpages if unset (or empty to use the theme's color) -Default: +pass:[false]+ +Default: +pass:[white]+ -This setting is only available with the QtWebKit backend. +[[completion.cmd_history_max_items]] +== completion.cmd_history_max_items +How many commands to save in the command history. +0: no history / -1: unlimited -[[ui-frame-flattening]] -=== frame-flattening -Whether to expand each subframe to its contents. +Default: +pass:[100]+ -This will flatten all the frames to become one scrollable page. +[[completion.height]] +== completion.height +The height of the completion, in px or as percentage of the window. -Valid values: +Default: +pass:[50%]+ - * +true+ - * +false+ - -Default: +pass:[false]+ - -This setting is only available with the QtWebKit backend. - -[[ui-user-stylesheet]] -=== user-stylesheet -User stylesheet to use (absolute filename or filename relative to the config directory). Will expand environment variables. - -Default: empty - -[[ui-hide-scrollbar]] -=== hide-scrollbar -Hide the main scrollbar. +[[completion.quick]] +== completion.quick +Whether to move on to the next part when there's only one possible completion left. Valid values: @@ -639,220 +865,20 @@ Valid values: Default: +pass:[true]+ -[[ui-smooth-scrolling]] -=== smooth-scrolling -Whether to enable smooth scrolling for web pages. Note smooth scrolling does not work with the :scroll-px command. +[[completion.scrollbar.padding]] +== completion.scrollbar.padding +Padding of scrollbar handle in completion window (in px). -Valid values: +Default: +pass:[2]+ - * +true+ - * +false+ +[[completion.scrollbar.width]] +== completion.scrollbar.width +Width of the scrollbar in the completion window (in px). -Default: +pass:[false]+ +Default: +pass:[12]+ -[[ui-remove-finished-downloads]] -=== remove-finished-downloads -Number of milliseconds to wait before removing finished downloads. Will not be removed if value is -1. - -Default: +pass:[-1]+ - -[[ui-hide-statusbar]] -=== hide-statusbar -Whether to hide the statusbar unless a message is shown. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[ui-statusbar-padding]] -=== statusbar-padding -Padding for statusbar (top, bottom, left, right). - -Default: +pass:[1,1,0,0]+ - -[[ui-window-title-format]] -=== window-title-format -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. - - -Default: +pass:[{perc}{title}{title_sep}qutebrowser]+ - -[[ui-modal-js-dialog]] -=== modal-js-dialog -Use standard JavaScript modal dialog for alert() and confirm() - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[ui-hide-wayland-decoration]] -=== hide-wayland-decoration -Hide the window decoration when using wayland (requires restart) - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[ui-keyhint-blacklist]] -=== keyhint-blacklist -Keychains that shouldn't be shown in the keyhint dialog - -Globs are supported, so ';*' will blacklist all keychainsstarting with ';'. Use '*' to disable keyhints - -Default: empty - -[[ui-keyhint-delay]] -=== keyhint-delay -Time from pressing a key to seeing the keyhint dialog (ms) - -Default: +pass:[500]+ - -[[ui-prompt-radius]] -=== prompt-radius -The rounding radius for the edges of prompts. - -Default: +pass:[8]+ - -[[ui-prompt-filebrowser]] -=== prompt-filebrowser -Show a filebrowser in upload/download prompts. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -== network -Settings related to the network. - -[[network-do-not-track]] -=== do-not-track -Value to send in the `DNT` header. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[network-accept-language]] -=== accept-language -Value to send in the `accept-language` header. - -Default: +pass:[en-US,en]+ - -[[network-referer-header]] -=== referer-header -Send the Referer header - -Valid values: - - * +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: +pass:[same-domain]+ - -This setting is only available with the QtWebKit backend. - -[[network-user-agent]] -=== user-agent -User agent to send. Empty to send the default. - -Default: empty - -[[network-proxy]] -=== proxy -The proxy to use. - -In addition to the listed values, you can use a `socks://...` or `http://...` URL. - -This setting only works with Qt 5.8 or newer when using the QtWebEngine backend. - -Valid values: - - * +system+: Use the system wide proxy. - * +none+: Don't use any proxy - -Default: +pass:[system]+ - -[[network-proxy-dns-requests]] -=== proxy-dns-requests -Whether to send DNS requests over the configured proxy. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -This setting is only available with the QtWebKit backend. - -[[network-ssl-strict]] -=== ssl-strict -Whether to validate SSL handshakes. - -Valid values: - - * +true+ - * +false+ - * +ask+ - -Default: +pass:[ask]+ - -[[network-dns-prefetch]] -=== dns-prefetch -Whether to try to pre-fetch DNS entries to speed up browsing. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -This setting is only available with the QtWebKit backend. - -[[network-custom-headers]] -=== custom-headers -Set custom headers for qutebrowser HTTP requests. - -Default: empty - -[[network-netrc-file]] -=== netrc-file -Set location of a netrc-file for HTTP authentication. If empty, ~/.netrc is used. - -Default: empty - -== completion -Options related to completion and command history. - -[[completion-show]] -=== show +[[completion.show]] +== completion.show When to show the autocompletion window. Valid values: @@ -863,59 +889,8 @@ Valid values: Default: +pass:[always]+ -[[completion-download-path-suggestion]] -=== download-path-suggestion -What to display in the download filename input. - -Valid values: - - * +path+: Show only the download path. - * +filename+: Show only download filename. - * +both+: Show download path and filename. - -Default: +pass:[path]+ - -[[completion-timestamp-format]] -=== timestamp-format -How to format timestamps (e.g. for history) - -Default: +pass:[%Y-%m-%d]+ - -[[completion-height]] -=== height -The height of the completion, in px or as percentage of the window. - -Default: +pass:[50%]+ - -[[completion-cmd-history-max-items]] -=== cmd-history-max-items -How many commands to save in the command history. - -0: no history / -1: unlimited - -Default: +pass:[100]+ - -[[completion-web-history-max-items]] -=== web-history-max-items -How many URLs to show in the web history. - -0: no history / -1: unlimited - -Default: +pass:[1000]+ - -[[completion-quick-complete]] -=== quick-complete -Whether to move on to the next part when there's only one possible completion left. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[completion-shrink]] -=== shrink +[[completion.shrink]] +== completion.shrink Whether to shrink the completion to be smaller than the configured size if there are no scrollbars. Valid values: @@ -923,620 +898,48 @@ Valid values: * +true+ * +false+ -Default: +pass:[false]+ - -[[completion-scrollbar-width]] -=== scrollbar-width -Width of the scrollbar in the completion window (in px). - -Default: +pass:[12]+ - -[[completion-scrollbar-padding]] -=== scrollbar-padding -Padding of scrollbar handle in completion window (in px). - -Default: +pass:[2]+ - -== input -Options related to input modes. - -[[input-timeout]] -=== timeout -Timeout (in milliseconds) for ambiguous key bindings. - -If the current input forms both a complete match and a partial match, the complete match will be executed after this time. - -Default: +pass:[500]+ - -[[input-partial-timeout]] -=== partial-timeout -Timeout (in milliseconds) for partially typed key bindings. - -If the current input forms only partial matches, the keystring will be cleared after this time. - -Default: +pass:[5000]+ - -[[input-insert-mode-on-plugins]] -=== insert-mode-on-plugins -Whether to switch to insert mode when clicking flash and other plugins. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[input-auto-leave-insert-mode]] -=== auto-leave-insert-mode -Whether to leave insert mode if a non-editable element is clicked. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[input-auto-insert-mode]] -=== auto-insert-mode -Whether to automatically enter insert mode if an editable element is focused after page load. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[input-forward-unbound-keys]] -=== forward-unbound-keys -Whether to forward unbound keys to the webview in normal mode. - -Valid values: - - * +all+: Forward all unbound keys. - * +auto+: Forward unbound non-alphanumeric keys. - * +none+: Don't forward any keys. - -Default: +pass:[auto]+ - -[[input-spatial-navigation]] -=== spatial-navigation -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: +pass:[false]+ - -[[input-links-included-in-focus-chain]] -=== links-included-in-focus-chain -Whether hyperlinks should be included in the keyboard focus chain. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[input-rocker-gestures]] -=== rocker-gestures -Whether to enable Opera-like mouse rocker gestures. This disables the context menu. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[input-mouse-zoom-divider]] -=== mouse-zoom-divider -How much to divide the mouse wheel movements to translate them into zoom increments. - -Default: +pass:[512]+ - -== tabs -Configuration of the tab bar. - -[[tabs-background-tabs]] -=== background-tabs -Whether to open new tabs (middleclick/ctrl+click) in background. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[tabs-select-on-remove]] -=== select-on-remove -Which tab to select when the focused tab is removed. - -Valid values: - - * +prev+: Select the tab which came before the closed one (left in horizontal, above in vertical). - * +next+: Select the tab which came after the closed one (right in horizontal, below in vertical). - * +last-used+: Select the previously selected tab. - -Default: +pass:[next]+ - -[[tabs-new-tab-position]] -=== new-tab-position -How new tabs are positioned. - -Valid values: - - * +prev+: Before the current tab. - * +next+: After the current tab. - * +first+: At the beginning. - * +last+: At the end. - -Default: +pass:[next]+ - -[[tabs-new-tab-position-explicit]] -=== new-tab-position-explicit -How new tabs opened explicitly are positioned. - -Valid values: - - * +prev+: Before the current tab. - * +next+: After the current tab. - * +first+: At the beginning. - * +last+: At the end. - -Default: +pass:[last]+ - -[[tabs-last-close]] -=== last-close -Behavior when the last tab is closed. - -Valid values: - - * +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: +pass:[ignore]+ - -[[tabs-show]] -=== show -When to show the tab bar - -Valid values: - - * +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: +pass:[always]+ - -[[tabs-show-switching-delay]] -=== show-switching-delay -Time to show the tab bar before hiding it when tabs->show is set to 'switching'. - -Default: +pass:[800]+ - -[[tabs-wrap]] -=== wrap -Whether to wrap when changing tabs. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[tabs-movable]] -=== movable -Whether tabs should be movable. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[tabs-close-mouse-button]] -=== close-mouse-button -On which mouse button to close tabs. - -Valid values: - - * +right+: Close tabs on right-click. - * +middle+: Close tabs on middle-click. - * +none+: Don't close tabs using the mouse. - -Default: +pass:[middle]+ - -[[tabs-position]] -=== position -The position of the tab bar. - -Valid values: - - * +top+ - * +bottom+ - * +left+ - * +right+ - -Default: +pass:[top]+ - -[[tabs-show-favicons]] -=== show-favicons -Whether to show favicons in the tab bar. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[tabs-favicon-scale]] -=== favicon-scale -Scale for favicons in the tab bar. The tab size is unchanged, so big favicons also require extra `tabs->padding`. - -Default: +pass:[1.0]+ - -[[tabs-width]] -=== width -The width of the tab bar if it's vertical, in px or as percentage of the window. - -Default: +pass:[20%]+ - -[[tabs-pinned-width]] -=== pinned-width -The width for pinned tabs with a horizontal tabbar, in px. - -Default: +pass:[43]+ - -[[tabs-indicator-width]] -=== indicator-width -Width of the progress indicator (0 to disable). - -Default: +pass:[3]+ - -[[tabs-tabs-are-windows]] -=== tabs-are-windows -Whether to open windows instead of tabs. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[tabs-title-format]] -=== title-format -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. - - -Default: +pass:[{index}: {title}]+ - -[[tabs-title-format-pinned]] -=== title-format-pinned -The format to use for the tab title for pinned tabs. The same placeholders like for title-format are defined. - -Default: +pass:[{index}]+ - -[[tabs-title-alignment]] -=== title-alignment -Alignment of the text inside of tabs - -Valid values: - - * +left+ - * +right+ - * +center+ - -Default: +pass:[left]+ - -[[tabs-mousewheel-tab-switching]] -=== mousewheel-tab-switching -Switch between tabs using the mouse wheel. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[tabs-padding]] -=== padding -Padding for tabs (top, bottom, left, right). - -Default: +pass:[0,0,5,5]+ - -[[tabs-indicator-padding]] -=== indicator-padding -Padding for indicators (top, bottom, left, right). - -Default: +pass:[2,2,0,4]+ - -== storage -Settings related to cache and storage. - -[[storage-download-directory]] -=== download-directory -The directory to save downloads to. An empty value selects a sensible os-specific default. Will expand environment variables. - Default: empty -[[storage-prompt-download-directory]] -=== prompt-download-directory -Whether to prompt the user for the download location. -If set to false, 'download-directory' will be used. +[[completion.timestamp_format]] +== completion.timestamp_format +How to format timestamps (e.g. for history) + +Default: +pass:[%Y-%m-%d]+ + +[[completion.web_history_max_items]] +== completion.web_history_max_items +How many URLs to show in the web history. +0: no history / -1: unlimited + +Default: +pass:[1000]+ + +[[confirm_quit]] +== confirm_quit +Whether to confirm quitting the application. Valid values: - * +true+ - * +false+ + * +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: +pass:[true]+ +Default: +pass:[["never"]]+ -[[storage-remember-download-directory]] -=== remember-download-directory -Whether to remember the last used download directory. +[[content.accept_language]] +== content.accept_language +Value to send in the `accept-language` header. -Valid values: +Default: +pass:[en-US,en]+ - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[storage-maximum-pages-in-cache]] -=== maximum-pages-in-cache -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: +pass:[0]+ - -This setting is only available with the QtWebKit backend. - -[[storage-offline-web-application-cache]] -=== offline-web-application-cache -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: +pass:[true]+ - -This setting is only available with the QtWebKit backend. - -[[storage-local-storage]] -=== local-storage -Whether support for HTML 5 local storage and Web SQL is enabled. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[storage-cache-size]] -=== cache-size +[[content.cache_size]] +== content.cache_size Size of the HTTP network cache. Empty to use the default value. Default: empty -== content -Loaded plugins/scripts and allowed actions. - -[[content-allow-images]] -=== allow-images -Whether images are automatically loaded in web pages. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[content-allow-javascript]] -=== allow-javascript -Enables or disables the running of JavaScript programs. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[content-allow-plugins]] -=== allow-plugins -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: +pass:[false]+ - -[[content-webgl]] -=== webgl -Enables or disables WebGL. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[content-hyperlink-auditing]] -=== hyperlink-auditing -Enable or disable hyperlink auditing (). - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[content-geolocation]] -=== geolocation -Allow websites to request geolocations. - -Valid values: - - * +true+ - * +false+ - * +ask+ - -Default: +pass:[ask]+ - -[[content-notifications]] -=== notifications -Allow websites to show notifications. - -Valid values: - - * +true+ - * +false+ - * +ask+ - -Default: +pass:[ask]+ - -[[content-media-capture]] -=== media-capture -Allow websites to record audio/video. - -Valid values: - - * +true+ - * +false+ - * +ask+ - -Default: +pass:[ask]+ - -This setting is only available with the QtWebEngine backend. - -[[content-javascript-can-open-windows-automatically]] -=== javascript-can-open-windows-automatically -Whether JavaScript programs can open new windows without user interaction. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[content-javascript-can-close-windows]] -=== javascript-can-close-windows -Whether JavaScript programs can close windows. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -This setting is only available with the QtWebKit backend. - -[[content-javascript-can-access-clipboard]] -=== javascript-can-access-clipboard -Whether JavaScript programs can read or write to the clipboard. -With QtWebEngine, writing the clipboard as response to a user interaction is always allowed. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[content-ignore-javascript-prompt]] -=== ignore-javascript-prompt -Whether all javascript prompts should be ignored. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[content-ignore-javascript-alert]] -=== ignore-javascript-alert -Whether all javascript alerts should be ignored. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[content-local-content-can-access-remote-urls]] -=== local-content-can-access-remote-urls -Whether locally loaded documents are allowed to access remote urls. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[false]+ - -[[content-local-content-can-access-file-urls]] -=== local-content-can-access-file-urls -Whether locally loaded documents are allowed to access other local urls. - -Valid values: - - * +true+ - * +false+ - -Default: +pass:[true]+ - -[[content-cookies-accept]] -=== cookies-accept +[[content.cookies.accept]] +== content.cookies.accept Control which cookies to accept. Valid values: @@ -1550,8 +953,8 @@ Default: +pass:[no-3rdparty]+ This setting is only available with the QtWebKit backend. -[[content-cookies-store]] -=== cookies-store +[[content.cookies.store]] +== content.cookies.store Whether to store cookies. Note this option needs a restart with QtWebEngine on Qt < 5.9. Valid values: @@ -1561,20 +964,85 @@ Valid values: Default: +pass:[true]+ -[[content-host-block-lists]] -=== host-block-lists -List of URLs of lists which contain hosts to block. +[[content.custom_headers]] +== content.custom_headers +Set custom headers for qutebrowser HTTP requests. -The file can be in one of the following formats: +Default: empty -- 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). +[[content.default_encoding]] +== content.default_encoding +Default encoding to use for websites. +The encoding must be a string describing an encoding such as _utf-8_, _iso-8859-1_, etc. -Default: +pass:[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]+ +Default: +pass:[iso-8859-1]+ -[[content-host-blocking-enabled]] -=== host-blocking-enabled +[[content.developer_extras]] +== content.developer_extras +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. For QtWebEngine, see `qutebrowser --help` instead. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +This setting is only available with the QtWebKit backend. + +[[content.dns_prefetch]] +== content.dns_prefetch +Whether to try to pre-fetch DNS entries to speed up browsing. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +This setting is only available with the QtWebKit backend. + +[[content.do_not_track]] +== content.do_not_track +Value to send in the `DNT` header. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[content.frame_flattening]] +== content.frame_flattening +Whether to expand each subframe to its contents. +This will flatten all the frames to become one scrollable page. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +This setting is only available with the QtWebKit backend. + +[[content.geolocation]] +== content.geolocation +Allow websites to request geolocations. + +Valid values: + + * +true+ + * +false+ + * +ask+ + +Default: +pass:[ask]+ + +[[content.host_blocking.enabled]] +== content.host_blocking.enabled Whether host blocking is enabled. Valid values: @@ -1584,65 +1052,42 @@ Valid values: Default: +pass:[true]+ -[[content-host-blocking-whitelist]] -=== host-blocking-whitelist +[[content.host_blocking.lists]] +== content.host_blocking.lists +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: +pass:[["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"]]+ + +[[content.host_blocking.whitelist]] +== content.host_blocking.whitelist 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: +pass:[piwik.org]+ +Default: +pass:[["piwik.org"]]+ -[[content-enable-pdfjs]] -=== enable-pdfjs -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. +[[content.hyperlink_auditing]] +== content.hyperlink_auditing +Enable or disable hyperlink auditing (``). Valid values: * +true+ * +false+ -Default: +pass:[false]+ +Default: empty -== hints -Hinting settings. - -[[hints-border]] -=== border -CSS border value for hints. - -Default: +pass:[1px solid #E3BE23]+ - -[[hints-mode]] -=== mode -Mode to use for hints. - -Valid values: - - * +number+: Use numeric hints. (In this mode you can also type letters form the hinted element to filter and reduce the number of elements that are hinted.) - * +letter+: Use the chars in the hints -> chars setting. - * +word+: Use hints words based on the html elements and the extra words. - -Default: +pass:[letter]+ - -[[hints-chars]] -=== chars -Chars used for hint strings. - -Default: +pass:[asdfghjkl]+ - -[[hints-min-chars]] -=== min-chars -Minimum number of chars used for hint strings. - -Default: +pass:[1]+ - -[[hints-scatter]] -=== scatter -Whether to scatter hint key chains (like Vimium) or not (like dwb). Ignored for number hints. +[[content.images]] +== content.images +Whether images are automatically loaded in web pages. Valid values: @@ -1651,25 +1096,548 @@ Valid values: Default: +pass:[true]+ -[[hints-uppercase]] -=== uppercase -Make chars in hint strings uppercase. +[[content.javascript.alert]] +== content.javascript.alert +Show javascript alerts. Valid values: * +true+ * +false+ -Default: +pass:[false]+ +Default: +pass:[true]+ -[[hints-dictionary]] -=== dictionary -The dictionary file to be used by the word hints. +[[content.javascript.can_access_clipboard]] +== content.javascript.can_access_clipboard +Whether JavaScript programs can read or write to the clipboard. +With QtWebEngine, writing the clipboard as response to a user interaction is always allowed. -Default: +pass:[/usr/share/dict/words]+ +Valid values: -[[hints-auto-follow]] -=== auto-follow + * +true+ + * +false+ + +Default: empty + +[[content.javascript.can_close_windows]] +== content.javascript.can_close_windows +Whether JavaScript programs can close windows. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +This setting is only available with the QtWebKit backend. + +[[content.javascript.can_open_windows_automatically]] +== content.javascript.can_open_windows_automatically +Whether JavaScript programs can open new windows without user interaction. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[content.javascript.enabled]] +== content.javascript.enabled +Enables or disables the running of JavaScript programs. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[content.javascript.log]] +== content.javascript.log +How to log javascript console messages. + +Valid values: + + * +none+: Don't log messages. + * +debug+: Log messages with debug level. + * +info+: Log messages with info level. + +Default: +pass:[debug]+ + +[[content.javascript.modal_dialog]] +== content.javascript.modal_dialog +Use the standard JavaScript modal dialog for `alert()` and `confirm()` + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[content.javascript.prompt]] +== content.javascript.prompt +Show javascript prompts. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[content.local_content_can_access_file_urls]] +== content.local_content_can_access_file_urls +Whether locally loaded documents are allowed to access other local urls. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[content.local_content_can_access_remote_urls]] +== content.local_content_can_access_remote_urls +Whether locally loaded documents are allowed to access remote urls. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[content.local_storage]] +== content.local_storage +Whether support for HTML 5 local storage and Web SQL is enabled. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[content.maximum_pages_in_cache]] +== content.maximum_pages_in_cache +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: empty + +This setting is only available with the QtWebKit backend. + +[[content.media_capture]] +== content.media_capture +Allow websites to record audio/video. + +Valid values: + + * +true+ + * +false+ + * +ask+ + +Default: +pass:[ask]+ + +This setting is only available with the QtWebEngine backend. + +[[content.netrc_file]] +== content.netrc_file +Location of a netrc-file for HTTP authentication. +If unset, `~/.netrc` is used. + +Default: empty + +[[content.notifications]] +== content.notifications +Allow websites to show notifications. + +Valid values: + + * +true+ + * +false+ + * +ask+ + +Default: +pass:[ask]+ + +[[content.offline_web_application_cache]] +== content.offline_web_application_cache +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: +pass:[true]+ + +This setting is only available with the QtWebKit backend. + +[[content.pdfjs]] +== content.pdfjs +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: empty + +[[content.plugins]] +== content.plugins +Enables or disables plugins in Web pages. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[content.print_element_backgrounds]] +== content.print_element_backgrounds +Whether the background color and images are also drawn when the page is printed. +# FIXME:conf This should be added automatically: # This setting only works with Qt 5.8 or newer when using the QtWebEngine backend. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[content.private_browsing]] +== content.private_browsing +Open new windows in private browsing mode which does not record visited pages. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[content.proxy]] +== content.proxy +The proxy to use. +In addition to the listed values, you can use a `socks://...` or `http://...` URL. +# FIXME:conf This should be added automatically: # This setting only works with Qt 5.8 or newer when using the QtWebEngine # backend. + +Valid values: + + * +system+: Use the system wide proxy. + * +none+: Don't use any proxy + +Default: +pass:[system]+ + +[[content.proxy_dns_requests]] +== content.proxy_dns_requests +Whether to send DNS requests over the configured proxy. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +This setting is only available with the QtWebKit backend. + +[[content.referer_header]] +== content.referer_header +Send the Referer header + +Valid values: + + * +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: +pass:[same-domain]+ + +This setting is only available with the QtWebKit backend. + +[[content.ssl_strict]] +== content.ssl_strict +Whether to validate SSL handshakes. + +Valid values: + + * +true+ + * +false+ + * +ask+ + +Default: +pass:[ask]+ + +[[content.user_agent]] +== content.user_agent +User agent to send. Unset to send the default. + +Default: empty + +[[content.user_stylesheet]] +== content.user_stylesheet +User stylesheet to use (absolute filename or filename relative to the config directory). Will expand environment variables. + +Default: empty + +[[content.webgl]] +== content.webgl +Enables or disables WebGL. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[content.xss_auditing]] +== content.xss_auditing +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: empty + +[[default_page]] +== default_page +The page to open if :open -t/-b/-w is used without URL. Use `about:blank` for a blank page. + +Default: +pass:[https://start.duckduckgo.com/]+ + +[[downloads.location.directory]] +== downloads.location.directory +The directory to save downloads to. +If unset, a sensible os-specific default is used. Will expand environment variables. + +Default: empty + +[[downloads.location.prompt]] +== downloads.location.prompt +Whether to prompt the user for the download location. +If set to false, `download-directory` will be used. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[downloads.location.remember]] +== downloads.location.remember +Whether to remember the last used download directory. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[downloads.location.suggestion]] +== downloads.location.suggestion +What to display in the download filename input. + +Valid values: + + * +path+: Show only the download path. + * +filename+: Show only download filename. + * +both+: Show download path and filename. + +Default: +pass:[path]+ + +[[downloads.open_dispatcher]] +== downloads.open_dispatcher +The default program used to open downloads. If unset, the default internal handler is used. +Any `{}` in the string will be expanded to the filename, else the filename will be appended. + +Default: empty + +[[downloads.position]] +== downloads.position +Where to show the downloaded files. + +Valid values: + + * +top+ + * +bottom+ + +Default: +pass:[top]+ + +[[downloads.remove_finished]] +== downloads.remove_finished +Number of milliseconds to wait before removing finished downloads. Will not be removed if value is -1. + +Default: +pass:[-1]+ + +[[editor.command]] +== editor.command +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: +pass:[["gvim", "-f", "{}"]]+ + +[[editor.encoding]] +== editor.encoding +Encoding to use for the editor. + +Default: +pass:[utf-8]+ + +[[fonts.completion.category]] +== fonts.completion.category +Font used in the completion categories. + +Default: +pass:[bold 8pt monospace]+ + +[[fonts.completion.entry]] +== fonts.completion.entry +Font used in the completion widget. + +Default: +pass:[8pt monospace]+ + +[[fonts.debug_console]] +== fonts.debug_console +Font used for the debugging console. + +Default: +pass:[8pt monospace]+ + +[[fonts.downloads]] +== fonts.downloads +Font used for the downloadbar. + +Default: +pass:[8pt monospace]+ + +[[fonts.hints]] +== fonts.hints +Font used for the hints. + +Default: +pass:[bold 13px monospace]+ + +[[fonts.keyhint]] +== fonts.keyhint +Font used in the keyhint widget. + +Default: +pass:[8pt monospace]+ + +[[fonts.messages.error]] +== fonts.messages.error +Font used for error messages. + +Default: +pass:[8pt monospace]+ + +[[fonts.messages.info]] +== fonts.messages.info +Font used for info messages. + +Default: +pass:[8pt monospace]+ + +[[fonts.messages.warning]] +== fonts.messages.warning +Font used for warning messages. + +Default: +pass:[8pt monospace]+ + +[[fonts.monospace]] +== fonts.monospace +Default monospace fonts. + +Default: +pass:[xos4 Terminus, Terminus, Monospace, "DejaVu Sans Mono", Monaco, "Bitstream Vera Sans Mono", "Andale Mono", "Courier New", Courier, "Liberation Mono", monospace, Fixed, Consolas, Terminal]+ + +[[fonts.prompts]] +== fonts.prompts +Font used for prompts. + +Default: +pass:[8pt sans-serif]+ + +[[fonts.statusbar]] +== fonts.statusbar +Font used in the statusbar. + +Default: +pass:[8pt monospace]+ + +[[fonts.tabs]] +== fonts.tabs +Font used in the tab bar. + +Default: +pass:[8pt monospace]+ + +[[fonts.web.family.cursive]] +== fonts.web.family.cursive +Font family for cursive fonts. + +Default: empty + +[[fonts.web.family.fantasy]] +== fonts.web.family.fantasy +Font family for fantasy fonts. + +Default: empty + +[[fonts.web.family.fixed]] +== fonts.web.family.fixed +Font family for fixed fonts. + +Default: empty + +[[fonts.web.family.sans_serif]] +== fonts.web.family.sans_serif +Font family for sans-serif fonts. + +Default: empty + +[[fonts.web.family.serif]] +== fonts.web.family.serif +Font family for serif fonts. + +Default: empty + +[[fonts.web.family.standard]] +== fonts.web.family.standard +Font family for standard fonts. + +Default: empty + +[[fonts.web.size.default]] +== fonts.web.size.default +The default font size for regular text. + +Default: +pass:[16]+ + +[[fonts.web.size.default_fixed]] +== fonts.web.size.default_fixed +The default font size for fixed-pitch text. + +Default: +pass:[13]+ + +[[fonts.web.size.minimum]] +== fonts.web.size.minimum +The hard minimum font size. + +Default: empty + +[[fonts.web.size.minimum_logical]] +== fonts.web.size.minimum_logical +The minimum logical font size that is applied when zooming out. + +Default: +pass:[6]+ + +[[hints.auto_follow]] +== hints.auto_follow Controls when a hint can be automatically followed without the user pressing Enter. Valid values: @@ -1681,26 +1649,32 @@ Valid values: Default: +pass:[unique-match]+ -[[hints-auto-follow-timeout]] -=== auto-follow-timeout +[[hints.auto_follow_timeout]] +== hints.auto_follow_timeout A timeout (in milliseconds) to inhibit normal-mode key bindings after a successful auto-follow. -Default: +pass:[0]+ +Default: empty -[[hints-next-regexes]] -=== next-regexes -A comma-separated list of regexes to use for 'next' links. +[[hints.border]] +== hints.border +CSS border value for hints. -Default: +pass:[\bnext\b,\bmore\b,\bnewer\b,\b[>→≫]\b,\b(>>|»)\b,\bcontinue\b]+ +Default: +pass:[1px solid #E3BE23]+ -[[hints-prev-regexes]] -=== prev-regexes -A comma-separated list of regexes to use for 'prev' links. +[[hints.chars]] +== hints.chars +Chars used for hint strings. -Default: +pass:[\bprev(ious)?\b,\bback\b,\bolder\b,\b[<←≪]\b,\b(<<|«)\b]+ +Default: +pass:[asdfghjkl]+ -[[hints-find-implementation]] -=== find-implementation +[[hints.dictionary]] +== hints.dictionary +The dictionary file to be used by the word hints. + +Default: +pass:[/usr/share/dict/words]+ + +[[hints.find_implementation]] +== hints.find_implementation Which implementation to use to find elements to hint. Valid values: @@ -1710,8 +1684,8 @@ Valid values: Default: +pass:[python]+ -[[hints-hide-unmatched-rapid-hints]] -=== hide-unmatched-rapid-hints +[[hints.hide_unmatched_rapid_hints]] +== hints.hide_unmatched_rapid_hints Controls hiding unmatched hints in rapid mode. Valid values: @@ -1721,649 +1695,610 @@ Valid values: Default: +pass:[true]+ +[[hints.min_chars]] +== hints.min_chars +Minimum number of chars used for hint strings. + +Default: +pass:[1]+ + +[[hints.mode]] +== hints.mode +Mode to use for hints. + +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. + * +word+: Use hints words based on the html elements and the extra words. + +Default: +pass:[letter]+ + +[[hints.next_regexes]] +== hints.next_regexes +A comma-separated list of regexes to use for 'next' links. + +Default: +pass:[["\\bnext\\b", "\\bmore\\b", "\\bnewer\\b", "\\b[>\u2192\u226b]\\b", "\\b(>>|\u00bb)\\b", "\\bcontinue\\b"]]+ + +[[hints.prev_regexes]] +== hints.prev_regexes +A comma-separated list of regexes to use for 'prev' links. + +Default: +pass:[["\\bprev(ious)?\\b", "\\bback\\b", "\\bolder\\b", "\\b[<\u2190\u226a]\\b", "\\b(<<|\u00ab)\\b"]]+ + +[[hints.scatter]] +== hints.scatter +Whether to scatter hint key chains (like Vimium) or not (like dwb). Ignored for number hints. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[hints.uppercase]] +== hints.uppercase +Make chars in hint strings uppercase. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[history_session_interval]] +== history_session_interval +The maximum time in minutes between two history items for them to be considered being from the same session. Use -1 to disable separation. + +Default: +pass:[30]+ + +[[ignore_case]] +== ignore_case +Whether to find text on a page case-insensitively. + +Valid values: + + * +always+: Search case-insensitively + * +never+: Search case-sensitively + * +smart+: Search case-sensitively if there are capital chars + +Default: +pass:[smart]+ + +[[input.ambiguous_timeout]] +== input.ambiguous_timeout +Timeout (in milliseconds) for ambiguous key bindings. +If the current input forms both a complete match and a partial match, the complete match will be executed after this time. + +Default: +pass:[500]+ + +[[input.forward_unbound_keys]] +== input.forward_unbound_keys +Whether to forward unbound keys to the webview in normal mode. + +Valid values: + + * +all+: Forward all unbound keys. + * +auto+: Forward unbound non-alphanumeric keys. + * +none+: Don't forward any keys. + +Default: +pass:[auto]+ + +[[input.insert_mode.auto_leave]] +== input.insert_mode.auto_leave +Whether to leave insert mode if a non-editable element is clicked. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[input.insert_mode.auto_load]] +== input.insert_mode.auto_load +Whether to automatically enter insert mode if an editable element is focused after page load. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[input.insert_mode.plugins]] +== input.insert_mode.plugins +Whether to switch to insert mode when clicking flash and other plugins. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[input.links_included_in_focus_chain]] +== input.links_included_in_focus_chain +Whether hyperlinks should be included in the keyboard focus chain. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[input.partial_timeout]] +== input.partial_timeout +Timeout (in milliseconds) for partially typed key bindings. +If the current input forms only partial matches, the keystring will be cleared after this time. + +Default: +pass:[5000]+ + +[[input.rocker_gestures]] +== input.rocker_gestures +Whether to enable Opera-like mouse rocker gestures. This disables the context menu. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[input.spatial_navigation]] +== input.spatial_navigation +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: empty + +[[keyhint.blacklist]] +== keyhint.blacklist +Keychains that shouldn\'t be shown in the keyhint dialog. +Globs are supported, so `;*` will blacklist all keychains starting with `;`. Use `*` to disable keyhints. + +Default: empty + +[[keyhint.delay]] +== keyhint.delay +Time from pressing a key to seeing the keyhint dialog (ms) + +Default: +pass:[500]+ + +[[messages.timeout]] +== messages.timeout +Time (in ms) to show messages in the statusbar for. +Set to 0 to never clear messages. + +Default: +pass:[2000]+ + +[[messages.unfocused]] +== messages.unfocused +Whether to show messages in unfocused windows. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[new_instance_open_target]] +== new_instance_open_target +How to open links in an existing instance if a new one is launched. + +Valid values: + + * +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: +pass:[tab]+ + +[[new_instance_open_target_window]] +== new_instance_open_target_window +Which window to choose when opening links as new tabs. + +Valid values: + + * +first-opened+: Open new tabs in the first (oldest) opened window. + * +last-opened+: Open new tabs in the last (newest) opened window. + * +last-focused+: Open new tabs in the most recently focused window. + * +last-visible+: Open new tabs in the most recently visible window. + +Default: +pass:[last-focused]+ + +[[prompt.filebrowser]] +== prompt.filebrowser +Show a filebrowser in upload/download prompts. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[prompt.radius]] +== prompt.radius +The rounding radius for the edges of prompts. + +Default: +pass:[8]+ + +[[scrolling.bar]] +== scrolling.bar +Show a scrollbar. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[scrolling.smooth]] +== scrolling.smooth +Whether to enable smooth scrolling for web pages. Note smooth scrolling does not work with the `:scroll-px` command. + +Valid values: + + * +true+ + * +false+ + +Default: empty + +[[searchengines]] == 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. +The searchengine named `DEFAULT` is used when `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. `:open google qutebrowser`. The string `{}` will be replaced by the search term, use `{{` and `}}` for literal `{`/`}` signs. -== aliases -Aliases for commands. -By default, no aliases are defined. Example which adds a new command `:qtb` to open qutebrowsers website: +Default: +pass:[{"DEFAULT": "https://duckduckgo.com/?q={}"}]+ -`qtb = open https://www.qutebrowser.org/` +[[session_default_name]] +== session_default_name +The name of the session to save by default, or unset for the last loaded session. -== colors -Colors used in the UI. -A value can be in one of the following format: +Default: empty - * `#RGB`/`#RRGGBB`/`#RRRGGGBBB`/`#RRRRGGGGBBBB` - * An 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''. +[[start_pages]] +== start_pages +The default page(s) to open at the start. -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'. +Default: +pass:[["https://start.duckduckgo.com"]]+ -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]. - -[[colors-completion.fg]] -=== completion.fg -Text color of the completion widget. - -Default: +pass:[white]+ - -[[colors-completion.bg]] -=== completion.bg -Background color of the completion widget. - -Default: +pass:[#333333]+ - -[[colors-completion.alternate-bg]] -=== completion.alternate-bg -Alternating background color of the completion widget. - -Default: +pass:[#444444]+ - -[[colors-completion.category.fg]] -=== completion.category.fg -Foreground color of completion widget category headers. - -Default: +pass:[white]+ - -[[colors-completion.category.bg]] -=== completion.category.bg -Background color of the completion widget category headers. - -Default: +pass:[qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #888888, stop:1 #505050)]+ - -[[colors-completion.category.border.top]] -=== completion.category.border.top -Top border color of the completion widget category headers. - -Default: +pass:[black]+ - -[[colors-completion.category.border.bottom]] -=== completion.category.border.bottom -Bottom border color of the completion widget category headers. - -Default: +pass:[${completion.category.border.top}]+ - -[[colors-completion.item.selected.fg]] -=== completion.item.selected.fg -Foreground color of the selected completion item. - -Default: +pass:[black]+ - -[[colors-completion.item.selected.bg]] -=== completion.item.selected.bg -Background color of the selected completion item. - -Default: +pass:[#e8c000]+ - -[[colors-completion.item.selected.border.top]] -=== completion.item.selected.border.top -Top border color of the completion widget category headers. - -Default: +pass:[#bbbb00]+ - -[[colors-completion.item.selected.border.bottom]] -=== completion.item.selected.border.bottom -Bottom border color of the selected completion item. - -Default: +pass:[${completion.item.selected.border.top}]+ - -[[colors-completion.match.fg]] -=== completion.match.fg -Foreground color of the matched text in the completion. - -Default: +pass:[#ff4444]+ - -[[colors-completion.scrollbar.fg]] -=== completion.scrollbar.fg -Color of the scrollbar handle in completion view. - -Default: +pass:[${completion.fg}]+ - -[[colors-completion.scrollbar.bg]] -=== completion.scrollbar.bg -Color of the scrollbar in completion view - -Default: +pass:[${completion.bg}]+ - -[[colors-statusbar.fg]] -=== statusbar.fg -Foreground color of the statusbar. - -Default: +pass:[white]+ - -[[colors-statusbar.bg]] -=== statusbar.bg -Background color of the statusbar. - -Default: +pass:[black]+ - -[[colors-statusbar.fg.private]] -=== statusbar.fg.private -Foreground color of the statusbar in private browsing mode. - -Default: +pass:[${statusbar.fg}]+ - -[[colors-statusbar.bg.private]] -=== statusbar.bg.private -Background color of the statusbar in private browsing mode. - -Default: +pass:[#666666]+ - -[[colors-statusbar.fg.insert]] -=== statusbar.fg.insert -Foreground color of the statusbar in insert mode. - -Default: +pass:[${statusbar.fg}]+ - -[[colors-statusbar.bg.insert]] -=== statusbar.bg.insert -Background color of the statusbar in insert mode. - -Default: +pass:[darkgreen]+ - -[[colors-statusbar.fg.command]] -=== statusbar.fg.command -Foreground color of the statusbar in command mode. - -Default: +pass:[${statusbar.fg}]+ - -[[colors-statusbar.bg.command]] -=== statusbar.bg.command -Background color of the statusbar in command mode. - -Default: +pass:[${statusbar.bg}]+ - -[[colors-statusbar.fg.command.private]] -=== statusbar.fg.command.private -Foreground color of the statusbar in private browsing + command mode. - -Default: +pass:[${statusbar.fg.private}]+ - -[[colors-statusbar.bg.command.private]] -=== statusbar.bg.command.private -Background color of the statusbar in private browsing + command mode. - -Default: +pass:[${statusbar.bg.private}]+ - -[[colors-statusbar.fg.caret]] -=== statusbar.fg.caret -Foreground color of the statusbar in caret mode. - -Default: +pass:[${statusbar.fg}]+ - -[[colors-statusbar.bg.caret]] -=== statusbar.bg.caret -Background color of the statusbar in caret mode. - -Default: +pass:[purple]+ - -[[colors-statusbar.fg.caret-selection]] -=== statusbar.fg.caret-selection -Foreground color of the statusbar in caret mode with a selection - -Default: +pass:[${statusbar.fg}]+ - -[[colors-statusbar.bg.caret-selection]] -=== statusbar.bg.caret-selection -Background color of the statusbar in caret mode with a selection - -Default: +pass:[#a12dff]+ - -[[colors-statusbar.progress.bg]] -=== statusbar.progress.bg -Background color of the progress bar. - -Default: +pass:[white]+ - -[[colors-statusbar.url.fg]] -=== statusbar.url.fg -Default foreground color of the URL in the statusbar. - -Default: +pass:[${statusbar.fg}]+ - -[[colors-statusbar.url.fg.success]] -=== statusbar.url.fg.success -Foreground color of the URL in the statusbar on successful load (http). - -Default: +pass:[white]+ - -[[colors-statusbar.url.fg.success.https]] -=== statusbar.url.fg.success.https -Foreground color of the URL in the statusbar on successful load (https). - -Default: +pass:[lime]+ - -[[colors-statusbar.url.fg.error]] -=== statusbar.url.fg.error -Foreground color of the URL in the statusbar on error. - -Default: +pass:[orange]+ - -[[colors-statusbar.url.fg.warn]] -=== statusbar.url.fg.warn -Foreground color of the URL in the statusbar when there's a warning. - -Default: +pass:[yellow]+ - -[[colors-statusbar.url.fg.hover]] -=== statusbar.url.fg.hover -Foreground color of the URL in the statusbar for hovered links. - -Default: +pass:[aqua]+ - -[[colors-tabs.fg.odd]] -=== tabs.fg.odd -Foreground color of unselected odd tabs. - -Default: +pass:[white]+ - -[[colors-tabs.bg.odd]] -=== tabs.bg.odd -Background color of unselected odd tabs. - -Default: +pass:[grey]+ - -[[colors-tabs.fg.even]] -=== tabs.fg.even -Foreground color of unselected even tabs. - -Default: +pass:[white]+ - -[[colors-tabs.bg.even]] -=== tabs.bg.even -Background color of unselected even tabs. - -Default: +pass:[darkgrey]+ - -[[colors-tabs.fg.selected.odd]] -=== tabs.fg.selected.odd -Foreground color of selected odd tabs. - -Default: +pass:[white]+ - -[[colors-tabs.bg.selected.odd]] -=== tabs.bg.selected.odd -Background color of selected odd tabs. - -Default: +pass:[black]+ - -[[colors-tabs.fg.selected.even]] -=== tabs.fg.selected.even -Foreground color of selected even tabs. - -Default: +pass:[${tabs.fg.selected.odd}]+ - -[[colors-tabs.bg.selected.even]] -=== tabs.bg.selected.even -Background color of selected even tabs. - -Default: +pass:[${tabs.bg.selected.odd}]+ - -[[colors-tabs.bg.bar]] -=== tabs.bg.bar -Background color of the tab bar. - -Default: +pass:[#555555]+ - -[[colors-tabs.indicator.start]] -=== tabs.indicator.start -Color gradient start for the tab indicator. - -Default: +pass:[#0000aa]+ - -[[colors-tabs.indicator.stop]] -=== tabs.indicator.stop -Color gradient end for the tab indicator. - -Default: +pass:[#00aa00]+ - -[[colors-tabs.indicator.error]] -=== tabs.indicator.error -Color for the tab indicator on errors.. - -Default: +pass:[#ff0000]+ - -[[colors-tabs.indicator.system]] -=== tabs.indicator.system -Color gradient interpolation system for the tab indicator. +[[statusbar.hide]] +== statusbar.hide +Whether to hide the statusbar unless a message is shown. Valid values: - * +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. + * +true+ + * +false+ -Default: +pass:[rgb]+ +Default: empty -[[colors-hints.fg]] -=== hints.fg -Font color for hints. +[[statusbar.padding]] +== statusbar.padding +Padding for the statusbar. -Default: +pass:[black]+ +Default: +pass:[{"top": 1, "bottom": 1, "left": 0, "right": 0}]+ -[[colors-hints.bg]] -=== hints.bg -Background color for hints. Note that you can use a `rgba(...)` value for transparency. - -Default: +pass:[qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 rgba(255, 247, 133, 0.8), stop:1 rgba(255, 197, 66, 0.8))]+ - -[[colors-hints.fg.match]] -=== hints.fg.match -Font color for the matched part of hints. - -Default: +pass:[green]+ - -[[colors-downloads.bg.bar]] -=== downloads.bg.bar -Background color for the download bar. - -Default: +pass:[black]+ - -[[colors-downloads.fg.start]] -=== downloads.fg.start -Color gradient start for download text. - -Default: +pass:[white]+ - -[[colors-downloads.bg.start]] -=== downloads.bg.start -Color gradient start for download backgrounds. - -Default: +pass:[#0000aa]+ - -[[colors-downloads.fg.stop]] -=== downloads.fg.stop -Color gradient end for download text. - -Default: +pass:[${downloads.fg.start}]+ - -[[colors-downloads.bg.stop]] -=== downloads.bg.stop -Color gradient stop for download backgrounds. - -Default: +pass:[#00aa00]+ - -[[colors-downloads.fg.system]] -=== downloads.fg.system -Color gradient interpolation system for download text. +[[statusbar.position]] +== statusbar.position +The position of the status bar. Valid values: - * +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. + * +top+ + * +bottom+ -Default: +pass:[rgb]+ +Default: +pass:[bottom]+ -[[colors-downloads.bg.system]] -=== downloads.bg.system -Color gradient interpolation system for download backgrounds. +[[tabs.background]] +== tabs.background +Whether to open new tabs (middleclick/ctrl+click) in background. Valid values: - * +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: +pass:[rgb]+ - -[[colors-downloads.fg.error]] -=== downloads.fg.error -Foreground color for downloads with errors. - -Default: +pass:[white]+ - -[[colors-downloads.bg.error]] -=== downloads.bg.error -Background color for downloads with errors. - -Default: +pass:[red]+ - -[[colors-webpage.bg]] -=== webpage.bg -Background color for webpages if unset (or empty to use the theme's color) - -Default: +pass:[white]+ - -[[colors-keyhint.fg]] -=== keyhint.fg -Text color for the keyhint widget. - -Default: +pass:[#FFFFFF]+ - -[[colors-keyhint.fg.suffix]] -=== keyhint.fg.suffix -Highlight color for keys to complete the current keychain - -Default: +pass:[#FFFF00]+ - -[[colors-keyhint.bg]] -=== keyhint.bg -Background color of the keyhint widget. - -Default: +pass:[rgba(0, 0, 0, 80%)]+ - -[[colors-messages.fg.error]] -=== messages.fg.error -Foreground color of an error message. - -Default: +pass:[white]+ - -[[colors-messages.bg.error]] -=== messages.bg.error -Background color of an error message. - -Default: +pass:[red]+ - -[[colors-messages.border.error]] -=== messages.border.error -Border color of an error message. - -Default: +pass:[#bb0000]+ - -[[colors-messages.fg.warning]] -=== messages.fg.warning -Foreground color a warning message. - -Default: +pass:[white]+ - -[[colors-messages.bg.warning]] -=== messages.bg.warning -Background color of a warning message. - -Default: +pass:[darkorange]+ - -[[colors-messages.border.warning]] -=== messages.border.warning -Border color of an error message. - -Default: +pass:[#d47300]+ - -[[colors-messages.fg.info]] -=== messages.fg.info -Foreground color an info message. - -Default: +pass:[white]+ - -[[colors-messages.bg.info]] -=== messages.bg.info -Background color of an info message. - -Default: +pass:[black]+ - -[[colors-messages.border.info]] -=== messages.border.info -Border color of an info message. - -Default: +pass:[#333333]+ - -[[colors-prompts.fg]] -=== prompts.fg -Foreground color for prompts. - -Default: +pass:[white]+ - -[[colors-prompts.bg]] -=== prompts.bg -Background color for prompts. - -Default: +pass:[darkblue]+ - -[[colors-prompts.selected.bg]] -=== prompts.selected.bg -Background color for the selected item in filename prompts. - -Default: +pass:[#308cc6]+ - -== fonts -Fonts used for the UI, with optional style/weight/size. - - * Style: `normal`/`italic`/`oblique` - * Weight: `normal`, `bold`, `100`..`900` - * Size: _number_ `px`/`pt` - -[[fonts-_monospace]] -=== _monospace -Default monospace fonts. - -Default: +pass:[xos4 Terminus, Terminus, Monospace, "DejaVu Sans Mono", Monaco, "Bitstream Vera Sans Mono", "Andale Mono", "Courier New", Courier, "Liberation Mono", monospace, Fixed, Consolas, Terminal]+ - -[[fonts-completion]] -=== completion -Font used in the completion widget. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-completion.category]] -=== completion.category -Font used in the completion categories. - -Default: +pass:[bold ${completion}]+ - -[[fonts-tabbar]] -=== tabbar -Font used in the tab bar. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-statusbar]] -=== statusbar -Font used in the statusbar. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-downloads]] -=== downloads -Font used for the downloadbar. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-hints]] -=== hints -Font used for the hints. - -Default: +pass:[bold 13px ${_monospace}]+ - -[[fonts-debug-console]] -=== debug-console -Font used for the debugging console. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-web-family-standard]] -=== web-family-standard -Font family for standard fonts. + * +true+ + * +false+ Default: empty -[[fonts-web-family-fixed]] -=== web-family-fixed -Font family for fixed fonts. +[[tabs.close_mouse_button]] +== tabs.close_mouse_button +On which mouse button to close tabs. + +Valid values: + + * +right+: Close tabs on right-click. + * +middle+: Close tabs on middle-click. + * +none+: Don't close tabs using the mouse. + +Default: +pass:[middle]+ + +[[tabs.favicons.scale]] +== tabs.favicons.scale +Scale for favicons in the tab bar. The tab size is unchanged, so big favicons also require extra `tabs.padding`. + +Default: +pass:[1.0]+ + +[[tabs.favicons.show]] +== tabs.favicons.show +Whether to show favicons in the tab bar. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[tabs.indicator_padding]] +== tabs.indicator_padding +Padding for indicators + +Default: +pass:[{"top": 2, "bottom": 2, "left": 0, "right": 4}]+ + +[[tabs.last_close]] +== tabs.last_close +Behavior when the last tab is closed. + +Valid values: + + * +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: +pass:[ignore]+ + +[[tabs.mousewheel_switching]] +== tabs.mousewheel_switching +Switch between tabs using the mouse wheel. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[tabs.new_position.related]] +== tabs.new_position.related +How new tabs opened from another tab are positioned. + +Valid values: + + * +prev+: Before the current tab. + * +next+: After the current tab. + * +first+: At the beginning. + * +last+: At the end. + +Default: +pass:[next]+ + +[[tabs.new_position.unrelated]] +== tabs.new_position.unrelated +How new tabs which aren't opened from another tab are positioned. + +Valid values: + + * +prev+: Before the current tab. + * +next+: After the current tab. + * +first+: At the beginning. + * +last+: At the end. + +Default: +pass:[last]+ + +[[tabs.padding]] +== tabs.padding +Padding for tabs + +Default: +pass:[{"top": 0, "bottom": 0, "left": 5, "right": 5}]+ + +[[tabs.position]] +== tabs.position +The position of the tab bar. + +Valid values: + + * +top+ + * +bottom+ + * +left+ + * +right+ + +Default: +pass:[top]+ + +[[tabs.select_on_remove]] +== tabs.select_on_remove +Which tab to select when the focused tab is removed. + +Valid values: + + * +prev+: Select the tab which came before the closed one (left in horizontal, above in vertical). + * +next+: Select the tab which came after the closed one (right in horizontal, below in vertical). + * +last-used+: Select the previously selected tab. + +Default: +pass:[next]+ + +[[tabs.show]] +== tabs.show +When to show the tab bar. + +Valid values: + + * +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: +pass:[always]+ + +[[tabs.show_switching_delay]] +== tabs.show_switching_delay +Time to show the tab bar before hiding it when tabs.show is set to 'switching'. + +Default: +pass:[800]+ + +[[tabs.tabs_are_windows]] +== tabs.tabs_are_windows +Whether to open windows instead of tabs. + +Valid values: + + * +true+ + * +false+ Default: empty -[[fonts-web-family-serif]] -=== web-family-serif -Font family for serif fonts. +[[tabs.title.alignment]] +== tabs.title.alignment +Alignment of the text inside of tabs + +Valid values: + + * +left+ + * +right+ + * +center+ + +Default: +pass:[left]+ + +[[tabs.title.format]] +== tabs.title.format +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. + + +Default: +pass:[{index}: {title}]+ + +[[tabs.title.format_pinned]] +== tabs.title.format_pinned +The format to use for the tab title for pinned tabs. The same placeholders like for title-format are defined. + +Default: +pass:[{index}]+ + +[[tabs.width.bar]] +== tabs.width.bar +The width of the tab bar if it's vertical, in px or as percentage of the window. + +Default: +pass:[20%]+ + +[[tabs.width.indicator]] +== tabs.width.indicator +Width of the progress indicator (0 to disable). + +Default: +pass:[3]+ + +[[tabs.width.pinned]] +== tabs.width.pinned +The width for pinned tabs with a horizontal tabbar, in px. + +Default: +pass:[43]+ + +[[tabs.wrap]] +== tabs.wrap +Whether to wrap when changing tabs. + +Valid values: + + * +true+ + * +false+ + +Default: +pass:[true]+ + +[[url_incdec_segments]] +== url_incdec_segments +The URL segments where `:navigate increment/decrement` will search for a number. + +Valid values: + + * +host+ + * +path+ + * +query+ + * +anchor+ + +Default: +pass:[["path", "query"]]+ + +[[window.hide_wayland_decoration]] +== window.hide_wayland_decoration +Hide the window decoration when using wayland (requires restart) + +Valid values: + + * +true+ + * +false+ Default: empty -[[fonts-web-family-sans-serif]] -=== web-family-sans-serif -Font family for sans-serif fonts. +[[window.title_format]] +== window.title_format +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. + + +Default: +pass:[{perc}{title}{title_sep}qutebrowser]+ + +[[yank_ignored_url_parameters]] +== yank_ignored_url_parameters +The URL parameters to strip with :yank url. + +Default: +pass:[["ref", "utm_source", "utm_medium", "utm_campaign", "utm_term", "utm_content"]]+ + +[[zoom.default]] +== zoom.default +The default zoom level. + +Default: +pass:[100%]+ + +[[zoom.levels]] +== zoom.levels +The available zoom levels. + +Default: +pass:[["25%", "33%", "50%", "67%", "75%", "90%", "100%", "110%", "125%", "150%", "175%", "200%", "250%", "300%", "400%", "500%"]]+ + +[[zoom.mouse_divider]] +== zoom.mouse_divider +How much to divide the mouse wheel movements to translate them into zoom increments. + +Default: +pass:[512]+ + +[[zoom.text_only]] +== zoom.text_only +Whether the zoom factor on a frame applies only to the text or to all content. + +Valid values: + + * +true+ + * +false+ Default: empty -[[fonts-web-family-cursive]] -=== web-family-cursive -Font family for cursive fonts. - -Default: empty - -[[fonts-web-family-fantasy]] -=== web-family-fantasy -Font family for fantasy fonts. - -Default: empty - -[[fonts-web-size-minimum]] -=== web-size-minimum -The hard minimum font size. - -Default: +pass:[0]+ - -[[fonts-web-size-minimum-logical]] -=== web-size-minimum-logical -The minimum logical font size that is applied when zooming out. - -Default: +pass:[6]+ - -[[fonts-web-size-default]] -=== web-size-default -The default font size for regular text. - -Default: +pass:[16]+ - -[[fonts-web-size-default-fixed]] -=== web-size-default-fixed -The default font size for fixed-pitch text. - -Default: +pass:[13]+ - -[[fonts-keyhint]] -=== keyhint -Font used in the keyhint widget. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-messages.error]] -=== messages.error -Font used for error messages. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-messages.warning]] -=== messages.warning -Font used for warning messages. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-messages.info]] -=== messages.info -Font used for info messages. - -Default: +pass:[8pt ${_monospace}]+ - -[[fonts-prompts]] -=== prompts -Font used for prompts. - -Default: +pass:[8pt sans-serif]+ +This setting is only available with the QtWebKit backend. diff --git a/doc/qutebrowser.1.asciidoc b/doc/qutebrowser.1.asciidoc index 1b8345b0c..58744e75d 100644 --- a/doc/qutebrowser.1.asciidoc +++ b/doc/qutebrowser.1.asciidoc @@ -44,7 +44,7 @@ show it. *-V*, *--version*:: Show version and quit. -*-s* 'SECTION' 'OPTION' 'VALUE', *--set* 'SECTION' 'OPTION' 'VALUE':: +*-s* 'OPTION' 'VALUE', *--set* 'OPTION' 'VALUE':: Set a temporary setting for this session. *-r* 'SESSION', *--restore* 'SESSION':: diff --git a/qutebrowser/config/configdata.py b/qutebrowser/config/configdata.py index e00e1b829..6b2cd0fc5 100644 --- a/qutebrowser/config/configdata.py +++ b/qutebrowser/config/configdata.py @@ -79,7 +79,8 @@ MONOSPACE = (' xos4 Terminus, Terminus, Monospace, ' Option = collections.namedtuple('Option', ['name', 'typ', 'default', - 'backends', 'description']) + 'backends', 'conditional_backends', + 'description']) def _raise_invalid_node(name, what, node): @@ -183,15 +184,20 @@ def _parse_yaml_backends(name, node): QtWebKit: true QtWebEngine: Qt 5.9 -> setting available based on the given conditionals. + + Return: + A list of backends, and a boolean whether the list is conditional based + on the Qt version. """ if node is None: - return [usertypes.Backend.QtWebKit, usertypes.Backend.QtWebEngine] + return ([usertypes.Backend.QtWebKit, usertypes.Backend.QtWebEngine], + False) elif node == 'QtWebKit': - return [usertypes.Backend.QtWebKit] + return ([usertypes.Backend.QtWebKit], False) elif node == 'QtWebEngine': - return [usertypes.Backend.QtWebEngine] + return ([usertypes.Backend.QtWebEngine], False) elif isinstance(node, dict): - return _parse_yaml_backends_dict(name, node) + return (_parse_yaml_backends_dict(name, node), True) _raise_invalid_node(name, 'backends', node) @@ -214,11 +220,15 @@ def _read_yaml(yaml_data): raise ValueError("Invalid keys {} for {}".format( option.keys(), name)) + backends, conditional_backends = _parse_yaml_backends( + name, option.get('backend', None)) + parsed[name] = Option( name=name, typ=_parse_yaml_type(name, option['type']), default=option['default'], - backends=_parse_yaml_backends(name, option.get('backend', None)), + backends=backends, + conditional_backends=conditional_backends, description=option['desc']) # Make sure no key shadows another. diff --git a/qutebrowser/config/configdata.yml b/qutebrowser/config/configdata.yml index ef18d9a9f..d0e5a385c 100644 --- a/qutebrowser/config/configdata.yml +++ b/qutebrowser/config/configdata.yml @@ -392,8 +392,10 @@ content.netrc_file: type: name: File none_ok: true - desc: Set location of a netrc-file for HTTP authentication. If unset, ~/.netrc - is used. + desc: >- + Location of a netrc-file for HTTP authentication. + + If unset, `~/.netrc` is used. content.notifications: default: ask @@ -640,8 +642,11 @@ downloads.location.directory: type: name: Directory none_ok: true - desc: The directory to save downloads to. If unset, a sensible os-specific - default is used. Will expand environment variables. + desc: >- + The directory to save downloads to. + + If unset, a sensible os-specific default is used. + Will expand environment variables. downloads.location.prompt: default: true diff --git a/scripts/dev/src2asciidoc.py b/scripts/dev/src2asciidoc.py index 7445a99c6..d9bd2036c 100755 --- a/scripts/dev/src2asciidoc.py +++ b/scripts/dev/src2asciidoc.py @@ -144,19 +144,14 @@ def _get_command_quickref(cmds): def _get_setting_quickref(): """Generate the settings quick reference.""" out = [] - for sectname, sect in configdata.DATA.items(): - if not getattr(sect, 'descriptions'): - continue - out.append("") - out.append(".Quick reference for section ``{}''".format(sectname)) - out.append('[options="header",width="75%",cols="25%,75%"]') - out.append('|==============') - out.append('|Setting|Description') - for optname, _option in sect.items(): - desc = sect.descriptions[optname].splitlines()[0] - out.append('|<<{}-{},{}>>|{}'.format( - sectname, optname, optname, desc)) - out.append('|==============') + out.append('') + out.append('[options="header",width="75%",cols="25%,75%"]') + out.append('|==============') + out.append('|Setting|Description') + for opt in sorted(configdata.DATA.values()): + desc = opt.description.splitlines()[0] + out.append('|<<{},{}>>|{}'.format(opt.name, opt.name, desc)) + out.append('|==============') return '\n'.join(out) @@ -326,8 +321,6 @@ def generate_commands(filename): hidden_cmds = [] debug_cmds = [] for name, cmd in cmdutils.cmd_dict.items(): - if name in cmdutils.aliases: - continue if cmd.deprecated: continue if cmd.hide: @@ -363,63 +356,59 @@ def generate_commands(filename): f.write(_get_command_doc(name, cmd)) -def _generate_setting_section(f, sectname, sect): +def _generate_setting_option(f, opt): """Generate documentation for a single section.""" - version_dependent_options = [('network', 'proxy'), - ('general', 'print-element-backgrounds')] - for optname, option in sect.items(): + + f.write("\n") + f.write('[[{}]]'.format(opt.name) + "\n") + f.write("== {}".format(opt.name) + "\n") + f.write(opt.description + "\n") + f.write("\n") + + valid_values = opt.typ.get_valid_values() + if valid_values is not None: + f.write("Valid values:\n") f.write("\n") - f.write('[[{}-{}]]'.format(sectname, optname) + "\n") - f.write("=== {}".format(optname) + "\n") - f.write(sect.descriptions[optname] + "\n") + for val in valid_values: + try: + desc = valid_values.descriptions[val] + f.write(" * +{}+: {}".format(val, desc) + "\n") + except KeyError: + f.write(" * +{}+".format(val) + "\n") f.write("\n") - valid_values = option.typ.get_valid_values() - if valid_values is not None: - f.write("Valid values:\n") - f.write("\n") - for val in valid_values: - try: - desc = valid_values.descriptions[val] - f.write(" * +{}+: {}".format(val, desc) + "\n") - except KeyError: - f.write(" * +{}+".format(val) + "\n") - f.write("\n") + if opt.name == 'bindings.default': + # FIXME:conf + pass + elif opt.default: + f.write("Default: +pass:[{}]+\n".format(html.escape( + opt.typ.to_str(opt.default)))) + else: + f.write("Default: empty\n") - if option.default(): - f.write("Default: +pass:[{}]+\n".format(html.escape( - option.default()))) - else: - f.write("Default: empty\n") - - if (option.backends is None or - (sectname, optname) in version_dependent_options): - pass - elif option.backends == [usertypes.Backend.QtWebKit]: - f.write("\nThis setting is only available with the QtWebKit " - "backend.\n") - elif option.backends == [usertypes.Backend.QtWebEngine]: - f.write("\nThis setting is only available with the QtWebEngine " - "backend.\n") - else: - raise ValueError("Invalid value {!r} for option.backends".format( - option.backends)) + all_backends = [usertypes.Backend.QtWebKit, usertypes.Backend.QtWebEngine] + if opt.backends == all_backends or opt.conditional_backends: + pass + elif opt.backends == [usertypes.Backend.QtWebKit]: + f.write("\nThis setting is only available with the QtWebKit " + "backend.\n") + elif opt.backends == [usertypes.Backend.QtWebEngine]: + f.write("\nThis setting is only available with the QtWebEngine " + "backend.\n") + else: + raise ValueError("Invalid value {!r} for opt.backends" + .format(opt.backends)) def generate_settings(filename): """Generate the complete settings section.""" + configdata.init() with _open_file(filename) as f: f.write(FILE_HEADER) f.write("= Settings\n") f.write(_get_setting_quickref() + "\n") - for sectname, sect in configdata.DATA.items(): - f.write("\n") - f.write("== {}".format(sectname) + "\n") - f.write(configdata.SECTION_DESC[sectname] + "\n") - if not getattr(sect, 'descriptions'): - pass - else: - _generate_setting_section(f, sectname, sect) + for opt in sorted(configdata.DATA.values()): + _generate_setting_option(f, opt) def _get_authors():