// DO NOT EDIT THIS FILE DIRECTLY!
// It is autogenerated by running:
//   $ python3 scripts/dev/src2asciidoc.py
// vim: readonly:

= Commands

In qutebrowser, all keybindings are mapped to commands.

Some commands are hidden, which means they don't show up in the command
completion when pressing `:`, as they're typically not useful to run by hand.

For command arguments, there are also some variables you can use:

- `{url}` expands to the URL of the current page
- `{url:pretty}` expands to the URL in decoded format
- `{url:host}` expands to the host part of the URL
- `{clipboard}` expands to the clipboard contents
- `{primary}` expands to the primary selection contents

It is possible to run or bind multiple commands by separating them with `;;`.

== Normal commands
.Quick reference
[options="header",width="75%",cols="25%,75%"]
|==============
|Command|Description
|<<adblock-update,adblock-update>>|Update the adblock block lists.
|<<back,back>>|Go back in the history of the current tab.
|<<bind,bind>>|Bind a key to a command.
|<<bookmark-add,bookmark-add>>|Save the current page as a bookmark, or a specific url.
|<<bookmark-del,bookmark-del>>|Delete a bookmark.
|<<bookmark-load,bookmark-load>>|Load a bookmark.
|<<buffer,buffer>>|Select tab by index or url/title best match.
|<<clear-keychain,clear-keychain>>|Clear the currently entered key chain.
|<<clear-messages,clear-messages>>|Clear all message notifications.
|<<click-element,click-element>>|Click the element matching the given filter.
|<<close,close>>|Close the current window.
|<<config-clear,config-clear>>|Set all settings back to their default.
|<<config-cycle,config-cycle>>|Cycle an option between multiple values.
|<<config-edit,config-edit>>|Open the config.py file in the editor.
|<<config-source,config-source>>|Read a config.py file.
|<<config-unset,config-unset>>|Unset an option.
|<<config-write-py,config-write-py>>|Write the current configuration to a config.py file.
|<<download,download>>|Download a given URL, or current page if no URL given.
|<<download-cancel,download-cancel>>|Cancel the last/[count]th download.
|<<download-clear,download-clear>>|Remove all finished downloads from the list.
|<<download-delete,download-delete>>|Delete the last/[count]th download from disk.
|<<download-open,download-open>>|Open the last/[count]th download.
|<<download-remove,download-remove>>|Remove the last/[count]th download from the list.
|<<download-retry,download-retry>>|Retry the first failed/[count]th download.
|<<edit-command,edit-command>>|Open an editor to modify the current command.
|<<edit-url,edit-url>>|Navigate to a url formed in an external editor.
|<<enter-mode,enter-mode>>|Enter a key mode.
|<<fake-key,fake-key>>|Send a fake keypress or key string to the website or qutebrowser.
|<<follow-selected,follow-selected>>|Follow the selected text.
|<<forward,forward>>|Go forward in the history of the current tab.
|<<fullscreen,fullscreen>>|Toggle fullscreen mode.
|<<greasemonkey-reload,greasemonkey-reload>>|Re-read Greasemonkey scripts from disk.
|<<help,help>>|Show help about a command or setting.
|<<hint,hint>>|Start hinting.
|<<history,history>>|Show browsing history.
|<<history-clear,history-clear>>|Clear all browsing history.
|<<home,home>>|Open main startpage in current tab.
|<<insert-text,insert-text>>|Insert text at cursor position.
|<<inspector,inspector>>|Toggle the web inspector.
|<<jseval,jseval>>|Evaluate a JavaScript string.
|<<jump-mark,jump-mark>>|Jump to the mark named by `key`.
|<<later,later>>|Execute a command after some time.
|<<message-error,message-error>>|Show an error message in the statusbar.
|<<message-info,message-info>>|Show an info message in the statusbar.
|<<message-warning,message-warning>>|Show a warning message in the statusbar.
|<<messages,messages>>|Show a log of past messages.
|<<navigate,navigate>>|Open typical prev/next links or navigate using the URL path.
|<<nop,nop>>|Do nothing.
|<<open,open>>|Open a URL in the current/[count]th tab.
|<<open-editor,open-editor>>|Open an external editor with the currently selected form field.
|<<print,print>>|Print the current/[count]th tab.
|<<quickmark-add,quickmark-add>>|Add a new quickmark.
|<<quickmark-del,quickmark-del>>|Delete a quickmark.
|<<quickmark-load,quickmark-load>>|Load a quickmark.
|<<quickmark-save,quickmark-save>>|Save the current page as a quickmark.
|<<quit,quit>>|Quit qutebrowser.
|<<record-macro,record-macro>>|Start or stop recording a macro.
|<<reload,reload>>|Reload the current/[count]th tab.
|<<repeat,repeat>>|Repeat a given command.
|<<repeat-command,repeat-command>>|Repeat the last executed command.
|<<report,report>>|Report a bug in qutebrowser.
|<<restart,restart>>|Restart qutebrowser while keeping existing tabs open.
|<<run-macro,run-macro>>|Run a recorded macro.
|<<run-with-count,run-with-count>>|Run a command with the given count.
|<<save,save>>|Save configs and state.
|<<scroll,scroll>>|Scroll the current tab in the given direction.
|<<scroll-page,scroll-page>>|Scroll the frame page-wise.
|<<scroll-px,scroll-px>>|Scroll the current tab by 'count * dx/dy' pixels.
|<<scroll-to-perc,scroll-to-perc>>|Scroll to a specific percentage of the page.
|<<search,search>>|Search for a text on the current page. With no text, clear results.
|<<search-next,search-next>>|Continue the search to the ([count]th) next term.
|<<search-prev,search-prev>>|Continue the search to the ([count]th) previous term.
|<<session-delete,session-delete>>|Delete a session.
|<<session-load,session-load>>|Load a session.
|<<session-save,session-save>>|Save a session.
|<<set,set>>|Set an option.
|<<set-cmd-text,set-cmd-text>>|Preset the statusbar to some text.
|<<set-mark,set-mark>>|Set a mark at the current scroll position in the current tab.
|<<spawn,spawn>>|Spawn a command in a shell.
|<<stop,stop>>|Stop loading in the current/[count]th tab.
|<<tab-clone,tab-clone>>|Duplicate the current tab.
|<<tab-close,tab-close>>|Close the current/[count]th tab.
|<<tab-focus,tab-focus>>|Select the tab given as argument/[count].
|<<tab-give,tab-give>>|Give the current tab to a new or existing window if win_id given.
|<<tab-move,tab-move>>|Move the current tab according to the argument and [count].
|<<tab-next,tab-next>>|Switch to the next tab, or switch [count] tabs forward.
|<<tab-only,tab-only>>|Close all tabs except for the current one.
|<<tab-pin,tab-pin>>|Pin/Unpin the current/[count]th tab.
|<<tab-prev,tab-prev>>|Switch to the previous tab, or switch [count] tabs back.
|<<tab-take,tab-take>>|Take a tab from another window.
|<<unbind,unbind>>|Unbind a keychain.
|<<undo,undo>>|Re-open the last closed tab or tabs.
|<<version,version>>|Show version information.
|<<view-source,view-source>>|Show the source of the current page in a new tab.
|<<window-only,window-only>>|Close all windows except for the current one.
|<<yank,yank>>|Yank something to the clipboard or primary selection.
|<<zoom,zoom>>|Set the zoom level for the current tab.
|<<zoom-in,zoom-in>>|Increase the zoom level for the current tab.
|<<zoom-out,zoom-out>>|Decrease the zoom level for the current tab.
|==============
[[adblock-update]]
=== adblock-update
Update the adblock block lists.

This updates `~/.local/share/qutebrowser/blocked-hosts` with downloaded host lists and re-reads `~/.config/qutebrowser/blocked-hosts`.

[[back]]
=== back
Syntax: +:back [*--tab*] [*--bg*] [*--window*]+

Go back in the history of the current tab.

==== optional arguments
* +*-t*+, +*--tab*+: Go back in a new tab.
* +*-b*+, +*--bg*+: Go back in a background tab.
* +*-w*+, +*--window*+: Go back in a new window.

==== count
How many pages to go back.

[[bind]]
=== bind
Syntax: +:bind [*--mode* 'mode'] [*--default*] ['key'] ['command']+

Bind a key to a command.

If no command is given, show the current binding for the given key. Using :bind without any arguments opens a page showing all keybindings.

==== positional arguments
* +'key'+: The keychain to bind. Examples of valid keychains are `gC`, `<Ctrl-X>` or `<Ctrl-C>a`.

* +'command'+: The command to execute, with optional args.

==== optional arguments
* +*-m*+, +*--mode*+: A comma-separated list of modes to bind the key in (default: `normal`). See `:help bindings.commands` for the
 available modes.

* +*-d*+, +*--default*+: If given, restore a default binding.

==== note
* This command does not split arguments after the last argument and handles quotes literally.
* With this command, +;;+ is interpreted literally instead of splitting off a second command.
* This command does not replace variables like +\{url\}+.

[[bookmark-add]]
=== bookmark-add
Syntax: +:bookmark-add [*--toggle*] ['url'] ['title']+

Save the current page as a bookmark, or a specific url.

If no url and title are provided, then save the current page as a bookmark. If a url and title have been provided, then save the given url as a bookmark with the provided title. You can view all saved bookmarks on the link:qute://bookmarks[bookmarks page].

==== positional arguments
* +'url'+: url to save as a bookmark. If not given, use url of current page.

* +'title'+: title of the new bookmark.

==== optional arguments
* +*-t*+, +*--toggle*+: remove the bookmark instead of raising an error if it already exists.


[[bookmark-del]]
=== bookmark-del
Syntax: +:bookmark-del ['url']+

Delete a bookmark.

==== positional arguments
* +'url'+: The url of the bookmark to delete. If not given, use the current page's url.


==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[bookmark-load]]
=== bookmark-load
Syntax: +:bookmark-load [*--tab*] [*--bg*] [*--window*] [*--delete*] 'url'+

Load a bookmark.

==== positional arguments
* +'url'+: The url of the bookmark to load.

==== optional arguments
* +*-t*+, +*--tab*+: Load the bookmark in a new tab.
* +*-b*+, +*--bg*+: Load the bookmark in a new background tab.
* +*-w*+, +*--window*+: Load the bookmark in a new window.
* +*-d*+, +*--delete*+: Whether to delete the bookmark afterwards.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[buffer]]
=== buffer
Syntax: +:buffer ['index']+

Select tab by index or url/title best match.

Focuses window if necessary when index is given. If both index and count are given, use count. With neither index nor count given, open the qute://tabs page.

==== positional arguments
* +'index'+: The [win_id/]index of the tab to focus. Or a substring in which case the closest match will be focused.


==== count
The tab index to focus, starting with 1.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[clear-keychain]]
=== clear-keychain
Clear the currently entered key chain.

[[clear-messages]]
=== clear-messages
Clear all message notifications.

[[click-element]]
=== click-element
Syntax: +:click-element [*--target* 'target'] [*--force-event*] 'filter' 'value'+

Click the element matching the given filter.

The given filter needs to result in exactly one element, otherwise, an error is shown.

==== positional arguments
* +'filter'+: How to filter the elements. id: Get an element based on its ID.

* +'value'+: The value to filter for.

==== optional arguments
* +*-t*+, +*--target*+: How to open the clicked element (normal/tab/tab-bg/window).
* +*-f*+, +*--force-event*+: Force generating a fake click event.

[[close]]
=== close
Close the current window.

[[config-clear]]
=== config-clear
Syntax: +:config-clear [*--save*]+

Set all settings back to their default.

==== optional arguments
* +*-s*+, +*--save*+: If given, all configuration in autoconfig.yml is also removed.


[[config-cycle]]
=== config-cycle
Syntax: +:config-cycle [*--pattern* 'pattern'] [*--temp*] [*--print*]
             'option' ['values' ['values' ...]]+

Cycle an option between multiple values.

==== positional arguments
* +'option'+: The name of the option.
* +'values'+: The values to cycle through.

==== optional arguments
* +*-u*+, +*--pattern*+: The URL pattern to use.
* +*-t*+, +*--temp*+: Set value temporarily until qutebrowser is closed.
* +*-p*+, +*--print*+: Print the value after setting.

[[config-edit]]
=== config-edit
Syntax: +:config-edit [*--no-source*]+

Open the config.py file in the editor.

==== optional arguments
* +*-n*+, +*--no-source*+: Don't re-source the config file after editing.

[[config-source]]
=== config-source
Syntax: +:config-source [*--clear*] ['filename']+

Read a config.py file.

==== positional arguments
* +'filename'+: The file to load. If not given, loads the default config.py.


==== optional arguments
* +*-c*+, +*--clear*+: Clear current settings first.

[[config-unset]]
=== config-unset
Syntax: +:config-unset [*--temp*] 'option'+

Unset an option.

This sets an option back to its default and removes it from autoconfig.yml.

==== positional arguments
* +'option'+: The name of the option.

==== optional arguments
* +*-t*+, +*--temp*+: Don't touch autoconfig.yml.

[[config-write-py]]
=== config-write-py
Syntax: +:config-write-py [*--force*] [*--defaults*] ['filename']+

Write the current configuration to a config.py file.

==== positional arguments
* +'filename'+: The file to write to, or not given for the default config.py.

==== optional arguments
* +*-f*+, +*--force*+: Force overwriting existing files.
* +*-d*+, +*--defaults*+: Write the defaults instead of values configured via :set.

[[download]]
=== download
Syntax: +:download [*--mhtml*] [*--dest* 'dest'] ['url']+

Download a given URL, or current page if no URL given.

==== positional arguments
* +'url'+: The URL to download. If not given, download the current page.

==== optional arguments
* +*-m*+, +*--mhtml*+: Download the current page and all assets as mhtml file.
* +*-d*+, +*--dest*+: The file path to write the download to, or not given to ask.

[[download-cancel]]
=== download-cancel
Syntax: +:download-cancel [*--all*]+

Cancel the last/[count]th download.

==== optional arguments
* +*-a*+, +*--all*+: Cancel all running downloads

==== count
The index of the download to cancel.

[[download-clear]]
=== download-clear
Remove all finished downloads from the list.

[[download-delete]]
=== download-delete
Delete the last/[count]th download from disk.

==== count
The index of the download to delete.

[[download-open]]
=== download-open
Syntax: +:download-open ['cmdline']+

Open the last/[count]th download.

If no specific command is given, this will use the system's default application to open the file.

==== positional arguments
* +'cmdline'+: The command which should be used to open the file. A `{}` is expanded to the temporary file name. If no `{}` is
 present, the filename is automatically appended to the
 cmdline.


==== count
The index of the download to open.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[download-remove]]
=== download-remove
Syntax: +:download-remove [*--all*]+

Remove the last/[count]th download from the list.

==== optional arguments
* +*-a*+, +*--all*+: Remove all finished downloads.

==== count
The index of the download to remove.

[[download-retry]]
=== download-retry
Retry the first failed/[count]th download.

==== count
The index of the download to retry.

[[edit-command]]
=== edit-command
Syntax: +:edit-command [*--run*]+

Open an editor to modify the current command.

==== optional arguments
* +*-r*+, +*--run*+: Run the command if the editor exits successfully.

[[edit-url]]
=== edit-url
Syntax: +:edit-url [*--bg*] [*--tab*] [*--window*] [*--private*] [*--related*] ['url']+

Navigate to a url formed in an external editor.

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.

==== optional arguments
* +*-b*+, +*--bg*+: Open in a new background tab.
* +*-t*+, +*--tab*+: Open in a new tab.
* +*-w*+, +*--window*+: Open in a new window.
* +*-p*+, +*--private*+: Open a new window in private browsing mode.
* +*-r*+, +*--related*+: If opening a new tab, position the tab as related to the current one (like clicking on a link).


[[enter-mode]]
=== enter-mode
Syntax: +:enter-mode 'mode'+

Enter a key mode.

==== positional arguments
* +'mode'+: The mode to enter.

[[fake-key]]
=== fake-key
Syntax: +:fake-key [*--global*] 'keystring'+

Send a fake keypress or key string to the website or qutebrowser.

:fake-key xy - sends the keychain 'xy' :fake-key <Ctrl-x> - sends Ctrl-x :fake-key <Escape> - sends the escape key

==== positional arguments
* +'keystring'+: The keystring to send.

==== optional arguments
* +*-g*+, +*--global*+: If given, the keys are sent to the qutebrowser UI.

[[follow-selected]]
=== follow-selected
Syntax: +:follow-selected [*--tab*]+

Follow the selected text.

==== optional arguments
* +*-t*+, +*--tab*+: Load the selected link in a new tab.

[[forward]]
=== forward
Syntax: +:forward [*--tab*] [*--bg*] [*--window*]+

Go forward in the history of the current tab.

==== optional arguments
* +*-t*+, +*--tab*+: Go forward in a new tab.
* +*-b*+, +*--bg*+: Go forward in a background tab.
* +*-w*+, +*--window*+: Go forward in a new window.

==== count
How many pages to go forward.

[[fullscreen]]
=== fullscreen
Syntax: +:fullscreen [*--leave*]+

Toggle fullscreen mode.

==== optional arguments
* +*-l*+, +*--leave*+: Only leave fullscreen if it was entered by the page.

[[greasemonkey-reload]]
=== greasemonkey-reload
Syntax: +:greasemonkey-reload [*--force*]+

Re-read Greasemonkey scripts from disk.

The scripts are read from a 'greasemonkey' subdirectory in qutebrowser's data directory (see `:version`).

==== optional arguments
* +*-f*+, +*--force*+: For any scripts that have required dependencies, re-download them.


[[help]]
=== help
Syntax: +:help [*--tab*] [*--bg*] [*--window*] ['topic']+

Show help about a command or setting.

==== positional arguments
* +'topic'+: The topic to show help for. 

 - :__command__ for commands.
 - __section__.__option__ for settings.


==== optional arguments
* +*-t*+, +*--tab*+: Open in a new tab.
* +*-b*+, +*--bg*+: Open in a background tab.
* +*-w*+, +*--window*+: Open in a new window.

[[hint]]
=== hint
Syntax: +:hint [*--mode* 'mode'] [*--add-history*] [*--rapid*]
     ['group'] ['target'] ['args' ['args' ...]]+

Start hinting.

==== positional arguments
* +'group'+: The element types to hint. 

 - `all`: All clickable elements.
 - `links`: Only links.
 - `images`: Only images.
 - `inputs`: Only input fields.
 


* +'target'+: What to do with the selected element. 

 - `normal`: Open the link.
 - `current`: Open the link in the current tab.
 - `tab`: Open the link in a new tab (honoring the
 `tabs.background_tabs` setting).
 - `tab-fg`: Open the link in a new foreground tab.
 - `tab-bg`: Open the link in a new background tab.
 - `window`: Open the link in a new window.
 - `hover` : Hover over the link.
 - `yank`: Yank the link to the clipboard.
 - `yank-primary`: Yank the link to the primary selection.
 - `run`: Run the argument as command.
 - `fill`: Fill the commandline with the command given as
 argument.
 - `download`: Download the link.
 - `userscript`: Call a userscript with `$QUTE_URL` set to the
 link.
 - `spawn`: Spawn a command.
 


* +'args'+: Arguments for spawn/userscript/run/fill. 

 - With `spawn`: The executable and arguments to spawn.
 `{hint-url}` will get replaced by the selected
 URL.
 - With `userscript`: The userscript to execute. Either store
 the userscript in
 `~/.local/share/qutebrowser/userscripts`
 (or `$XDG_DATA_DIR`), or use an absolute
 path.
 - With `fill`: The command to fill the statusbar with.
 `{hint-url}` will get replaced by the selected
 URL.
 - With `run`: Same as `fill`.


==== optional arguments
* +*-m*+, +*--mode*+: The hinting mode to use. 

 - `number`: Use numeric hints.
 - `letter`: Use the chars in the hints.chars setting.
 - `word`: Use hint words based on the html elements and the
 extra words.
 


* +*-a*+, +*--add-history*+: Whether to add the spawned or yanked link to the browsing history.

* +*-r*+, +*--rapid*+: Whether to do rapid hinting. With rapid hinting, the hint mode isn't left after a hint is followed, so you can easily
 open multiple links. This is only possible with targets
 `tab` (with `tabs.background_tabs=true`), `tab-bg`,
 `window`, `run`, `hover`, `userscript` and `spawn`.


==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[history]]
=== history
Syntax: +:history [*--tab*] [*--bg*] [*--window*]+

Show browsing history.

==== optional arguments
* +*-t*+, +*--tab*+: Open in a new tab.
* +*-b*+, +*--bg*+: Open in a background tab.
* +*-w*+, +*--window*+: Open in a new window.

[[history-clear]]
=== history-clear
Syntax: +:history-clear [*--force*]+

Clear all browsing history.

Note this only clears the global history (e.g. `~/.local/share/qutebrowser/history` on Linux) but not cookies, the back/forward history of a tab, cache or other persistent data.

==== optional arguments
* +*-f*+, +*--force*+: Don't ask for confirmation.

[[home]]
=== home
Open main startpage in current tab.

[[insert-text]]
=== insert-text
Syntax: +:insert-text 'text'+

Insert text at cursor position.

==== positional arguments
* +'text'+: The text to insert.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[inspector]]
=== inspector
Toggle the web inspector.

Note: Due a bug in Qt, the inspector will show incorrect request headers in the network tab.

[[jseval]]
=== jseval
Syntax: +:jseval [*--file*] [*--quiet*] [*--world* 'world'] 'js-code'+

Evaluate a JavaScript string.

==== positional arguments
* +'js-code'+: The string/file to evaluate.

==== optional arguments
* +*-f*+, +*--file*+: Interpret js-code as a path to a file. If the path is relative, the file is searched in a js/ subdir
 in qutebrowser's data dir, e.g.
 `~/.local/share/qutebrowser/js`.

* +*-q*+, +*--quiet*+: Don't show resulting JS object.
* +*-w*+, +*--world*+: Ignored on QtWebKit. On QtWebEngine, a world ID or name to run the snippet in.


==== note
* This command does not split arguments after the last argument and handles quotes literally.
* With this command, +;;+ is interpreted literally instead of splitting off a second command.

[[jump-mark]]
=== jump-mark
Syntax: +:jump-mark 'key'+

Jump to the mark named by `key`.

==== positional arguments
* +'key'+: mark identifier; capital indicates a global mark

[[later]]
=== later
Syntax: +:later 'ms' 'command'+

Execute a command after some time.

==== positional arguments
* +'ms'+: How many milliseconds to wait.
* +'command'+: The command to run, with optional args.

==== note
* This command does not split arguments after the last argument and handles quotes literally.
* With this command, +;;+ is interpreted literally instead of splitting off a second command.
* This command does not replace variables like +\{url\}+.

[[message-error]]
=== message-error
Syntax: +:message-error 'text'+

Show an error message in the statusbar.

==== positional arguments
* +'text'+: The text to show.

[[message-info]]
=== message-info
Syntax: +:message-info 'text'+

Show an info message in the statusbar.

==== positional arguments
* +'text'+: The text to show.

==== count
How many times to show the message

[[message-warning]]
=== message-warning
Syntax: +:message-warning 'text'+

Show a warning message in the statusbar.

==== positional arguments
* +'text'+: The text to show.

[[messages]]
=== messages
Syntax: +:messages [*--plain*] [*--tab*] [*--bg*] [*--window*] ['level']+

Show a log of past messages.

==== positional arguments
* +'level'+: Include messages with `level` or higher severity. Valid values: vdebug, debug, info, warning, error, critical.


==== optional arguments
* +*-p*+, +*--plain*+: Whether to show plaintext (as opposed to html).
* +*-t*+, +*--tab*+: Open in a new tab.
* +*-b*+, +*--bg*+: Open in a background tab.
* +*-w*+, +*--window*+: Open in a new window.

[[navigate]]
=== navigate
Syntax: +:navigate [*--tab*] [*--bg*] [*--window*] 'where'+

Open typical prev/next links or navigate using the URL path.

This tries to automatically click on typical _Previous Page_ or _Next Page_ links using some heuristics. Alternatively it can navigate by changing the current URL.

==== positional arguments
* +'where'+: What to open. 

 - `prev`: Open a _previous_ link.
 - `next`: Open a _next_ link.
 - `up`: Go up a level in the current URL.
 - `increment`: Increment the last number in the URL.
 Uses the
 link:settings.html#url.incdec_segments[url.incdec_segments]
 config option.
 - `decrement`: Decrement the last number in the URL.
 Uses the
 link:settings.html#url.incdec_segments[url.incdec_segments]
 config option.
 



==== optional arguments
* +*-t*+, +*--tab*+: Open in a new tab.
* +*-b*+, +*--bg*+: Open in a background tab.
* +*-w*+, +*--window*+: Open in a new window.

==== count
For `increment` and `decrement`, the number to change the URL by. For `up`, the number of levels to go up in the URL.


[[nop]]
=== nop
Do nothing.

[[open]]
=== open
Syntax: +:open [*--related*] [*--bg*] [*--tab*] [*--window*] [*--secure*] [*--private*]
     ['url']+

Open a URL in the current/[count]th tab.

If the URL contains newlines, each line gets opened in its own tab.

==== positional arguments
* +'url'+: The URL to open.

==== optional arguments
* +*-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.
* +*-w*+, +*--window*+: Open in a new window.
* +*-s*+, +*--secure*+: Force HTTPS.
* +*-p*+, +*--private*+: Open a new window in private browsing mode.

==== count
The tab index to open the URL in.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[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 `editor.command` config option.

[[print]]
=== print
Syntax: +:print [*--preview*] [*--pdf* 'file']+

Print the current/[count]th tab.

==== optional arguments
* +*-p*+, +*--preview*+: Show preview instead of printing.
* +*-f*+, +*--pdf*+: The file path to write the PDF to.

==== count
The tab index to print.

[[quickmark-add]]
=== quickmark-add
Syntax: +:quickmark-add 'url' 'name'+

Add a new quickmark.

You can view all saved quickmarks on the link:qute://bookmarks[bookmarks page].

==== positional arguments
* +'url'+: The url to add as quickmark.
* +'name'+: The name for the new quickmark.

[[quickmark-del]]
=== quickmark-del
Syntax: +:quickmark-del ['name']+

Delete a quickmark.

==== positional arguments
* +'name'+: The name of the quickmark to delete. If not given, delete the quickmark for the current page (choosing one arbitrarily
 if there are more than one).


==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[quickmark-load]]
=== quickmark-load
Syntax: +:quickmark-load [*--tab*] [*--bg*] [*--window*] 'name'+

Load a quickmark.

==== positional arguments
* +'name'+: The name of the quickmark to load.

==== optional arguments
* +*-t*+, +*--tab*+: Load the quickmark in a new tab.
* +*-b*+, +*--bg*+: Load the quickmark in a new background tab.
* +*-w*+, +*--window*+: Load the quickmark in a new window.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[quickmark-save]]
=== quickmark-save
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']+

Start or stop recording a macro.

==== positional arguments
* +'register'+: Which register to store the macro in.

[[reload]]
=== reload
Syntax: +:reload [*--force*]+

Reload the current/[count]th tab.

==== optional arguments
* +*-f*+, +*--force*+: Bypass the page cache.

==== count
The tab index to reload.

[[repeat]]
=== repeat
Syntax: +:repeat 'times' 'command'+

Repeat a given command.

==== positional arguments
* +'times'+: How many times to repeat.
* +'command'+: The command to run, with optional args.

==== note
* This command does not split arguments after the last argument and handles quotes literally.
* With this command, +;;+ is interpreted literally instead of splitting off a second command.
* This command does not replace variables like +\{url\}+.

[[repeat-command]]
=== repeat-command
Repeat the last executed command.

==== count
Which count to pass the command.

[[report]]
=== report
Report a bug in qutebrowser.

[[restart]]
=== restart
Restart qutebrowser while keeping existing tabs open.

[[run-macro]]
=== run-macro
Syntax: +:run-macro ['register']+

Run a recorded macro.

==== positional arguments
* +'register'+: Which macro to run.

==== count
How many times to run the macro.

[[run-with-count]]
=== run-with-count
Syntax: +:run-with-count 'count-arg' 'command'+

Run a command with the given count.

If run_with_count itself is run with a count, it multiplies count_arg.

==== positional arguments
* +'count-arg'+: The count to pass to the command.
* +'command'+: The command to run, with optional args.

==== count
The count that run_with_count itself received.

==== note
* This command does not split arguments after the last argument and handles quotes literally.
* With this command, +;;+ is interpreted literally instead of splitting off a second command.
* This command does not replace variables like +\{url\}+.

[[save]]
=== save
Syntax: +:save ['what' ['what' ...]]+

Save configs and state.

==== positional arguments
* +'what'+: What to save (`config`/`key-config`/`cookies`/...). If not given, everything is saved.


[[scroll]]
=== scroll
Syntax: +:scroll 'direction'+

Scroll the current tab in the given direction.

Note you can use `:run-with-count` to have a keybinding with a bigger scroll increment.

==== positional arguments
* +'direction'+: In which direction to scroll (up/down/left/right/top/bottom).


==== count
multiplier

[[scroll-page]]
=== scroll-page
Syntax: +:scroll-page [*--top-navigate* 'ACTION'] [*--bottom-navigate* 'ACTION'] 'x' 'y'+

Scroll the frame page-wise.

==== positional arguments
* +'x'+: How many pages to scroll to the right.
* +'y'+: How many pages to scroll down.

==== optional arguments
* +*-t*+, +*--top-navigate*+: :navigate action (prev, decrement) to run when scrolling up at the top of the page.

* +*-b*+, +*--bottom-navigate*+: :navigate action (next, increment) to run when scrolling down at the bottom of the page.


==== count
multiplier

[[scroll-px]]
=== scroll-px
Syntax: +:scroll-px 'dx' 'dy'+

Scroll the current tab by 'count * dx/dy' pixels.

==== positional arguments
* +'dx'+: How much to scroll in x-direction.
* +'dy'+: How much to scroll in y-direction.

==== count
multiplier

[[scroll-to-perc]]
=== scroll-to-perc
Syntax: +:scroll-to-perc [*--horizontal*] ['perc']+

Scroll to a specific percentage of the page.

The percentage can be given either as argument or as count. If no percentage is given, the page is scrolled to the end.

==== positional arguments
* +'perc'+: Percentage to scroll.

==== optional arguments
* +*-x*+, +*--horizontal*+: Scroll horizontally instead of vertically.

==== count
Percentage to scroll.

[[search]]
=== search
Syntax: +:search [*--reverse*] ['text']+

Search for a text on the current page. With no text, clear results.

==== positional arguments
* +'text'+: The text to search for.

==== optional arguments
* +*-r*+, +*--reverse*+: Reverse search direction.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[search-next]]
=== search-next
Continue the search to the ([count]th) next term.

==== count
How many elements to ignore.

[[search-prev]]
=== search-prev
Continue the search to the ([count]th) previous term.

==== count
How many elements to ignore.

[[session-delete]]
=== session-delete
Syntax: +:session-delete [*--force*] 'name'+

Delete a session.

==== positional arguments
* +'name'+: The name of the session.

==== optional arguments
* +*-f*+, +*--force*+: Force deleting internal sessions (starting with an underline).


[[session-load]]
=== session-load
Syntax: +:session-load [*--clear*] [*--temp*] [*--force*] [*--delete*] 'name'+

Load a session.

==== positional arguments
* +'name'+: The name of the session.

==== optional arguments
* +*-c*+, +*--clear*+: Close all existing windows.
* +*-t*+, +*--temp*+: Don't set the current session for :session-save.
* +*-f*+, +*--force*+: Force loading internal sessions (starting with an underline).

* +*-d*+, +*--delete*+: Delete the saved session once it has loaded.

[[session-save]]
=== session-save
Syntax: +:session-save [*--current*] [*--quiet*] [*--force*] [*--only-active-window*]
             [*--with-private*]
             ['name']+

Save a session.

==== positional arguments
* +'name'+: The name of the session. If not given, the session configured in session.default_name is saved.


==== optional arguments
* +*-c*+, +*--current*+: Save the current session instead of the default.
* +*-q*+, +*--quiet*+: Don't show confirmation message.
* +*-f*+, +*--force*+: Force saving internal sessions (starting with an underline).
* +*-o*+, +*--only-active-window*+: Saves only tabs of the currently active window.
* +*-p*+, +*--with-private*+: Include private windows.

[[set]]
=== set
Syntax: +:set [*--temp*] [*--print*] [*--pattern* 'pattern'] ['option'] ['value']+

Set an option.

If the option name ends with '?', the value of the option is shown instead. Using :set without any arguments opens a page where settings can be changed interactively.

==== positional arguments
* +'option'+: The name of the option.
* +'value'+: The value to set.

==== optional arguments
* +*-t*+, +*--temp*+: Set value temporarily until qutebrowser is closed.
* +*-p*+, +*--print*+: Print the value after setting.
* +*-u*+, +*--pattern*+: The URL pattern to use.

[[set-cmd-text]]
=== set-cmd-text
Syntax: +:set-cmd-text [*--space*] [*--append*] [*--run-on-count*] 'text'+

Preset the statusbar to some text.

==== positional arguments
* +'text'+: The commandline to set.

==== optional arguments
* +*-s*+, +*--space*+: If given, a space is added to the end.
* +*-a*+, +*--append*+: If given, the text is appended to the current text.
* +*-r*+, +*--run-on-count*+: If given with a count, the command is run with the given count rather than setting the command text.


==== count
The count if given.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[set-mark]]
=== set-mark
Syntax: +:set-mark 'key'+

Set a mark at the current scroll position in the current tab.

==== positional arguments
* +'key'+: mark identifier; capital indicates a global mark

[[spawn]]
=== spawn
Syntax: +:spawn [*--userscript*] [*--verbose*] [*--output*] [*--detach*] 'cmdline'+

Spawn a command in a shell.

==== positional arguments
* +'cmdline'+: The commandline to execute.

==== optional arguments
* +*-u*+, +*--userscript*+: Run the command as a userscript. You can use an absolute path, or store the userscript in one of those
 locations:
 - `~/.local/share/qutebrowser/userscripts`
 (or `$XDG_DATA_DIR`)
 - `/usr/share/qutebrowser/userscripts`

* +*-v*+, +*--verbose*+: Show notifications when the command started/exited.
* +*-o*+, +*--output*+: Whether the output should be shown in a new tab.
* +*-d*+, +*--detach*+: Whether the command should be detached from qutebrowser.

==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[stop]]
=== stop
Stop loading in the current/[count]th tab.

==== count
The tab index to stop.

[[tab-clone]]
=== tab-clone
Syntax: +:tab-clone [*--bg*] [*--window*]+

Duplicate the current tab.

==== optional arguments
* +*-b*+, +*--bg*+: Open in a background tab.
* +*-w*+, +*--window*+: Open in a new window.

[[tab-close]]
=== tab-close
Syntax: +:tab-close [*--prev*] [*--next*] [*--opposite*] [*--force*]+

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'.

* +*-f*+, +*--force*+: Avoid confirmation for pinned tabs.

==== count
The tab index to close

[[tab-focus]]
=== tab-focus
Syntax: +:tab-focus [*--no-last*] ['index']+

Select the tab given as argument/[count].

If neither count nor index are given, it behaves like tab-next. If both are given, use count.

==== positional arguments
* +'index'+: The tab index to focus, starting with 1. The special value `last` focuses the last focused tab (regardless of count).
 Negative indices count from the end, such that -1 is the
 last tab.


==== optional arguments
* +*-n*+, +*--no-last*+: Whether to avoid focusing last tab if already focused.

==== count
The tab index to focus, starting with 1.

[[tab-give]]
=== tab-give
Syntax: +:tab-give ['win-id']+

Give the current tab to a new or existing window if win_id given.

If no win_id is given, the tab will get detached into a new window.

==== positional arguments
* +'win-id'+: The window ID of the window to give the current tab to.

==== count
Overrides win_id (index starts at 1 for win_id=0).

[[tab-move]]
=== tab-move
Syntax: +:tab-move ['index']+

Move the current tab according to the argument and [count].

If neither is given, move it to the first position.

==== positional arguments
* +'index'+: `+` or `-` to move relative to the current tab by count, or a default of 1 space.
 A tab index to move to that index.


==== count
If moving relatively: Offset. If moving absolutely: New position (default: 0). This
 overrides the index argument, if given.


[[tab-next]]
=== tab-next
Switch to the next tab, or switch [count] tabs forward.

==== count
How many tabs to switch forward.

[[tab-only]]
=== tab-only
Syntax: +:tab-only [*--prev*] [*--next*] [*--force*]+

Close all tabs except for the current one.

==== optional arguments
* +*-p*+, +*--prev*+: Keep tabs before the current.
* +*-n*+, +*--next*+: Keep tabs after the current.
* +*-f*+, +*--force*+: Avoid confirmation for pinned tabs.

[[tab-pin]]
=== tab-pin
Pin/Unpin the current/[count]th tab.

Pinning a tab shrinks it to the size of its title text. Attempting to close a pinned tab will cause a confirmation, unless --force is passed.

==== count
The tab index to pin or unpin

[[tab-prev]]
=== tab-prev
Switch to the previous tab, or switch [count] tabs back.

==== count
How many tabs to switch back.

[[tab-take]]
=== tab-take
Syntax: +:tab-take 'index'+

Take a tab from another window.

==== positional arguments
* +'index'+: The [win_id/]index of the tab to take. Or a substring in which case the closest match will be taken.


[[unbind]]
=== unbind
Syntax: +:unbind [*--mode* 'mode'] 'key'+

Unbind a keychain.

==== positional arguments
* +'key'+: The keychain to unbind. See the help for `:bind` for the correct syntax for keychains.


==== optional arguments
* +*-m*+, +*--mode*+: A mode to unbind the key in (default: `normal`). See `:help bindings.commands` for the available modes.


[[undo]]
=== undo
Re-open the last closed tab or tabs.

[[version]]
=== version
Syntax: +:version [*--paste*]+

Show version information.

==== optional arguments
* +*-p*+, +*--paste*+: Paste to pastebin.

[[view-source]]
=== view-source
Syntax: +:view-source [*--edit*]+

Show the source of the current page in a new tab.

==== optional arguments
* +*-e*+, +*--edit*+: Edit the source in the editor instead of opening a tab.

[[window-only]]
=== window-only
Close all windows except for the current one.

[[yank]]
=== yank
Syntax: +:yank [*--sel*] [*--keep*] ['what']+

Yank something to the clipboard or primary selection.

==== positional arguments
* +'what'+: What to yank. 

 - `url`: The current URL.
 - `pretty-url`: The URL in pretty decoded form.
 - `title`: The current page's title.
 - `domain`: The current scheme, domain, and port number.
 - `selection`: The selection under the cursor.
 



==== optional arguments
* +*-s*+, +*--sel*+: Use the primary selection instead of the clipboard.
* +*-k*+, +*--keep*+: Stay in visual mode after yanking the selection.

[[zoom]]
=== zoom
Syntax: +:zoom ['zoom']+

Set the zoom level for the current tab.

The zoom can be given as argument or as [count]. If neither is given, the zoom is set to the default zoom. If both are given, use [count].

==== positional arguments
* +'zoom'+: The zoom percentage to set.

==== count
The zoom percentage to set.

[[zoom-in]]
=== zoom-in
Increase the zoom level for the current tab.

==== count
How many steps to zoom in.

[[zoom-out]]
=== zoom-out
Decrease the zoom level for the current tab.

==== count
How many steps to zoom out.


== Commands not usable in normal mode
.Quick reference
[options="header",width="75%",cols="25%,75%"]
|==============
|Command|Description
|<<command-accept,command-accept>>|Execute the command currently in the commandline.
|<<command-history-next,command-history-next>>|Go forward in the commandline history.
|<<command-history-prev,command-history-prev>>|Go back in the commandline history.
|<<completion-item-del,completion-item-del>>|Delete the current completion item.
|<<completion-item-focus,completion-item-focus>>|Shift the focus of the completion menu to another item.
|<<completion-item-yank,completion-item-yank>>|Yank the current completion item into the clipboard.
|<<drop-selection,drop-selection>>|Drop selection and keep selection mode enabled.
|<<follow-hint,follow-hint>>|Follow a hint.
|<<leave-mode,leave-mode>>|Leave the mode we're currently in.
|<<move-to-end-of-document,move-to-end-of-document>>|Move the cursor or selection to the end of the document.
|<<move-to-end-of-line,move-to-end-of-line>>|Move the cursor or selection to the end of line.
|<<move-to-end-of-next-block,move-to-end-of-next-block>>|Move the cursor or selection to the end of next block.
|<<move-to-end-of-prev-block,move-to-end-of-prev-block>>|Move the cursor or selection to the end of previous block.
|<<move-to-end-of-word,move-to-end-of-word>>|Move the cursor or selection to the end of the word.
|<<move-to-next-char,move-to-next-char>>|Move the cursor or selection to the next char.
|<<move-to-next-line,move-to-next-line>>|Move the cursor or selection to the next line.
|<<move-to-next-word,move-to-next-word>>|Move the cursor or selection to the next word.
|<<move-to-prev-char,move-to-prev-char>>|Move the cursor or selection to the previous char.
|<<move-to-prev-line,move-to-prev-line>>|Move the cursor or selection to the prev line.
|<<move-to-prev-word,move-to-prev-word>>|Move the cursor or selection to the previous word.
|<<move-to-start-of-document,move-to-start-of-document>>|Move the cursor or selection to the start of the document.
|<<move-to-start-of-line,move-to-start-of-line>>|Move the cursor or selection to the start of the line.
|<<move-to-start-of-next-block,move-to-start-of-next-block>>|Move the cursor or selection to the start of next block.
|<<move-to-start-of-prev-block,move-to-start-of-prev-block>>|Move the cursor or selection to the start of previous block.
|<<prompt-accept,prompt-accept>>|Accept the current prompt.
|<<prompt-item-focus,prompt-item-focus>>|Shift the focus of the prompt file completion menu to another item.
|<<prompt-open-download,prompt-open-download>>|Immediately open a download.
|<<prompt-yank,prompt-yank>>|Yank URL to clipboard or primary selection.
|<<rl-backward-char,rl-backward-char>>|Move back a character.
|<<rl-backward-delete-char,rl-backward-delete-char>>|Delete the character before the cursor.
|<<rl-backward-kill-word,rl-backward-kill-word>>|Remove chars from the cursor to the beginning of the word.
|<<rl-backward-word,rl-backward-word>>|Move back to the start of the current or previous word.
|<<rl-beginning-of-line,rl-beginning-of-line>>|Move to the start of the line.
|<<rl-delete-char,rl-delete-char>>|Delete the character after the cursor.
|<<rl-end-of-line,rl-end-of-line>>|Move to the end of the line.
|<<rl-forward-char,rl-forward-char>>|Move forward a character.
|<<rl-forward-word,rl-forward-word>>|Move forward to the end of the next word.
|<<rl-kill-line,rl-kill-line>>|Remove chars from the cursor to the end of the line.
|<<rl-kill-word,rl-kill-word>>|Remove chars from the cursor to the end of the current word.
|<<rl-unix-filename-rubout,rl-unix-filename-rubout>>|Remove chars from the cursor to the previous path separator.
|<<rl-unix-line-discard,rl-unix-line-discard>>|Remove chars backward from the cursor to the beginning of the line.
|<<rl-unix-word-rubout,rl-unix-word-rubout>>|Remove chars from the cursor to the beginning of the word.
|<<rl-yank,rl-yank>>|Paste the most recently deleted text.
|<<toggle-selection,toggle-selection>>|Toggle caret selection mode.
|==============
[[command-accept]]
=== command-accept
Syntax: +:command-accept [*--rapid*]+

Execute the command currently in the commandline.

==== optional arguments
* +*-r*+, +*--rapid*+: Run the command without closing or clearing the command bar.

[[command-history-next]]
=== command-history-next
Go forward in the commandline history.

[[command-history-prev]]
=== command-history-prev
Go back in the commandline history.

[[completion-item-del]]
=== completion-item-del
Delete the current completion item.

[[completion-item-focus]]
=== completion-item-focus
Syntax: +:completion-item-focus [*--history*] 'which'+

Shift the focus of the completion menu to another item.

==== positional arguments
* +'which'+: 'next', 'prev', 'next-category', or 'prev-category'.

==== optional arguments
* +*-H*+, +*--history*+: Navigate through command history if no text was typed.

[[completion-item-yank]]
=== completion-item-yank
Syntax: +:completion-item-yank [*--sel*]+

Yank the current completion item into the clipboard.

==== optional arguments
* +*-s*+, +*--sel*+: Use the primary selection instead of the clipboard.

[[drop-selection]]
=== drop-selection
Drop selection and keep selection mode enabled.

[[follow-hint]]
=== follow-hint
Syntax: +:follow-hint [*--select*] ['keystring']+

Follow a hint.

==== positional arguments
* +'keystring'+: The hint to follow.

==== optional arguments
* +*-s*+, +*--select*+: Only select the given hint, don't necessarily follow it.

[[leave-mode]]
=== leave-mode
Leave the mode we're currently in.

[[move-to-end-of-document]]
=== move-to-end-of-document
Move the cursor or selection to the end of the document.

[[move-to-end-of-line]]
=== move-to-end-of-line
Move the cursor or selection to the end of line.

[[move-to-end-of-next-block]]
=== move-to-end-of-next-block
Move the cursor or selection to the end of next block.

==== count
How many blocks to move.

[[move-to-end-of-prev-block]]
=== move-to-end-of-prev-block
Move the cursor or selection to the end of previous block.

==== count
How many blocks to move.

[[move-to-end-of-word]]
=== move-to-end-of-word
Move the cursor or selection to the end of the word.

==== count
How many words to move.

[[move-to-next-char]]
=== move-to-next-char
Move the cursor or selection to the next char.

==== count
How many lines to move.

[[move-to-next-line]]
=== move-to-next-line
Move the cursor or selection to the next line.

==== count
How many lines to move.

[[move-to-next-word]]
=== move-to-next-word
Move the cursor or selection to the next word.

==== count
How many words to move.

[[move-to-prev-char]]
=== move-to-prev-char
Move the cursor or selection to the previous char.

==== count
How many chars to move.

[[move-to-prev-line]]
=== move-to-prev-line
Move the cursor or selection to the prev line.

==== count
How many lines to move.

[[move-to-prev-word]]
=== move-to-prev-word
Move the cursor or selection to the previous word.

==== count
How many words to move.

[[move-to-start-of-document]]
=== move-to-start-of-document
Move the cursor or selection to the start of the document.

[[move-to-start-of-line]]
=== move-to-start-of-line
Move the cursor or selection to the start of the line.

[[move-to-start-of-next-block]]
=== move-to-start-of-next-block
Move the cursor or selection to the start of next block.

==== count
How many blocks to move.

[[move-to-start-of-prev-block]]
=== move-to-start-of-prev-block
Move the cursor or selection to the start of previous block.

==== count
How many blocks to move.

[[prompt-accept]]
=== prompt-accept
Syntax: +:prompt-accept ['value']+

Accept the current prompt.

==== positional arguments
* +'value'+: If given, uses this value instead of the entered one. For boolean prompts, "yes"/"no" are accepted as value.


[[prompt-item-focus]]
=== prompt-item-focus
Syntax: +:prompt-item-focus 'which'+

Shift the focus of the prompt file completion menu to another item.

==== positional arguments
* +'which'+: 'next', 'prev'

[[prompt-open-download]]
=== prompt-open-download
Syntax: +:prompt-open-download ['cmdline']+

Immediately open a download.

If no specific command is given, this will use the system's default application to open the file.

==== positional arguments
* +'cmdline'+: The command which should be used to open the file. A `{}` is expanded to the temporary file name. If no `{}` is
 present, the filename is automatically appended to the
 cmdline.


==== note
* This command does not split arguments after the last argument and handles quotes literally.

[[prompt-yank]]
=== prompt-yank
Syntax: +:prompt-yank [*--sel*]+

Yank URL to clipboard or primary selection.

==== optional arguments
* +*-s*+, +*--sel*+: Use the primary selection instead of the clipboard.

[[rl-backward-char]]
=== rl-backward-char
Move back a character.

This acts like readline's backward-char.

[[rl-backward-delete-char]]
=== rl-backward-delete-char
Delete the character before the cursor.

This acts like readline's backward-delete-char.

[[rl-backward-kill-word]]
=== rl-backward-kill-word
Remove chars from the cursor to the beginning of the word.

This acts like readline's backward-kill-word. Any non-alphanumeric character is considered a word delimiter.

[[rl-backward-word]]
=== rl-backward-word
Move back to the start of the current or previous word.

This acts like readline's backward-word.

[[rl-beginning-of-line]]
=== rl-beginning-of-line
Move to the start of the line.

This acts like readline's beginning-of-line.

[[rl-delete-char]]
=== rl-delete-char
Delete the character after the cursor.

This acts like readline's delete-char.

[[rl-end-of-line]]
=== rl-end-of-line
Move to the end of the line.

This acts like readline's end-of-line.

[[rl-forward-char]]
=== rl-forward-char
Move forward a character.

This acts like readline's forward-char.

[[rl-forward-word]]
=== rl-forward-word
Move forward to the end of the next word.

This acts like readline's forward-word.

[[rl-kill-line]]
=== rl-kill-line
Remove chars from the cursor to the end of the line.

This acts like readline's kill-line.

[[rl-kill-word]]
=== rl-kill-word
Remove chars from the cursor to the end of the current word.

This acts like readline's kill-word.

[[rl-unix-filename-rubout]]
=== rl-unix-filename-rubout
Remove chars from the cursor to the previous path separator.

This acts like readline's unix-filename-rubout.

[[rl-unix-line-discard]]
=== rl-unix-line-discard
Remove chars backward from the cursor to the beginning of the line.

This acts like readline's unix-line-discard.

[[rl-unix-word-rubout]]
=== rl-unix-word-rubout
Remove chars from the cursor to the beginning of the word.

This acts like readline's unix-word-rubout. Whitespace is used as a word delimiter.

[[rl-yank]]
=== rl-yank
Paste the most recently deleted text.

This acts like readline's yank.

[[toggle-selection]]
=== toggle-selection
Toggle caret selection mode.


== Debugging commands
These commands are mainly intended for debugging. They are hidden if qutebrowser was started without the `--debug`-flag.

.Quick reference
[options="header",width="75%",cols="25%,75%"]
|==============
|Command|Description
|<<debug-all-objects,debug-all-objects>>|Print a list of  all objects to the debug log.
|<<debug-cache-stats,debug-cache-stats>>|Print LRU cache stats.
|<<debug-clear-ssl-errors,debug-clear-ssl-errors>>|Clear remembered SSL error answers.
|<<debug-console,debug-console>>|Show the debugging console.
|<<debug-crash,debug-crash>>|Crash for debugging purposes.
|<<debug-dump-history,debug-dump-history>>|Dump the history to a file in the old pre-SQL format.
|<<debug-dump-page,debug-dump-page>>|Dump the current page's content to a file.
|<<debug-log-capacity,debug-log-capacity>>|Change the number of log lines to be stored in RAM.
|<<debug-log-filter,debug-log-filter>>|Change the log filter for console logging.
|<<debug-log-level,debug-log-level>>|Change the log level for console logging.
|<<debug-pyeval,debug-pyeval>>|Evaluate a python string and display the results as a web page.
|<<debug-set-fake-clipboard,debug-set-fake-clipboard>>|Put data into the fake clipboard and enable logging, used for tests.
|<<debug-trace,debug-trace>>|Trace executed code via hunter.
|<<debug-webaction,debug-webaction>>|Execute a webaction.
|==============
[[debug-all-objects]]
=== debug-all-objects
Print a list of  all objects to the debug log.

[[debug-cache-stats]]
=== debug-cache-stats
Print LRU cache stats.

[[debug-clear-ssl-errors]]
=== debug-clear-ssl-errors
Clear remembered SSL error answers.

[[debug-console]]
=== debug-console
Show the debugging console.

[[debug-crash]]
=== debug-crash
Syntax: +:debug-crash ['typ']+

Crash for debugging purposes.

==== positional arguments
* +'typ'+: either 'exception' or 'segfault'.

[[debug-dump-history]]
=== debug-dump-history
Syntax: +:debug-dump-history 'dest'+

Dump the history to a file in the old pre-SQL format.

==== positional arguments
* +'dest'+: Where to write the file to.

[[debug-dump-page]]
=== debug-dump-page
Syntax: +:debug-dump-page [*--plain*] 'dest'+

Dump the current page's content to a file.

==== positional arguments
* +'dest'+: Where to write the file to.

==== optional arguments
* +*-p*+, +*--plain*+: Write plain text instead of HTML.

[[debug-log-capacity]]
=== debug-log-capacity
Syntax: +:debug-log-capacity 'capacity'+

Change the number of log lines to be stored in RAM.

==== positional arguments
* +'capacity'+: Number of lines for the log.

[[debug-log-filter]]
=== debug-log-filter
Syntax: +:debug-log-filter 'filters'+

Change the log filter for console logging.

==== positional arguments
* +'filters'+: A comma separated list of logger names. Can also be "none" to clear any existing filters.


[[debug-log-level]]
=== debug-log-level
Syntax: +:debug-log-level 'level'+

Change the log level for console logging.

==== positional arguments
* +'level'+: The log level to set.

[[debug-pyeval]]
=== debug-pyeval
Syntax: +:debug-pyeval [*--file*] [*--quiet*] 's'+

Evaluate a python string and display the results as a web page.

==== positional arguments
* +'s'+: The string to evaluate.

==== optional arguments
* +*-f*+, +*--file*+: Interpret s as a path to file, also implies --quiet.
* +*-q*+, +*--quiet*+: Don't show the output in a new tab.

==== note
* This command does not split arguments after the last argument and handles quotes literally.
* With this command, +;;+ is interpreted literally instead of splitting off a second command.

[[debug-set-fake-clipboard]]
=== debug-set-fake-clipboard
Syntax: +:debug-set-fake-clipboard ['s']+

Put data into the fake clipboard and enable logging, used for tests.

==== positional arguments
* +'s'+: The text to put into the fake clipboard, or unset to enable logging.

[[debug-trace]]
=== debug-trace
Syntax: +:debug-trace ['expr']+

Trace executed code via hunter.

==== positional arguments
* +'expr'+: What to trace, passed to hunter.

==== note
* This command does not split arguments after the last argument and handles quotes literally.
* With this command, +;;+ is interpreted literally instead of splitting off a second command.

[[debug-webaction]]
=== debug-webaction
Syntax: +:debug-webaction 'action'+

Execute a webaction.

Available actions: http://doc.qt.io/archives/qt-5.5/qwebpage.html#WebAction-enum (WebKit) http://doc.qt.io/qt-5/qwebenginepage.html#WebAction-enum (WebEngine)

==== positional arguments
* +'action'+: The action to execute, e.g. MoveToNextChar.

==== count
How many times to repeat the action.