]>

Options

&dactyl.appName; has a number of internal variables and switches which can be set to achieve special effects. These options come in 8 forms:

boolean
Can only be on or off
number
A numeric value
string
A string value
charlist
A string containing a discrete set of distinct characters
stringlist
A comma-separated list of strings. Any comma appearing within single or double quotes, or prefixed with a \, will not be treated as an item separator.
stringmap
A comma-separated list of key-value pairs, e.g., key:val,foo:bar
regexlist
A comma-separated list of regular expressions. Expressions may be prefixed with a !, in which case the match will be negated. A literal ! at the beginning of the expression may be matched with [!] or by placing the regular expression in quotes. Generally, the first matching regular expression is used. Any comma appearing within single or double quotes, or prefixed with a \, will not be treated as an item separator.
regexmap
A combination of a stringmap and a regexlist. Each key in the key:value pair is a regexp. If the regexp begins with a !, the sense of the match is negated, such that a non-matching expression will be considered a match and vice versa. The first key to match yields value.

Setting options

:set :se :set

Show all options which differ from their default values.

:set all

Show all options.

E518 E519 :set option?

Show value of option.

:set option ...

For boolean options, turn them on. For all other types, show their values.

:set nooption ...

For boolean options, turn them off. For all other types, display an error.

:set option! ... :set invoption ...

For boolean options, invert their value. For all other types, display an error.

:set invoption=value ... :set option!=value ...

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
:set-default :set option& ...

Reset option to its default value.

:set all&

Set all options to their default value.

:set-args E487 E521 :set option=value ...

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 .

:set+= :set option+=value ...

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.

:set^= :set option^=value ...

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.

:set-= :set option-=value ...

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.

:setlocal :setl :setlocal :setlocal all :setlocal option? :setlocal option :setlocal nooption :setlocal invoption :setlocal option& :setlocal all& :setlocal option=value :setlocal option+=value :setlocal option^=value :setlocal option-=value

The same as :set command, but operates on current tab options only. See :set for details.

:setglobal :setg :setglobal :setglobal all :setglobal option? :setglobal option :setglobal nooption :setglobal invoption :setglobal option& :setglobal all& :setglobal option=value :setglobal option+=value :setglobal option^=value :setglobal option-=value

The same as :set command, but operates on global options only. See :set for details.

Environment variables are expanded for path options like cdpath and runtimepath. The variable notation is $VAR (terminated by a non-word character) or $VAR. %VAR% is also supported on Windows.

Setting &dactyl.host; options

&dactyl.host; options can be viewed and set with the following commands:

:pref :prefs :preferences :preferences

Show the &dactyl.host; preferences dialog. You can change the browser preferences from this dialog. Be aware that not all &dactyl.host; preferences work, because &dactyl.appName; overrides some key bindings and changes &dactyl.host;'s GUI.

:pref! :prefs! :preferences! :preferences!

Opens about:config in the current tab, where you can change advanced &dactyl.host; preferences.

:set! :set-! :set! preference=value :set! preference&

Change any &dactyl.host; preference (those on the about:config page). You can also reset/delete these preferences with :set! preference&.

&dactyl.appName; needs to set several &dactyl.host; preferences at startup in order to function properly. If this is unacceptable, they can be changed in your RC file with the :set! command, but beware of unexpected behavior. The affected preferences are:

List of options

'act' 'activate' 'activate' 'act' stringlist addons,downloads,extoptions,help, homepage,quickmark,tabopen,paste

A list of items which, when opened in a new tab, are automatically focused. Available items:

all
Activate all items.
addons
:addons command
bookmarks
Tabs loaded from bookmarks
diverted
Links with targets set to new tabs
downloads
:downloads command
extoptions
:extoptions command
help
:help command
homepage
gH mapping
links
Middle- or Control-clicked links
quickmark
go and gn mappings
tabopen
:tabopen! command
paste
P and gP mappings
'awim' 'altwildmode' 'altwildmode' 'awim' stringlist list:full

Like wildmode, but when the key is pressed.

'au' 'autocomplete' 'autocomplete' 'au' regexlist .*

Enables automatic completion for completion groups 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 groups (hereafter ‘contexts’). Non-matching contexts will only be updated when the 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.

To enable auto-completion for everything but :history or :bmarks, you would choose a value such as !/ex/bmarks,.? 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.

See also :contexts

'bh' 'banghist' 'banghist' 'bh' boolean on

Replace occurrences of ! with the previous command when executing external commands.

$CDPATH 'cd' 'cdpath' 'cdpath' 'cd' stringlist equivalent to $CDPATH or .

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.

'cpt' 'complete' 'complete' 'cpt' charlist slf

Items which are completed at the :open prompts. Available items:

s
Search engines and keyword URLs
f
Local files
l
&dactyl.host; location bar entries (bookmarks and history sorted in an intelligent way)
b
Bookmarks
h
History
S
Search engine suggestions
t
Open tabs

The order is important, such that :set complete=bsf will list bookmarks followed by matching quick searches and then matching files.

Using b and h can make completion very slow if there are many items.
'ds' 'defsearch' 'defsearch' 'ds' string google

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

'editor' 'editor' string gvim -f

Set the external text editor. This is the editor used by , gF, and other commands which launch an external text editor.

&dactyl.appName; will not behave correctly if the editor forks its own process, rather than blocking until editing is complete. Gvim invoked without the -f option is one such example.
'enc' 'encoding' 'encoding' string UTF-8

Changes the character encoding of the current buffer. Valid only until a new page is loaded.

'noeb' 'noerrorbells' 'eb' 'errorbells' 'errorbells' 'eb' boolean off

Ring the bell when an error message is displayed. See also visualbell.

'ei' 'eventignore' 'eventignore' stringlist

A list of autocommand event names which should be ignored. If the list contains the value all then all events are ignored.

'noex' 'noexrc' 'ex' 'exrc' 'exrc' 'ex' boolean off

Allow reading of an RC file in the current directory. This file is sourced after the default &dactyl.name;rc file in your home directory.

'eht' 'extendedhinttags' 'extendedhinttags' 'eht' regexmap [iI]:'//img | //xhtml:img', [OTivVWy]:'//a[@href] | //xhtml:a[@href] | //area[@href] | //xhtml:area[@href] | //img[@src] | //xhtml:img[@src] | //iframe[@src] | //xhtml:iframe[@src]'

Defines specialized XPath expressions for arbitrary extended-hints modes. If no matches are found, the value of hinttags is used.

'fenc' 'fileencoding' 'fileencoding' string UTF-8

Changes the character encoding that &dactyl.appName; uses to read and write files.

'fh' 'followhints' 'followhints' 'fh' number 0

Changes how soon matching hints are followed in in Hints mode.

Possible values:

0
Follow the first hint as soon as typed text uniquely identifies it.
1
Follow the selected hint on .
2
Follow the selected hint on only if it's been -selected.
'nofs' 'nofullscreen' 'fs' 'fullscreen' 'fullscreen' 'fs' boolean off

Show the current window full-screen. Also hide certain GUI elements, such as status-line and tab bar.

'go' 'guioptions' 'guioptions' 'go' charlist rb

Show or hide certain GUI elements.

Supported characters:

B
Bookmark bar
C
Always show the command-line outside of the status line
M
Always show messages outside of the status line
N
Tab number over image
T
Toolbar
b
Bottom scrollbar
l
Left scrollbar (l and r are mutually exclusive)
m
Menu bar
n
Tab number
r
Right scrollbar

See also showtabline.

Scrollbar changes require a page reload to take effect. Only one of l or r may be included.
'hf' 'helpfile' 'helpfile' 'hf' string intro

Name of the main help file. This is that page shown if the :help command is called without any arguments.

'hin' 'hintinputs' 'hintinputs' 'hin' stringlist label,value

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.

value
The hint is the value displayed in a text input, or the selected option for a drop-down.
label
The value of an explicit label for the input; this will not match most manually added labels that are found on sites.
name
The name of the input will be used; although the name is not designed for user consumption, it is frequently very similar to the label.
'hk' 'hintkeys' 'hintkeys' 'hk' string 0123456789

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.

'hm' 'hintmatching' 'hintmatching' 'hm' stringlist contains

Change the hint matching algorithm used in Hints mode.

Possible values:

contains
The typed characters are split on whitespace, and these character groups have to match anywhere inside the text of the link.
wordstartswith
The typed characters are matched with the beginning of the first word (see wordseparators) in the link as long as possible. If no matches occur in the current word, then the matching is continued at the beginning of the next word. The words are worked through in the order they appear in the link. If the typed characters contain spaces, then the characters are split on whitespace. These character groups are then matched with the beginning of the words, beginning at the first one and continuing with the following words in the order they appear in the link.
firstletters
Behaves like wordstartswith, but non-matching words aren't skipped.
custom
Delegate to the function dactyl.plugins.customHintMatcher.
transliterated
Certain alphanumeric characters are translated into their unaccented equivalents, such that ‘euro’ will match 'æuró', and ‘Ångström’ will match ‘angstrom’.
'ht' 'hinttags' 'hinttags' 'ht' string &hinttags;

The XPath string used to select for hinting. Can be overridden for individual extended-hints modes with the extendedhinttags option.

'hto' 'hinttimeout' 'hinttimeout' 'hto' number 0

Timeout before automatically following a non-unique numerical hint. Set to 0 (the default) to only follow numeric hints after pressing or when the hint is unique.

'hi' 'history' 'history' 'hi' number 500

Maximum number of Ex commands and search patterns to store in the command-line history.

'nohls' 'nohlsearch' 'hls' 'hlsearch' 'hlsearch' 'hls' boolean off

Highlight previous search pattern matches.

'noic' 'noignorecase' 'ic' 'ignorecase' 'ignorecase' 'ic' boolean on

Ignore case in search patterns.

'nois' 'noincsearch' 'is' 'incsearch' 'incsearch' 'is' boolean on

Show the first match for a search pattern as it is typed.

'noim' 'noinsertmode' 'im' 'insertmode' 'insertmode' 'im' boolean on

Use Insert mode as the default for text areas. This is useful if you want to use the known &dactyl.host; interface for editing text areas. Input fields default to this behavior irrespective of this option's setting.

Textarea mode can be entered with from Insert mode.

'jsd' 'jsdebugger' 'jsdebugger' 'jsd' boolean off

Use the JavaScript debugger service for JavaScript completion.

'ls' 'laststatus' 'laststatus' 'ls' number 2

Determines when the status line is shown.

Possible values:

0
Never
1
Only if there are multiple windows
2
Always
laststatus=1 not implemented.
'nolks' 'nolinksearch' 'lks' 'linksearch' 'linksearch' 'lks' boolean off

Limit searches to hyperlink text. This includes all elements matched by the hinttags XPath. This behavior can also be enabled by including \l in the search pattern, and disabled by including \L.

'nolpl' 'lpl' 'noloadplugins' 'loadplugins' 'loadplugins' 'lpl' regexlist '\.(js|&dactyl.fileExt;)$'

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:

:se lpl^=!foobar-plugin

Alternatively, you can specify which plugins to load and which to omit in your &dactyl.name;rc using something like the below:

:set loadplugins=!foo|bar,\.(js|&dactyl.fileExt;)$

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. regexlist).

See also :runtime.

'ml' 'mapleader' 'mapleader' string \

Defines the replacement keys for the pseudo-key.

'maxitems' 'maxitems' number 20

Maximum number of items to display at once in a listing.

'msgs' 'messages' 'messages' 'msgs' number 100

Maximum number of messages to store in the message history.

'nomore' 'more' 'more' boolean on

Pause the message list window when more than one screen of listings is displayed.

'newtab' 'newtab' stringlist

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:

all
All commands
addons
:addons command
downloads
:downloads command
extoptions
:extoptions command
help
:help command
javascript
:javascript! or :js! command
prefs
:preferences! or :prefs! command
'nextpattern' 'nextpattern' stringlist '\bnext',^>$,'^(>>|»)$','^(>|»)','(>|»)$','\bmore\b'

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.

'noonline' 'online' 'online' boolean on

Enables or disables ‘offline’ mode, where network access is disabled and all web pages are loaded entirely from cache.

'pageinfo' 'pa' 'pageinfo' 'pa' charlist gfm

Info shown in the :pageinfo output.

Items available by default:

g
General info
f
Feeds
m
Meta tags

The order of the options defines the order in which they appear in the result.

'pps' 'popups' 'popups' 'pps' stringlist tab

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:

tab
Open pop-ups in a new tab
window
Open pop-ups in a new window
resized
Open resized pop-ups in a new window

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.

This option does not alter the &dactyl.host; pop-up blocker behavior in any way.
'previouspattern' 'previouspattern' stringlist

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.

'noprivate' 'private' 'private' boolean off

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.

$&dactyl.idName;_RUNTIME 'rtp' 'runtimepath' 'runtimepath' 'rtp' stringlist $&dactyl.idName;_RUNTIME or Unix, Mac: ~/.&dactyl.name; Windows: ~/&dactyl.name;

List of directories searched for runtime files:

  • colors/
  • macros/
  • plugins/

Example:

:set runtimepath=~/my&dactyl.name;,~/.&dactyl.name;

This will search for plugins in both ~/my&dactyl.name;/plugins and ~/.&dactyl.name;/plugins

On startup, if the environment variable $&dactyl.idName;_RUNTIME does not exist, &dactyl.appName; will set it to match this value.

'si' 'sanitizeitems' 'sanitizeitems' 'si' stringlist all

The default list of private items to sanitize. See :sanitize for a list and explanation of possible values.

'sts' 'sanitizetimespan' 'sanitizetimespan' 'sts' number all

The default sanitizer time span. Only items created within this timespan are deleted. The value must be of the one of:

all
Everything
session
The current session
nm
Past n Minutes
nh
Past n Hours
nd
Past n Days
nw
Past n Weeks
'scr' 'scroll' 'scroll' 'scr' number 0

Number of lines to scroll with and commands. The number of lines scrolled defaults to half the window size. When a count is specified to the or commands, that value is used instead. When the value is 0, it defaults to half the window height.

'shell' 'sh' 'shell' 'sh' string $SHELL or sh, Windows: cmd.exe

Shell to use for executing :! and :run commands.

'shellcmdflag' 'shcf' 'shellcmdflag' 'shcf' string -c, Windows: /c

Flag passed to shell when executing :! and :run commands.

'nosmd' 'noshowmode' 'smd' 'showmode' 'showmode' 'smd' boolean on

Show the current mode in the command line.

'ssli' 'showstatuslinks' 'showstatuslinks' 'ssli' number 1

When the mouse hovers over a link, or a link is otherwise focused, show its destination in the status bar.

Possible values are:

0
Don't show link destination
1
Show the link's destination in the status-line
2
Show the link's destination in the command-line
'stal' 'showtabline' 'showtabline' 'stal' number 2

Controls when the tab line is shown.

Possible values are:

0
Never show tab line
1
Show tab line only if more than one tab is open
2
Always show tab line
'noscs' 'nosmartcase' 'scs' 'smartcase' 'smartcase' 'scs' boolean on

Override the ignorecase option if the pattern contains uppercase characters. This is only used if the ignorecase option is set.

'nosf' 'nostrictfocus' 'sf' 'strictfocus' 'strictfocus' 'sf' boolean on

Prevent scripts from focusing input elements without user intervention.

'suggestengines' 'suggestengines' stringlist google

Set the search engines which can be used for completion suggestions when complete contains S.

'titlestring' 'titlestring' string &dactyl.appName;

Set the application name shown after the current page title in &dactyl.host;'s title bar.

:set titlestring=Mozilla &dactyl.host;
'us' 'urlseparator' 'urlseparator' string \\|

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 March of the Penguins
'noum' 'nousermode' 'um' 'usermode' 'usermode' 'um' boolean off

Show current website with minimal styling.

'vbs' 'verbose' 'verbose' 'vbs' number 1

Define which info messages are displayed. As the value increases, &dactyl.appName; 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.

'novb' 'novisualbell' 'vb' 'visualbell' 'visualbell' 'vb' boolean off

Use visual bell instead of beeping on errors. The visual bell style is controlled by :highlight Bell. See also errorbells.

'wia' 'wildanchor' 'wildanchor' 'wia' regexlist !'/ex/(back|buffer|ext|forward|help|undo)'

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.

'wic' 'wildcase' 'wildcase' 'wic' regexmap smart

Defines how completions are matched with regard to character case. Keys in the regexmap refer to completion context names (see :contexts) for which the value applies. Possible values are:

smart
Case is significant when capital letters are typed
match
Case is always significant
ignore
Case is never significant
'wildignore' 'wig' 'wildignore' 'wig' regexlist

List of file patterns to ignore when completing files. For example, the following will ignore object files and Vim swap files:

:set wildignore=\.o$,^\..*\.s[a-z]2$ Unlike Vim, each pattern is a regular expression rather than a glob.
'wim' 'wildmode' 'wildmode' 'wim' stringlist list:full

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 key. The last element in the list is used for each succeeding after it has been reached.

These are the possible values for each part:

Complete only the first match.
full
Complete the next full match. After the last, the original string is used.
longest
Complete the longest common substring of all completions.
list
When more than one match, list all matches.
list:full
When more than one match, list all matches and complete the first match.
list:longest
When more than one match, list all matches and complete till the longest common string. When there is only a single match, it is fully completed regardless of the case.

See also altwildmode.

'wis' 'wildsort' 'wildsort' 'wis' regexlist .*

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

'wsp' 'wordseparators' 'wordseparators' 'wsp' string #*+|=~ _-]]]>

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.