Pentadactyl has a number of internal variables and switches which can be set to achieve special effects. These options come in 8 forms:
Array elements, such as in the <args> parameter of :command macros, may be accessed by appending [{n}], where {n} is the one-based array index, to the macro name. The first argument of a command is therefore accessed with <args[1]>.
Any substring enclosed by <{ and }> is automatically elided if any of the contained macros aren't currently valid. A literal < or > character may be included with the special escape sequences <lt> or <gt> respectively.
For example, given the format string <{(cmd: <column>) }><{line: <line> }><file>, where line=32 and file=Lieder eines fahrenden Gesellen.txt, the result is formatted as line: 32 'Lieder eines fahrenden Gesellen.txt'
Show all options.
For boolean options, turn them on. For all other types, show their values.
For boolean options, turn them off. For all other types, display an error.
For boolean options, invert their value. For all other types, display an error.
For list options, toggle the specified values.
If the option is a list, the given values are toggled. Given, :set opt=foo,bar then, :set opt!=foo,baz has the same result as :set opt=bar,baz
This extends to string options in a natural way, e.g., :set stal!=always,never toggles between the two values.
Set string or number option to {value}. For numeric options the value must be given in decimal. The old value can be inserted by typing c_<Tab>.
Add the {value} to a number option, or append the {value} to a string option. When the option is a comma separated list, a comma is added, unless the value was empty. If the option is a list of flags, superfluous flags are removed. When adding a flag that was already present the option value doesn't change.
Multiply the {value} to a number option, or prepend the {value} to a string option. When the option is a comma separated list, a comma is added, unless the value was empty.
Subtract the {value} from a number option, or remove the {value} from a string option if it is there. If the {value} is not found in a string option, there is no error or warning. When the option is a comma separated list, a comma is deleted, unless the option becomes empty. When the option is a list of flags, {value} must be exactly as they appear in the option. Remove flags one by one to avoid problems.
Firefox options can be viewed and set with the following commands:
Show the Firefox preferences dialog. You can change the browser preferences from this dialog. Be aware that not all Firefox preferences work, because Pentadactyl overrides some key bindings and changes Firefox's GUI.
Opens about:config in the current tab, where you can change advanced Firefox preferences.
A list of items which, when opened in a new tab, are automatically focused. Available items:
Like 'wildmode', but when the c_<A-Tab> key is pressed.
Enables automatic completion for completion contexts (see :contexts) matching the given regular expressions. When automatic completion is enabled, the completion list is automatically opened when the command line is focused. Thereafter, any key press triggers a completion update for the matching contexts. Non-matching contexts will only be updated when the c_<Tab> key is pressed. This option is useful for disabling auto-completion for computationally intensive contexts that don't perform well when your system is under load.
Note: Completion contexts have names very much like Unix path names. These denote the tree in which they're called. A completer will never be called unless every completer preceding it in the tree was also called. For example, if your completer excludes /ex/, it will also exclude /ex/bmarks, and so on.To go in the other direction, i.e. only enable auto-completion for those commands, you have to jump through some hoops, due to the way contexts work (see the note above): /ex/(bmarks|history),^(/|/ex/?)$
Replace occurrences of ! with the previous command when executing external commands.
List of directories searched when executing the :cd command. This is only used for relative paths; if an absolute path is specified, this option is ignored.
If the CDPATH environment variable is set this path list is appended to the default value of ..
When to accept cookies.
The lifetime for which to accept cookies. The available options are:
Items which are completed at the :open prompts. Available items:
The order is important, such that :set complete=bsf will list bookmarks followed by matching quick searches and then matching files.
Warning: Using b and h can make completion very slow if there are many items.:downloads sort order, in order of precedence. Each element must be preceded by a + or -, indicating ascending or descending sorting, respectively. Valid sort orders are:
Sets the default search engine. The default search engine is used by :open and related commands for arguments which include no search or bookmark keywords and can't otherwise be converted into URLs or existing file names.
This means that with 'defsearch' set to youtube, :open Tim Minchin behaves exactly as :open youtube Tim Minchin, so long as you don't have a search or bookmark keyword called ‘Tim’.
Set the external text editor. This is the editor used by I_<C-i>, gF, and other commands which launch an external text editor.
Accepts a macro-string with the following escapes available. Arguments containing escapes which are not relevant to a given call are automatically elided. All field splitting is done before format characters are processed.
Changes the character encoding of the current buffer. Valid only until a new page is loaded.
Ring the bell when an error message is displayed. See also 'visualbell'.
A list of autocommand event names which should be ignored. If the list contains the value all then all events are ignored.
Allow reading of an RC file in the current directory. This file is sourced after the default pentadactylrc file in your home directory.
Defines specialized CSS selectors or XPath expressions for arbitrary extended-hints modes. The syntax is the same as for 'hinttags'. If no matches are found, the value of 'hinttags' is used.
Changes the character encoding that Pentadactyl uses to read and write files.
Find case matching mode.
Define the conditions under which hints selected by typing the link substring are followed. Hints selected by typing their label (as specified by 'hintkeys') are always followed immediately.
Possible values:
Show the current window full-screen. Also hide certain GUI elements, such as status-line and tab bar.
Show or hide certain GUI elements.
Supported characters:
See also 'showtabline'.
Note: Scrollbar changes require a page reload to take effect. Note: Only one of l or r may be included.Name of the main help file. This is that page shown if the :help command is called without any arguments.
When generating hints for input elements that do not have an explicit caption, this specifies the methods used to generate a textual hint. The options are attempted in the order they are given, and the first successful value is used.
The keys used to label and select hints. With its default value, each hint has a unique number which can be typed to select it, while all other characters are used to filter hints based on their text. With a value such as asdfg;lkjh, each hint is ‘numbered’ based on the characters of the home row.
Change the hint matching algorithm used in Hints mode.
Possible values:
A list of CSS selectors or XPath expressions used to select elements for hinting. Values beginning with the string xpath: are treated as XPath expressions, while any other values are treated as CSS selectors. Can be overridden for individual extended-hints modes with the 'extendedhinttags' option.
Timeout in milliseconds before automatically following a non-unique hint. The timeout is measured since the last time a key listed in 'hintkeys' was pressed. It has no effect when narrowing hints by typing part of their text. Set to 0 (the default) to only follow hints after pressing <CR> or when the hint is unique.
Maximum number of Ex commands and find patterns to store in the command-line history.
Use Insert mode as the default for text areas. This is useful if you want to use the known Firefox interface for editing text areas. Input fields default to this behavior irrespective of this option's setting.
Text Edit mode can be entered with I_<C-t> from Insert mode.
Use the JavaScript debugger service for JavaScript completion.
XPath or CSS selector strings of jumpable elements for extended hint modes.
A regular expression list that defines which plugins are loaded at startup or via :loadplugins. The first item to match is the one that takes effect. If no items match, the file is not loaded. Setting this to a blank value effectively disables plugin loading.
For example, to prepend to the default value of this option to load all plugins except for foobar-plugin, you could use:
:set loadplugins^=!foobar-plugin
Alternatively, you can specify which plugins to load and which to omit in your pentadactylrc using something like the following:
:set loadplugins=!foo|bar,\.(js|penta)$
That will load all plugins but foo and bar.
Note that in the first expression of the latter example you don't need parentheses, as the ! negates the whole of the following expression (cf. regexplist).
See also :runtime.
Pause the message list window when more than one screen of listings is displayed.
Defines which Ex commands open pages in new tabs rather than the current tab by default. This may be overridden with the :tab command, and is usually inverted by affixing a ! to the command in question.
Possible values:
Patterns to use when guessing the next page in a document sequence after pressing the ]] key. Each pattern is successively tested against each link in the page (as defined by 'hinttags', starting with the last), and the first link to match is followed.
Enables or disables ‘offline’ mode, where network access is disabled and all web pages are loaded entirely from cache.
Info shown in the :pageinfo output.
Items available by default:
The order of the options defines the order in which they appear in the result.
Pass certain keys through directly for the given URLs. For any page with a URL matching a given regexp, all key events for keys listed in that regexp's value are passed through directly to Firefox, and are not processed by Pentadactyl in any way. Key names are separated by commas, where the first key name is treated as a list of individual keys and each subsequent key is treated as a key chain. Individual key entries always apply to all modes. Key chains apply only to non-input modes unless they begin with a key requiring a modifier other than shift.
More subtle and complex pass through can be achieved using groups and mode-specific mappings utilizing the <Pass> pseudo-key.
Pass unknown keys through to Firefox in these modes. The first element matching a currently active mode is the one that takes effect. Modes may be negated by prefixing them with a !.
Defines where to show requested pop-up windows. Applies only to links which request to open in a new window. The behavior of middle-, shift-, or control- clicking a link is unaffected by this option.
Possible values are:
If neither tab nor window is provided, all pop-ups open in the current tab. tab and window are mutually exclusive, and the last one listed is effective.
Note: This option does not alter the Firefox pop-up blocker behavior in any way.Patterns to use when guessing the previous page in a document sequence after pressing the [[ key. Each pattern is successively tested against each link in the page (as defined by 'hinttags', starting with the last), and the first link to match is followed.
Set the private browsing option. In private browsing mode history, cache files, cookies, form data, passwords, download list entries, local and URL marks, command-line history and macros are available only for the duration of the private browsing session and deleted when returning to normal browsing mode. See also privacy.
List of directories searched for runtime files:
Example:
:set runtimepath=~/mypentadactyl,~/.pentadactyl
This will search for plugins in both ~/mypentadactyl/plugins and ~/.pentadactyl/plugins
On startup, if the environment variable $PENTADACTYL_RUNTIME does not exist, Pentadactyl will set it to match this value.
The default list of private items to sanitize. See :sanitize for a list and explanation of possible values.
The items to sanitize automatically at shutdown.
The default sanitizer time span. Only items created within this timespan are deleted. The value must be of the one of:
Show the current mode in the command line if it or any of its parent modes is included in the list. Modes may be negated by prefixing them with a !.
When the mouse hovers over a link, or a link is otherwise focused, show its destination in the status bar.
Possible values are:
Define when the tab bar is visible.
Prevent scripts from focusing input elements without user intervention.
Possible values:
Set the search engines which can be used for completion suggestions when 'complete' contains S.
When this option is set and a key sequence interpretable both as a complete command and as a start of a longer command is typed, execute the shorter command after 'timeoutlen' milliseconds.
Maximum number of milliseconds to wait for a longer key command when a shorter one exists. Only effective when 'timeout' is set.
Set the application name shown after the current page title in Firefox's title bar.
:set titlestring=Mozilla Firefox
The regular expression used to split URL lists in commands like :open. When set to the empty string, URL lists are never split. With the default value, the following will open three URLs in the current tab and two new background tabs,
:open google Linux | wikipedia Arch Linux | imdb Serenity
Define which info messages are displayed. As the value increases, Pentadactyl will show more messages about its progress. These can be viewed at any time with the :messages command. The highest useful value is 15, being the most verbose mode.
Use visual bell instead of beeping on errors. The visual bell style is controlled by :highlight Bell. See also 'errorbells'.
Regular expression list defining which completion groups show only matches anchored to the beginning of the result. The first matching expression is the one that applies. If the match is negated, then the current filter may match anywhere in the result. If it is not negated, then the match may only occur at the beginning of the result. If no items match, then a context-dependent default value is used.
Defines how completions are matched with regard to character case. Keys in the regexpmap refer to completion context names (see :contexts) for which the value applies. Possible values are:
List of path name patterns to ignore when completing files and directories. For example, the following will ignore object files and Vim swap files:
:set wildignore=\.o$,^\..*\.s[a-z]{2}$
Note: Unlike Vim, each pattern is a regular expression rather than a glob.
Defines how command-line completion works. It is a comma-separated list of parts, where each part specifies what to do for each consecutive press of the c_<Tab> key. The last element in the list is used for each succeeding c_<Tab> after it has been reached.
These are the possible values for each part:
See also 'altwildmode'.
A list of regular expressions defining which completion contexts should be sorted. The main purpose of this option is to prevent sorting of certain completion lists that don't perform well under load.
See also :contexts.
A regular expression which defines how words are split for the 'hintmatching' types wordstartswith and firstletters. Words are split on each occurrence of the given pattern.