## general aliases: default: w: session-save q: quit wq: quit --save type: name: Dict keytype: name: String forbidden: ' ' valtype: Command none_ok: true desc: >- Aliases for commands. The keys of the given dictionary are the aliases, while the values are the commands they map to. confirm_quit: type: ConfirmQuit default: [never] desc: Whether quitting the application requires a confirmation. history_gap_interval: type: Int default: 30 desc: >- The maximum time in minutes between two history items for them to be considered being from the same browsing session. Items with less time between them are grouped when being displayed in `:history`. Use -1 to disable separation. ignore_case: type: name: String valid_values: - always: Search case-insensitively - never: Search case-sensitively - smart: Search case-sensitively if there are capital chars default: smart desc: Find text on a page case-insensitively. new_instance_open_target: type: name: String 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: tab desc: >- How to open links in an existing instance if a new one is launched. This happens when e.g. opening a link from a terminal. See `new_instance_open_target_window` to customize in which window the link is opened in. new_instance_open_target_window: type: name: String 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: last-focused desc: >- Which window to choose when opening links as new tabs. When `new_instance_open_target` is not set to `window`, this is ignored. session_default_name: type: name: SessionName none_ok: true default: null desc: >- The name of the session to save by default. If this is set to null, the session which was last loaded is saved. backend: type: name: String valid_values: - webengine: Use QtWebEngine (based on Chromium) - webkit: Use QtWebKit (based on WebKit, similar to Safari) default: webengine desc: >- The backend to use to display websites. qutebrowser supports two different web rendering engines / backends, QtWebKit and QtWebEngine. QtWebKit was discontinued by the Qt project with Qt 5.6, but picked up as a well maintained fork: https://github.com/annulen/webkit/wiki - qutebrowser only supports the fork. QtWebEngine is Qt's official successor to QtWebKit. It's slightly more resource hungry that QtWebKit and has a couple of missing features in qutebrowser, but is generally the preferred choice. This setting requires a restart. ## qt qt_args: renamed: qt.args qt.args: type: name: List valtype: String none_ok: true default: [] desc: >- Additional arguments to pass to Qt, without leading `--`. With QtWebEngine, some Chromium arguments (see https://peter.sh/experiments/chromium-command-line-switches/ for a list) will work. This setting requires a restart. force_software_rendering: renamed: qt.force_software_rendering qt.force_software_rendering: type: Bool default: false backend: QtWebEngine desc: >- Force software rendering for QtWebEngine. This is needed for QtWebEngine to work with Nouveau drivers. This setting requires a restart. qt.force_platform: type: name: String none_ok: true default: null desc: >- Force a Qt platform to use. This sets the `QT_QPA_PLATFORM` environment variable and is useful to force using the XCB plugin when running QtWebEngine on Wayland. ## auto_save auto_save.interval: type: name: Int minval: 0 maxval: maxint default: 15000 desc: How often (in milliseconds) to auto-save config/cookies/etc. auto_save.session: type: Bool default: false desc: Always restore open sites when qutebrowser is reopened. ## content content.cache.size: default: null type: name: Int none_ok: true minval: 0 maxval: maxint64 desc: Size of the HTTP network cache. Null to use the default value. # Defaults from QWebSettings::QWebSettings() in # qtwebkit/Source/WebKit/qt/Api/qwebsettings.cpp content.cache.maximum_pages: default: 0 type: name: Int minval: 0 maxval: maxint backend: QtWebKit desc: >- 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/ content.cache.appcache: default: true type: Bool backend: QtWebKit desc: >- 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. content.cookies.accept: default: no-3rdparty backend: QtWebKit type: name: String valid_values: - all: "Accept all cookies." - no-3rdparty: "Accept cookies from the same origin only." - no-unknown-3rdparty: "Accept cookies from the same origin only, unless a cookie is already set for the domain." - never: "Don't accept cookies at all." desc: Control which cookies to accept. content.cookies.store: default: true type: Bool desc: >- Store cookies. Note this option needs a restart with QtWebEngine on Qt < 5.9. content.default_encoding: type: String default: iso-8859-1 desc: >- Default encoding to use for websites. The encoding must be a string describing an encoding such as _utf-8_, _iso-8859-1_, etc. content.developer_extras: type: Bool default: false backend: QtWebKit desc: >- 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 `--enable-webengine-inspector` in `qutebrowser --help` instead. content.dns_prefetch: default: true type: Bool backend: QtWebKit desc: Try to pre-fetch DNS entries to speed up browsing. content.frame_flattening: default: false type: Bool backend: QtWebKit desc: >- Expand each subframe to its contents. This will flatten all the frames to become one scrollable page. content.geolocation: default: ask type: BoolAsk desc: Allow websites to request geolocations. content.headers.accept_language: type: name: String none_ok: true default: en-US,en desc: Value to send in the `Accept-Language` header. content.headers.custom: default: {} type: name: Dict keytype: name: String encoding: ascii valtype: name: String encoding: ascii none_ok: true desc: Set custom headers for qutebrowser HTTP requests. content.headers.do_not_track: type: name: Bool none_ok: true default: true desc: >- Value to send in the `DNT` header. When this is set to true, qutebrowser asks websites to not track your identity. If set to null, the DNT header is not sent at all. content.headers.referer: default: same-domain type: name: String valid_values: - always: "Always send the Referer." - never: "Never send the Referer. This is not recommended, as some sites may break." - same-domain: "Only send the Referer for the same domain. This will still protect your privacy, but shouldn't break any sites." backend: QtWebKit desc: >- Send the Referer header. The Referer header tells websites from which website you were coming from when visting them. content.headers.user_agent: default: null type: name: String none_ok: true completions: # To update the following list of user agents, run the script 'ua_fetch.py' # Vim-protip: Place your cursor below this comment and run # :r!python scripts/dev/ua_fetch.py - - "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0" - Firefox 53.0 Win8.1 - - "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:53.0) Gecko/20100101 Firefox/53.0" - Firefox 53.0 Linux - - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:53.0) Gecko/20100101 Firefox/53.0" - Firefox 53.0 MacOSX - - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/603.2.4 (KHTML, like Gecko) Version/10.1.1 Safari/603.2.4" - Safari Generic MacOSX - - "Mozilla/5.0 (iPad; CPU OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1" - Mobile Safari 10.0 iOS - - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36" - Chrome Generic Win10 - - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36" - Chrome Generic MacOSX - - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36" - Chrome Generic Linux - - "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html" - Google Bot - - "Wget/1.16.1 (linux-gnu)" - wget 1.16.1 - - "curl/7.40.0" - curl 7.40.0 - - "Mozilla/5.0 (Linux; U; Android 7.1.2) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30" - Mobile Generic Android - - "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" - IE 11.0 for Desktop Win7 64-bit desc: User agent to send. Unset to send the default. content.host_blocking.enabled: default: true type: Bool desc: Whether host blocking is enabled. content.host_blocking.lists: default: - "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" type: name: List valtype: Url none_ok: true desc: | 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). content.host_blocking.whitelist: default: - piwik.org type: name: List valtype: String none_ok: true desc: >- 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. content.hyperlink_auditing: default: false type: Bool desc: Enable or disable hyperlink auditing (``). content.images: default: true type: Bool desc: Whether images are automatically loaded in web pages. content.javascript.alert: default: true type: Bool desc: Show javascript alerts. content.javascript.can_access_clipboard: default: false type: Bool desc: >- Whether JavaScript can read from or write to the clipboard. With QtWebEngine, writing the clipboard as response to a user interaction is always allowed. content.javascript.can_close_tabs: default: false type: Bool backend: QtWebKit desc: Whether JavaScript can close tabs. content.javascript.can_open_tabs_automatically: default: false type: Bool desc: Whether JavaScript can open new tabs without user interaction. content.javascript.enabled: default: true type: Bool desc: Enables or disables JavaScript. content.javascript.log: type: name: Dict fixed_keys: ['unknown', 'info', 'warning', 'error'] keytype: String valtype: name: String valid_values: - none: "Don't log messages." - debug: Log messages with debug level. - info: Log messages with info level. - warning: Log messages with warning level. - error: Log messages with error level. default: unknown: debug info: debug warning: debug error: debug desc: >- Log levels to use for JavaScript console logging messages. When a JavaScript message with the level given in the dictionary key is logged, the corresponding dictionary value selects the qutebrowser logger to use. On QtWebKit, the "unknown" setting is always used. content.javascript.modal_dialog: type: Bool default: false desc: Use the standard JavaScript modal dialog for `alert()` and `confirm()` content.javascript.prompt: default: true type: Bool desc: Show javascript prompts. content.local_content_can_access_remote_urls: default: false type: Bool desc: Whether locally loaded documents are allowed to access remote urls. content.local_content_can_access_file_urls: default: true type: Bool desc: Whether locally loaded documents are allowed to access other local urls. content.local_storage: default: true type: Bool desc: Whether support for HTML 5 local storage and Web SQL is enabled. content.media_capture: default: ask type: BoolAsk backend: QtWebEngine desc: Allow websites to record audio/video. content.netrc_file: default: null type: name: File none_ok: true desc: >- Location of a netrc-file for HTTP authentication. If unset, `~/.netrc` is used. content.notifications: default: ask type: BoolAsk backend: QtWebKit desc: Allow websites to show notifications. content.pdfjs: default: false type: Bool backend: QtWebKit desc: >- 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.plugins: default: false type: Bool desc: Enables or disables plugins in Web pages. content.print_element_backgrounds: type: Bool default: true backend: QtWebKit: true QtWebEngine: Qt 5.8 desc: >- Whether the background color and images are also drawn when the page is printed. content.private_browsing: type: Bool default: false desc: Open new windows in private browsing mode which does not record visited pages. content.proxy: default: system type: Proxy desc: >- The proxy to use. In addition to the listed values, you can use a `socks://...` or `http://...` URL. content.proxy_dns_requests: default: true type: Bool backend: QtWebKit desc: Send DNS requests over the configured proxy. content.ssl_strict: default: ask type: BoolAsk desc: Validate SSL handshakes. content.user_stylesheets: type: name: ListOrValue valtype: File none_ok: True default: null desc: A list of user stylesheet filenames to use. content.webgl: default: true type: Bool desc: Enables or disables WebGL. content.xss_auditing: type: Bool default: false desc: >- 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. # emacs: ' ## completion completion.cmd_history_max_items: default: 100 type: name: Int minval: -1 desc: >- How many commands to save in the command history. 0: no history / -1: unlimited completion.height: type: name: PercOrInt minperc: 0 maxperc: 100 minint: 1 default: 50% desc: The height of the completion, in px or as percentage of the window. completion.quick: default: true type: Bool desc: "Move on to the next part when there's only one possible completion left." completion.show: default: always type: name: String valid_values: - always: Whenever a completion is available. - auto: Whenever a completion is requested. - never: Never. desc: When to show the autocompletion window. completion.shrink: default: false type: Bool desc: Shrink the completion to be smaller than the configured size if there are no scrollbars. completion.scrollbar.width: default: 12 type: name: Int minval: 0 desc: Width of the scrollbar in the completion window (in px). completion.scrollbar.padding: default: 2 type: name: Int minval: 0 desc: Padding of scrollbar handle in the completion window (in px). completion.timestamp_format: type: name: TimestampTemplate none_ok: true default: '%Y-%m-%d' desc: How to format timestamps (e.g. for the history completion). completion.web_history_max_items: default: -1 type: name: Int minval: -1 maxval: maxint64 desc: >- How many URLs to show in the web history. 0: no history / -1: unlimited ## downloads downloads.location.directory: default: null type: name: Directory none_ok: true desc: >- The directory to save downloads to. If unset, a sensible os-specific default is used. downloads.location.prompt: default: true type: Bool desc: >- Prompt the user for the download location. If set to false, `downloads.location.directory` will be used. downloads.location.remember: default: true type: Bool desc: Remember the last used download directory. downloads.location.suggestion: default: path type: name: String valid_values: - path: Show only the download path. - filename: Show only download filename. - both: Show download path and filename. desc: What to display in the download filename input. downloads.open_dispatcher: type: name: String none_ok: true default: null desc: >- The default program used to open downloads. If null, the default internal handler is used. Any `{}` in the string will be expanded to the filename, else the filename will be appended. downloads.position: type: VerticalPosition default: top desc: Where to show the downloaded files. downloads.remove_finished: default: -1 type: name: Int minval: -1 desc: >- Number of milliseconds to wait before removing finished downloads. If set to -1, downloads are never removed. ## editor editor.command: type: name: ShellCommand placeholder: true default: ["gvim", "-f", "{}"] desc: >- The editor (and arguments) to use for the `open-editor` command. `{}` gets replaced by the filename of the file to be edited. editor.encoding: type: Encoding default: utf-8 desc : Encoding to use for the editor. ## hints hints.auto_follow: default: unique-match type: name: String valid_values: - always: "Auto-follow whenever there is only a single hint on a page." - unique-match: "Auto-follow whenever there is a unique non-empty match in either the hint string (word mode) or filter (number mode)." - full-match: "Follow the hint when the user typed the whole hint (letter, word or number mode) or the element's text (only in number mode)." - never: "The user will always need to press Enter to follow a hint." desc: Controls when a hint can be automatically followed without pressing Enter. hints.auto_follow_timeout: default: 0 type: Int desc: A timeout (in milliseconds) to ignore normal-mode key bindings after a successful auto-follow. hints.border: default: '1px solid #E3BE23' type: String desc: CSS border value for hints. hints.chars: default: asdfghjkl type: name: UniqueCharString minlen: 2 completions: - ['asdfghjkl', "Home row"] - ['aoeuidnths', "Home row (Dvorak)"] - ['abcdefghijklmnopqrstuvwxyz', "All letters"] desc: Chars used for hint strings. hints.dictionary: default: /usr/share/dict/words type: name: File required: false desc: The dictionary file to be used by the word hints. hints.find_implementation: default: python backend: QtWebKit type: name: String valid_values: - javascript: Better but slower - python: Slightly worse but faster desc: Which implementation to use to find elements to hint. hints.hide_unmatched_rapid_hints: default: true type: Bool desc: Hide unmatched hints in rapid mode. hints.min_chars: default: 1 type: name: Int minval: 1 desc: Minimum number of chars used for hint strings. hints.mode: default: letter type: name: String valid_values: - number: Use numeric hints. (In this mode you can also type letters from the hinted element to filter and reduce the number of elements that are hinted.) - letter: Use the chars in the `hints.chars` setting. - word: Use hints words based on the html elements and the extra words. desc: Mode to use for hints. hints.next_regexes: default: - "\\bnext\\b" - "\\bmore\\b" - "\\bnewer\\b" - "\\b[>\u2192\u226B]\\b" - "\\b(>>|\xBB)\\b" - "\\bcontinue\\b" type: name: List valtype: name: Regex flags: IGNORECASE desc: A comma-separated list of regexes to use for 'next' links. hints.prev_regexes: default: - "\\bprev(ious)?\\b" - "\\bback\\b" - "\\bolder\\b" - "\\b[<\u2190\u226A]\\b" - "\\b(<<|\xAB)\\b" type: name: List valtype: name: Regex flags: IGNORECASE desc: A comma-separated list of regexes to use for 'prev' links. hints.scatter: default: true type: Bool desc: >- Scatter hint key chains (like Vimium) or not (like dwb). Ignored for number hints. hints.uppercase: default: false type: Bool desc: Make chars in hint strings uppercase. ## input input.forward_unbound_keys: default: auto type: name: String valid_values: - all: "Forward all unbound keys." - auto: "Forward unbound non-alphanumeric keys." - none: "Don't forward any keys." desc: Forward unbound keys to the webview in normal mode. input.insert_mode.auto_load: default: false type: Bool desc: Automatically enter insert mode if an editable element is focused after loading the page. input.insert_mode.auto_leave: default: true type: Bool desc: Leave insert mode if a non-editable element is clicked. input.insert_mode.plugins: default: false type: Bool desc: Switch to insert mode when clicking flash and other plugins. input.links_included_in_focus_chain: default: true type: Bool desc: Include hyperlinks in the keyboard focus chain when tabbing. input.partial_timeout: default: 5000 type: name: Int minval: 0 maxval: maxint desc: >- Timeout (in milliseconds) for partially typed key bindings. If the current input forms only partial matches, the keystring will be cleared after this time. input.rocker_gestures: default: false type: Bool desc: >- Enable Opera-like mouse rocker gestures. This disables the context menu. input.spatial_navigation: default: false type: Bool desc: >- Enable Spatial Navigation. Spatial navigation consists in the ability to navigate between focusable elements in a Web page, such as hyperlinks and form controls, by using Left, Right, Up and Down arrow keys. For example, if a user presses the Right key, heuristics determine whether there is an element he might be trying to reach towards the right and which element he probably wants. ## keyhint keyhint.blacklist: type: name: List none_ok: true valtype: name: String default: [] desc: >- Keychains that shouldn't be shown in the keyhint dialog. Globs are supported, so `;*` will blacklist all keychains starting with `;`. Use `*` to disable keyhints. # emacs: ' keyhint.delay: type: name: Int minval: 0 default: 500 desc: Time from pressing a key to seeing the keyhint dialog (ms). ## messages messages.timeout: type: name: Int minval: 0 default: 2000 desc: >- Time (in ms) to show messages in the statusbar for. Set to 0 to never clear messages. messages.unfocused: type: Bool default: false desc: Show messages in unfocused windows. ## prompt prompt.filebrowser: type: Bool default: true desc: Show a filebrowser in upload/download prompts. prompt.radius: type: name: Int minval: 0 default: 8 desc: The rounding radius for the edges of prompts. ## scrolling scrolling.bar: type: Bool default: false desc: Show a scrollbar. scrolling.smooth: type: Bool default: false desc: >- Enable smooth scrolling for web pages. Note smooth scrolling does not work with the `:scroll-px` command. ## spellcheck spellcheck.languages: type: name: List valtype: name: String valid_values: - af-ZA: Afrikaans (South Africa) - bg-BG: Bulgarian (Bulgaria) - ca-ES: Catalan (Spain) - cs-CZ: Czech (Czech Republic) - da-DK: Danish (Denmark) - de-DE: German (Germany) - el-GR: Greek (Greece) - en-CA: English (Canada) - en-GB: English (United Kingdom) - en-US: English (United States) - es-ES: Spanish (Spain) - et-EE: Estonian (Estonia) - fa-IR: Farsi (Iran) - fo-FO: Faroese (Faroe Islands) - fr-FR: French (France) - he-IL: Hebrew (Israel) - hi-IN: Hindi (India) - hr-HR: Croatian (Croatia) - hu-HU: Hungarian (Hungary) - id-ID: Indonesian (Indonesia) - it-IT: Italian (Italy) - ko: Korean - lt-LT: Lithuanian (Lithuania) - lv-LV: Latvian (Latvia) - nb-NO: Norwegian (Norway) - nl-NL: Dutch (Netherlands) - pl-PL: Polish (Poland) - pt-BR: Portuguese (Brazil) - pt-PT: Portuguese (Portugal) - ro-RO: Romanian (Romania) - ru-RU: Russian (Russia) - sh: Serbo-Croatian - sk-SK: Slovak (Slovakia) - sl-SI: Slovenian (Slovenia) - sq: Albanian - sr: Serbian - sv-SE: Swedish (Sweden) - ta-IN: Tamil (India) - tg-TG: Tajik (Tajikistan) - tr-TR: Turkish (Turkey) - uk-UA: Ukrainian (Ukraine) - vi-VN: Vietnamese (Viet Nam) none_ok: true default: [] desc: >- Spell checking languages. You can check for available languages and install dictionaries using scripts/install_dict.py. Run the script with -h/--help for instructions. backend: QtWebKit: false QtWebEngine: Qt 5.8 ## statusbar statusbar.hide: type: Bool default: false desc: Hide the statusbar unless a message is shown. statusbar.padding: type: Padding default: top: 1 bottom: 1 left: 0 right: 0 desc: Padding for the statusbar. statusbar.position: type: VerticalPosition default: bottom desc: The position of the status bar. ## tabs tabs.background: default: false type: Bool desc: Open new tabs (middleclick/ctrl+click) in the background. tabs.close_mouse_button: default: middle type: name: String valid_values: - right: "Close tabs on right-click." - middle: "Close tabs on middle-click." - none: "Don't close tabs using the mouse." desc: On which mouse button to close tabs. tabs.favicons.scale: default: 1.0 type: name: Float minval: 0.0 desc: >- Scaling for favicons in the tab bar. The tab size is unchanged, so big favicons also require extra `tabs.padding`. tabs.favicons.show: default: true desc: Show favicons in the tab bar. type: Bool tabs.indicator_padding: default: top: 2 bottom: 2 left: 0 right: 4 type: Padding desc: Padding for tab indicators tabs.last_close: default: ignore type: name: String 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." desc: Behavior when the last tab is closed. tabs.mousewheel_switching: default: true type: Bool desc: Switch between tabs using the mouse wheel. tabs.new_position.related: default: next type: NewTabPosition desc: How new tabs opened from another tab are positioned. tabs.new_position.unrelated: default: last type: NewTabPosition desc: "How new tabs which aren't opened from another tab are positioned." tabs.padding: default: top: 0 bottom: 0 left: 5 right: 5 type: Padding desc: Padding around text for tabs tabs.position: default: top type: Position desc: The position of the tab bar. tabs.select_on_remove: default: 'next' type: SelectOnRemove desc: Which tab to select when the focused tab is removed. tabs.show: default: always type: name: String 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. desc: When to show the tab bar. tabs.show_switching_delay: default: 800 type: Int desc: "Time to show the tab bar before hiding it when tabs.show is set to 'switching'." tabs.tabs_are_windows: default: false type: Bool desc: Open a new window for every tab. tabs.title.alignment: default: left type: TextAlignment desc: Alignment of the text inside of tabs. tabs.title.format: default: '{index}: {title}' type: name: FormatString fields: - perc - perc_raw - title - title_sep - index - id - scroll_pos - host - private - current_url none_ok: true desc: | 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. * `{current_url}` : The url of the current web page. tabs.title.format_pinned: default: '{index}' type: name: FormatString fields: - perc - perc_raw - title - title_sep - index - id - scroll_pos - host - private - current_url none_ok: true desc: The format to use for the tab title for pinned tabs. The same placeholders like for `tabs.title.format` are defined. tabs.width.bar: default: 20% type: name: PercOrInt minperc: 0 maxperc: 100 minint: 1 desc: "The width of the tab bar if it's vertical, in px or as percentage of the window." tabs.width.indicator: default: 3 type: name: Int minval: 0 desc: Width of the progress indicator (0 to disable). tabs.width.pinned: deleted: true tabs.wrap: default: true type: Bool desc: Whether to wrap when changing tabs. ## url url.auto_search: type: name: String valid_values: - naive: Use simple/naive check. - dns: Use DNS requests (might be slow!). - never: Never search automatically. default: naive desc: Whether to start a search when something else than a URL is entered. url.default_page: type: FuzzyUrl default: https://start.duckduckgo.com/ desc: >- The page to open if :open -t/-b/-w is used without URL. Use `about:blank` for a blank page. url.incdec_segments: type: name: FlagList valid_values: [host, path, query, anchor] default: [path, query] desc: The URL segments where `:navigate increment/decrement` will search for a number. url.searchengines: default: DEFAULT: https://duckduckgo.com/?q={} type: name: Dict required_keys: ['DEFAULT'] keytype: String valtype: SearchEngineUrl desc: >- Definitions of search engines which can be used via the address bar. Maps a searchengine name (such as `DEFAULT`, or `ddg`) to a URL with a `{}` placeholder. The placeholder will be replaced by the search term, use `{{` and `}}` for literal `{`/`}` signs. The searchengine named `DEFAULT` is used when `url.auto_search` is turned on and something else than a URL was entered to be opened. Other search engines can be used by prepending the search engine name to the search term, e.g. `:open google qutebrowser`. url.start_pages: type: name: ListOrValue valtype: FuzzyUrl default: "https://start.duckduckgo.com" desc: The page(s) to open at the start. url.yank_ignored_parameters: type: name: List valtype: String none_ok: true default: - ref - utm_source - utm_medium - utm_campaign - utm_term - utm_content desc: The URL parameters to strip with `:yank url`. ## window window.hide_wayland_decoration: type: Bool default: false desc: Hide the window decoration when using wayland (requires restart) window.title_format: type: name: FormatString fields: - perc - perc_raw - title - title_sep - id - scroll_pos - host - backend - private - current_url default: '{perc}{title}{title_sep}qutebrowser' desc: | 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. * `{current_url}` : The url of the current web page. ## zoom zoom.default: type: Perc default: 100% desc: The default zoom level. zoom.levels: type: name: List valtype: name: Perc minval: 0 default: - 25% - 33% - 50% - 67% - 75% - 90% - 100% - 110% - 125% - 150% - 175% - 200% - 250% - 300% - 400% - 500% desc: The available zoom levels. zoom.mouse_divider: default: 512 type: name: Int minval: 0 desc: How much to divide the mouse wheel movements to translate them into zoom increments. zoom.text_only: type: Bool default: false backend: QtWebKit desc: Whether the zoom factor on a frame applies only to the text or to all content. ## colors colors.completion.fg: default: white type: QtColor desc: Text color of the completion widget. colors.completion.odd.bg: default: '#444444' type: QssColor desc: Background color of the completion widget for odd rows. colors.completion.even.bg: default: '#333333' type: QssColor desc: Background color of the completion widget for even rows. colors.completion.category.fg: default: white type: QtColor desc: Foreground color of completion widget category headers. colors.completion.category.bg: default: 'qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #888888, stop:1 #505050)' type: QssColor desc: Background color of the completion widget category headers. colors.completion.category.border.top: default: black type: QssColor desc: Top border color of the completion widget category headers. colors.completion.category.border.bottom: default: black type: QssColor desc: Bottom border color of the completion widget category headers. colors.statusbar.insert.fg: default: white type: QssColor desc: Foreground color of the statusbar in insert mode. colors.statusbar.insert.bg: default: darkgreen type: QssColor desc: Background color of the statusbar in insert mode. colors.completion.item.selected.fg: default: black type: QtColor desc: Foreground color of the selected completion item. colors.completion.item.selected.bg: default: '#e8c000' type: QssColor desc: Background color of the selected completion item. colors.completion.item.selected.border.top: default: '#bbbb00' type: QssColor desc: Top border color of the completion widget category headers. colors.completion.item.selected.border.bottom: default: '#bbbb00' type: QssColor desc: Bottom border color of the selected completion item. colors.completion.match.fg: default: '#ff4444' type: QssColor desc: Foreground color of the matched text in the completion. colors.completion.scrollbar.fg: default: white type: QssColor desc: Color of the scrollbar handle in completion view. colors.completion.scrollbar.bg: default: '#333333' type: QssColor desc: Color of the scrollbar in completion view colors.downloads.bar.bg: default: black type: QssColor desc: Background color for the download bar. colors.downloads.start.fg: default: white type: QtColor desc: Color gradient start for download text. colors.downloads.start.bg: default: '#0000aa' type: QtColor desc: Color gradient start for download backgrounds. colors.downloads.stop.fg: default: white type: QtColor desc: Color gradient end for download text. colors.downloads.stop.bg: default: '#00aa00' type: QtColor desc: Color gradient stop for download backgrounds. colors.downloads.system.fg: default: rgb type: ColorSystem desc: Color gradient interpolation system for download text. colors.downloads.system.bg: default: rgb type: ColorSystem desc: Color gradient interpolation system for download backgrounds. colors.downloads.error.fg: default: white type: QtColor desc: Foreground color for downloads with errors. colors.downloads.error.bg: default: red type: QtColor desc: Background color for downloads with errors. colors.hints.fg: default: black type: QssColor desc: Font color for hints. colors.hints.bg: default: 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)) type: QssColor desc: >- Background color for hints. Note that you can use a `rgba(...)` value for transparency. colors.hints.match.fg: default: green type: QssColor desc: Font color for the matched part of hints. colors.keyhint.fg: default: '#FFFFFF' type: QssColor desc: Text color for the keyhint widget. colors.keyhint.suffix.fg: default: '#FFFF00' type: QssColor desc: Highlight color for keys to complete the current keychain. colors.keyhint.bg: default: rgba(0, 0, 0, 80%) type: QssColor desc: Background color of the keyhint widget. colors.messages.error.fg: default: white type: QssColor desc: Foreground color of an error message. colors.messages.error.bg: default: red type: QssColor desc: Background color of an error message. colors.messages.error.border: default: '#bb0000' type: QssColor desc: Border color of an error message. colors.messages.warning.fg: default: white type: QssColor desc: Foreground color a warning message. colors.messages.warning.bg: default: darkorange type: QssColor desc: Background color of a warning message. colors.messages.warning.border: default: '#d47300' type: QssColor desc: Border color of a warning message. colors.messages.info.fg: default: white type: QssColor desc: Foreground color an info message. colors.messages.info.bg: default: black type: QssColor desc: Background color of an info message. colors.messages.info.border: default: '#333333' type: QssColor desc: Border color of an info message. colors.prompts.fg: default: white type: QssColor desc: Foreground color for prompts. colors.prompts.border: default: 1px solid gray type: String desc: Border used around UI elements in prompts. colors.prompts.bg: default: '#444444' type: QssColor desc: Background color for prompts. colors.prompts.selected.bg: default: grey type: QssColor desc: Background color for the selected item in filename prompts. colors.statusbar.normal.fg: default: white type: QssColor desc: Foreground color of the statusbar. colors.statusbar.normal.bg: default: black type: QssColor desc: Background color of the statusbar. colors.statusbar.private.fg: default: white type: QssColor desc: Foreground color of the statusbar in private browsing mode. colors.statusbar.private.bg: default: '#666666' type: QssColor desc: Background color of the statusbar in private browsing mode. colors.statusbar.command.fg: default: white type: QssColor desc: Foreground color of the statusbar in command mode. colors.statusbar.command.bg: default: black type: QssColor desc: Background color of the statusbar in command mode. colors.statusbar.command.private.fg: default: white type: QssColor desc: Foreground color of the statusbar in private browsing + command mode. colors.statusbar.command.private.bg: default: grey type: QssColor desc: Background color of the statusbar in private browsing + command mode. colors.statusbar.caret.fg: default: white type: QssColor desc: Foreground color of the statusbar in caret mode. colors.statusbar.caret.bg: default: purple type: QssColor desc: Background color of the statusbar in caret mode. colors.statusbar.caret.selection.fg: default: white type: QssColor desc: Foreground color of the statusbar in caret mode with a selection. colors.statusbar.caret.selection.bg: default: '#a12dff' type: QssColor desc: Background color of the statusbar in caret mode with a selection. colors.statusbar.progress.bg: default: white type: QssColor desc: Background color of the progress bar. colors.statusbar.url.fg: default: white type: QssColor desc: Default foreground color of the URL in the statusbar. colors.statusbar.url.error.fg: default: orange type: QssColor desc: Foreground color of the URL in the statusbar on error. colors.statusbar.url.hover.fg: default: aqua desc: Foreground color of the URL in the statusbar for hovered links. type: QssColor colors.statusbar.url.success.http.fg: default: white type: QssColor desc: Foreground color of the URL in the statusbar on successful load (http). colors.statusbar.url.success.https.fg: default: lime type: QssColor desc: Foreground color of the URL in the statusbar on successful load (https). colors.statusbar.url.warn.fg: default: yellow type: QssColor desc: "Foreground color of the URL in the statusbar when there's a warning." colors.tabs.bar.bg: default: '#555555' type: QtColor desc: Background color of the tab bar. colors.tabs.indicator.start: default: '#0000aa' type: QtColor desc: Color gradient start for the tab indicator. colors.tabs.indicator.stop: default: '#00aa00' type: QtColor desc: Color gradient end for the tab indicator. colors.tabs.indicator.error: default: '#ff0000' type: QtColor desc: Color for the tab indicator on errors. colors.tabs.indicator.system: default: rgb type: ColorSystem desc: Color gradient interpolation system for the tab indicator. colors.tabs.odd.fg: default: white type: QtColor desc: Foreground color of unselected odd tabs. colors.tabs.odd.bg: default: grey type: QtColor desc: Background color of unselected odd tabs. colors.tabs.even.fg: default: white type: QtColor desc: Foreground color of unselected even tabs. colors.tabs.even.bg: default: darkgrey type: QtColor desc: Background color of unselected even tabs. colors.tabs.selected.odd.fg: default: white type: QtColor desc: Foreground color of selected odd tabs. colors.tabs.selected.odd.bg: default: black type: QtColor desc: Background color of selected odd tabs. colors.tabs.selected.even.fg: default: white type: QtColor desc: Foreground color of selected even tabs. colors.tabs.selected.even.bg: default: black type: QtColor desc: Background color of selected even tabs. colors.webpage.bg: default: white type: name: QtColor none_ok: true desc: "Background color for webpages if unset (or empty to use the theme's color)" ## fonts fonts.monospace: default: '"xos4 Terminus", Terminus, Monospace, "DejaVu Sans Mono", Monaco, "Bitstream Vera Sans Mono", "Andale Mono", "Courier New", Courier, "Liberation Mono", monospace, Fixed, Consolas, Terminal' type: Font desc: >- Default monospace fonts. Whenever "monospace" is used in a font setting, it's replaced with the fonts listed here. # emacs: ' fonts.completion.entry: default: 8pt monospace type: Font desc: Font used in the completion widget. fonts.completion.category: default: bold 8pt monospace type: Font desc: Font used in the completion categories. fonts.debug_console: default: 8pt monospace type: QtFont desc: Font used for the debugging console. fonts.downloads: default: 8pt monospace type: Font desc: Font used for the downloadbar. fonts.hints: default: bold 10pt monospace type: Font desc: Font used for the hints. fonts.keyhint: default: 8pt monospace type: Font desc: Font used in the keyhint widget. fonts.messages.error: default: 8pt monospace type: Font desc: Font used for error messages. fonts.messages.info: default: 8pt monospace type: Font desc: Font used for info messages. fonts.messages.warning: default: 8pt monospace type: Font desc: Font used for warning messages. fonts.prompts: default: 8pt sans-serif type: Font desc: Font used for prompts. fonts.statusbar: default: 8pt monospace type: Font desc: Font used in the statusbar. fonts.tabs: default: 8pt monospace type: QtFont desc: Font used in the tab bar. fonts.web.family.standard: default: '' type: name: FontFamily none_ok: true desc: Font family for standard fonts. fonts.web.family.fixed: default: '' type: name: FontFamily none_ok: true desc: Font family for fixed fonts. fonts.web.family.serif: default: '' type: name: FontFamily none_ok: true desc: Font family for serif fonts. fonts.web.family.sans_serif: default: '' type: name: FontFamily none_ok: true desc: Font family for sans-serif fonts. fonts.web.family.cursive: default: '' type: name: FontFamily none_ok: true desc: Font family for cursive fonts. fonts.web.family.fantasy: default: '' type: name: FontFamily none_ok: true desc: Font family for fantasy fonts. # Defaults for web_size_* from WebEngineSettings::initDefaults in # qtwebengine/src/core/web_engine_settings.cpp and # QWebSettings::QWebSettings() in # qtwebkit/Source/WebKit/qt/Api/qwebsettings.cpp fonts.web.size.default: default: 16 type: name: Int minval: 1 maxval: maxint desc: The default font size for regular text. fonts.web.size.default_fixed: default: 13 type: name: Int minval: 1 maxval: maxint desc: The default font size for fixed-pitch text. fonts.web.size.minimum: default: 0 type: name: Int minval: 0 maxval: maxint desc: The hard minimum font size. fonts.web.size.minimum_logical: # This is 0 as default on QtWebKit, and 6 on QtWebEngine - so let's # just go for 6 here. default: 6 type: name: Int minval: 0 maxval: maxint desc: The minimum logical font size that is applied when zooming out. ## keybindings bindings.key_mappings: default: : : : : : : : : type: name: Dict keytype: Key valtype: Key desc: >- 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. Note that when a key is bound (via `bindings.default` or `bindings.commands`), the mapping is ignored. bindings.default: default: normal: : clear-keychain ;; search ;; fullscreen --leave o: set-cmd-text -s :open go: set-cmd-text :open {url:pretty} O: set-cmd-text -s :open -t gO: set-cmd-text :open -t -r {url:pretty} xo: set-cmd-text -s :open -b xO: set-cmd-text :open -b -r {url:pretty} wo: set-cmd-text -s :open -w wO: set-cmd-text :open -w {url:pretty} /: set-cmd-text / ?: set-cmd-text ? ":": "set-cmd-text :" ga: open -t : open -t : open -w : open -p d: tab-close : tab-close : close D: tab-close -o co: tab-only T: tab-focus gm: tab-move gl: tab-move - gr: tab-move + J: tab-next : tab-next K: tab-prev : tab-prev gC: tab-clone r: reload : reload R: reload -f : reload -f H: back : back th: back -t wh: back -w L: forward : forward tl: forward -t wl: forward -w : fullscreen f: hint F: hint all tab wf: hint all window ;b: hint all tab-bg ;f: hint all tab-fg ;h: hint all hover ;i: hint images ;I: hint images tab ;o: hint links fill :open {hint-url} ;O: hint links fill :open -t -r {hint-url} ;y: hint links yank ;Y: hint links yank-primary ;r: hint --rapid links tab-bg ;R: hint --rapid links window ;d: hint links download ;t: hint inputs h: scroll left j: scroll down k: scroll up l: scroll right u: undo : undo gg: scroll-to-perc 0 G: scroll-to-perc n: search-next N: search-prev i: enter-mode insert v: enter-mode caret "`": enter-mode set_mark "'": enter-mode jump_mark yy: yank yY: yank -s yt: yank title yT: yank title -s yd: yank domain yD: yank domain -s yp: yank pretty-url yP: yank pretty-url -s pp: open -- {clipboard} pP: open -- {primary} Pp: open -t -- {clipboard} PP: open -t -- {primary} wp: open -w -- {clipboard} wP: open -w -- {primary} m: quickmark-save b: set-cmd-text -s :quickmark-load B: set-cmd-text -s :quickmark-load -t wb: set-cmd-text -s :quickmark-load -w M: bookmark-add gb: set-cmd-text -s :bookmark-load gB: set-cmd-text -s :bookmark-load -t wB: set-cmd-text -s :bookmark-load -w sf: save ss: set-cmd-text -s :set sl: set-cmd-text -s :set -t sk: set-cmd-text -s :bind -: zoom-out +: zoom-in =: zoom "[[": navigate prev "]]": navigate next "{{": navigate prev -t "}}": navigate next -t gu: navigate up gU: navigate up -t : navigate increment : navigate decrement wi: inspector gd: download ad: download-cancel cd: download-clear gf: view-source gt: set-cmd-text -s :buffer : tab-focus last : tab-focus last : enter-mode passthrough : quit ZQ: quit ZZ: quit --save : scroll-page 0 1 : scroll-page 0 -1 : scroll-page 0 0.5 : scroll-page 0 -0.5 : tab-focus 1 g0: tab-focus 1 g^: tab-focus 1 : tab-focus 2 : tab-focus 3 : tab-focus 4 : tab-focus 5 : tab-focus 6 : tab-focus 7 : tab-focus 8 : tab-focus -1 g$: tab-focus -1 : home : stop : print Ss: open qute://settings Sb: open qute://bookmarks#bookmarks Sq: open qute://bookmarks Sh: open qute://history xx: config-cycle statusbar.hide ;; config-cycle tabs.show always switching xt: config-cycle tabs.show always switching xb: config-cycle statusbar.hide : follow-selected : follow-selected -t .: repeat-command : tab-pin q: record-macro "@": run-macro insert: : open-editor : insert-text {primary} : leave-mode hint: : follow-hint : hint --rapid links tab-bg : hint links : hint all tab-bg : leave-mode passthrough: : leave-mode command: : command-history-prev : command-history-next : command-history-prev : command-history-next : completion-item-focus prev : completion-item-focus next : completion-item-focus next-category : completion-item-focus prev-category : completion-item-del : completion-item-del : command-accept : rl-backward-char : rl-forward-char : rl-backward-word : rl-forward-word : rl-beginning-of-line : rl-end-of-line : rl-unix-line-discard : rl-kill-line : rl-kill-word : rl-unix-word-rubout : rl-backward-kill-word : rl-yank : rl-delete-char : rl-backward-delete-char : leave-mode prompt: : prompt-accept y: prompt-accept yes n: prompt-accept no : prompt-open-download : prompt-item-focus prev : prompt-item-focus prev : prompt-item-focus next : prompt-item-focus next : rl-backward-char : rl-forward-char : rl-backward-word : rl-forward-word : rl-beginning-of-line : rl-end-of-line : rl-unix-line-discard : rl-kill-line : rl-kill-word : rl-unix-word-rubout : rl-backward-kill-word : rl-yank : rl-delete-char : rl-backward-delete-char : leave-mode caret: v: toggle-selection : toggle-selection : drop-selection c: enter-mode normal j: move-to-next-line k: move-to-prev-line l: move-to-next-char h: move-to-prev-char e: move-to-end-of-word w: move-to-next-word b: move-to-prev-word "]": move-to-start-of-next-block "[": move-to-start-of-prev-block "}": move-to-end-of-next-block "{": move-to-end-of-prev-block "0": move-to-start-of-line $: move-to-end-of-line gg: move-to-start-of-document G: move-to-end-of-document Y: yank selection -s y: yank selection : yank selection H: scroll left J: scroll down K: scroll up L: scroll right : leave-mode register: : leave-mode type: name: Dict none_ok: true keytype: String # section name fixed_keys: ['normal', 'insert', 'hint', 'passthrough', 'command', 'prompt', 'caret', 'register'] valtype: name: Dict none_ok: true keytype: Key valtype: Command desc: >- 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), use `config.bind()` in `config.py` or the `:bind` command, and leave this setting alone. bindings.commands: default: {} type: name: Dict none_ok: true keytype: String # section name fixed_keys: ['normal', 'insert', 'hint', 'passthrough', 'command', 'prompt', 'caret', 'register'] valtype: name: Dict none_ok: true keytype: Key valtype: name: Command none_ok: true desc: >- Keybindings mapping keys to commands in different modes. While it's possible to add bindings with this setting, it's recommended to use `config.bind()` in `config.py` or the `:bind` command, and leave this setting alone. 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`.