Tridactyl Configuration

We very strongly recommend that you pretty much ignore this page and instead follow the link below DEFAULTS that will take you to our own source code which is formatted in a marginally more sane fashion.

Index

Object literals

Object literals

Const default_config

default_config: object

This is the default configuration that Tridactyl comes with.

You can change anything here using set key1.key2.key3 value or specific things any of the various helper commands such as bind or command.

allowautofocus

allowautofocus: string = "true"

Controls whether the page can focus elements for you via js

Best used in conjunction with browser.autofocus in about:config

Permitted values: true, or false.

auconcreatecontainer

auconcreatecontainer: string = "true"

autocontain

autocontain: any = o({//"github.com": "microsoft",//"youtube.com": "google",})

Automatically place these sites in the named container.

Each key corresponds to a URL fragment which, if contained within the page URL, the site will be opened in a container tab instead.

browser

browser: string = "firefox"

configversion

configversion: string = "0.0"

Internal version number Tridactyl uses to know whether it needs to update from old versions of the configuration.

Changing this might do weird stuff.

containerindicator

containerindicator: string = "true"

csp

csp: string = "untouched"

cursorpos

cursorpos: string = "end"

editorcmd

editorcmd: string = "auto"

externalclipboardcmd

externalclipboardcmd: string = "auto"

gimode

gimode: string = "nextinput"

If nextinput, after gi brings selects the next input

If firefox, selects the next selectable element, e.g. a link

Permitted values: "nextinput" or "firefox"

hintchars

hintchars: string = "hjklasdfgyuiopqwertnmzxcvb"

Characters to use in hint mode.

They are used preferentially from left to right.

hintdelay

hintdelay: string = "300"

The delay in milliseconds in vimperator style hint modes after selecting a hint before you are returned to normal mode.

The point of this is to prevent accidental execution of normal mode binds due to people typing more than is necessary to choose a hint.

hintfiltermode

hintfiltermode: string = "simple"

The type of hinting to use. vimperator will allow you to filter links based on their names by typing non-hint chars. It is recommended that you use this in conjuction with the hintchars setting, which you should probably set to e.g, 5432167890.

Permitted values: simple, vimperator, or vimperator-reflow.

hintnames

hintnames: string = "short"

Whether to optimise for the shortest possible names for each hint, or to use a simple numerical ordering. If set to numeric, overrides hintchars setting.

Permitted values: short or numeric

hintuppercase

hintuppercase: string = "true"

Whether to display the names for hints in uppercase.

historyresults

historyresults: string = "50"

homepages

homepages: undefined[] = []

Pages opened with gH.

jumpdelay

jumpdelay: number = 3000

modeindicator

modeindicator: string = "true"

nativeinstallcmd

nativeinstallcmd: string = "curl -fsSl https://raw.githubusercontent.com/cmcaine/tridactyl/master/native/install.sh | bash"

newtab

newtab: string = ""

URL the newtab will redirect to.

All usual rules about things you can open with open apply, with the caveat that you'll get interesting results if you try to use something that needs nativeopen: so don't try about:newtab.

noiframeon

noiframeon: undefined[] = []

profiledir

profiledir: string = "auto"

putfrom

putfrom: string = "clipboard"

relatedopenpos

relatedopenpos: string = "related"

Where to open tabs opened with hinting - as if it had been middle clicked, to the right of the current tab, or at the end of the tabs.

Permitted values: related,next, orlast`.

scrollduration

scrollduration: number = 100

How viscous you want smooth scrolling to feel.

searchengine

searchengine: string = "google"

The default search engine used by open search

smoothscroll

smoothscroll: string = "false"

Whether to use Tridactyl's (bad) smooth scrolling.

storageloc

storageloc: string = "sync"

Which storage to use. Sync storage will synchronise your settings via your Firefox Account.

Permitted values: sync or local

tabopencontaineraware

tabopencontaineraware: string = "false"

tabopenpos

tabopenpos: string = "next"

Where to open tabs opened with tabopen - to the right of the current tab, or at the end of the tabs.

Permitted values: next, or last.

theme

theme: string = "default"

The theme to use.

Permitted values: run :composite js tri.styling.THEMES | fillcmdline to find out.

ttspitch

ttspitch: number = 1

ttsrate

ttsrate: number = 1

ttsvoice

ttsvoice: string = "default"

ttsvolume

ttsvolume: number = 1

viewsource

viewsource: string = "tridactyl"

Whether :viewsource will use our own page that you can use Tridactyl binds on, or Firefox's default viewer, which you cannot use Tridactyl on.

Permitted values: tridactyl or default.

win_nativeinstallcmd

win_nativeinstallcmd: string = "powershell -NoProfile -InputFormat None -Command "Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/cmcaine/tridactyl/master/native/win_install.ps1'))""

yankto

yankto: string = "clipboard"

autocmds

autocmds: object

Autocommands that run when certain events happen, and other conditions are met.

Related ex command: autocmd.

DocEnd

DocEnd: object

Commands that will be run when pages are unloaded.

Each key corresponds to a URL fragment which, if contained within the page URL, will run the corresponding command.

Type declaration

DocLoad

DocLoad: object

Commands that will be run when pages are loaded.

Each key corresponds to a URL fragment which, if contained within the page URL, will run the corresponding command.

Type declaration

DocStart

DocStart: object

Commands that will be run as soon as Tridactyl loads into a page.

Each key corresponds to a URL fragment which, if contained within the page URL, will run the corresponding command.

Type declaration

TabEnter

TabEnter: object

Commands that will be run when you enter a tab.

Each key corresponds to a URL fragment which, if contained within the page URL, will run the corresponding command.

Type declaration

TabLeft

TabLeft: object

Commands that will be run when you leave a tab.

Each key corresponds to a URL fragment which, if contained within the page URL, will run the corresponding command.

Type declaration

TriStart

TriStart: object

Commands that will be run when Tridactyl first runs each time you start your browser.

Each key corresponds to a URL fragment which, if contained within the page URL, will run the corresponding command.

.*

.*: string = "source_quiet"

exaliases

exaliases: object

Aliases for the commandline.

You can make a new one with command alias ex-command.

!

!: string = "exclaim"

!js

!js: string = "fillcmdline_tmp 3000 !js is deprecated. Please use js instead"

!jsb

!jsb: string = "fillcmdline_tmp 3000 !jsb is deprecated. Please use jsb instead"

!s

!s: string = "exclaim_quiet"

alias

alias: string = "command"

au

au: string = "autocmd"

aucon

aucon: string = "autocontain"

audel

audel: string = "autocmddelete"

audelete

audelete: string = "autocmddelete"

authors

authors: string = "credits"

b

b: string = "buffer"

bN

bN: string = "tabprev"

bd

bd: string = "tabclose"

bdelete

bdelete: string = "tabclose"

bfirst

bfirst: string = "tabfirst"

blast

blast: string = "tablast"

bn

bn: string = "tabnext_gt"

bnext

bnext: string = "tabnext_gt"

bp

bp: string = "tabprev"

bprev

bprev: string = "tabprev"

colors

colors: string = "colourscheme"

colorscheme

colorscheme: string = "colourscheme"

colours

colours: string = "colourscheme"

colourscheme

colourscheme: string = "set theme"

containerremove

containerremove: string = "containerdelete"

current_url

current_url: string = "composite get_current_url | fillcmdline_notrail "

h

h: string = "help"

man

man: string = "help"

o

o: string = "open"

openwith

openwith: string = "hint -W"

q

q: string = "tabclose"

qa

qa: string = "qall"

quit

quit: string = "tabclose"

sanitize

sanitize: string = "sanitise"

t

t: string = "tabopen"

tN

tN: string = "tabprev"

tab

tab: string = "buffer"

tfirst

tfirst: string = "tabfirst"

tlast

tlast: string = "tablast"

tn

tn: string = "tabnext_gt"

tnext

tnext: string = "tabnext_gt"

tp

tp: string = "tabprev"

tprev

tprev: string = "tabprev"

tutorial

tutorial: string = "tutor"

unmute

unmute: string = "mute unmute"

w

w: string = "winopen"

followpagepatterns

followpagepatterns: object

Used by ]] and [[ to look for links containing these words.

Edit these if you want to add, e.g. other language support.

next

next: string = "^(next|newer\b|»|>>|more"

prev

prev: string = "^(prev(ious?|older\b|«|<<"

ignoremaps

ignoremaps: object

ignoremaps contain all of the bindings for "ignore mode".

They consist of key sequences mapped to ex commands.

<CA-Escape>

<CA-Escape>: string = "mode normal"

<CA-`>

<CA-`>: string = "mode normal"

<S-Escape>

<S-Escape>: string = "mode normal"

<S-Insert>

<S-Insert>: string = "mode normal"

I

I: string = "mode normal"

imaps

imaps: object

imaps contain all of the bindings for "insert mode".

They consist of key sequences mapped to ex commands.

<C-6>

<C-6>: string = "buffer #"

<C-[>

<C-[>: string = "composite unfocus | mode normal"

<C-^>

<C-^>: string = "buffer #"

<C-i>

<C-i>: string = "editor"

<CA-Escape>

<CA-Escape>: string = "mode normal"

<CA-`>

<CA-`>: string = "mode normal"

<Escape>

<Escape>: string = "composite unfocus | mode normal"

<S-Escape>

<S-Escape>: string = "mode ignore"

inputmaps

inputmaps: object

inputmaps contain all of the bindings for "input mode".

They consist of key sequences mapped to ex commands.

<C-[>

<C-[>: string = "composite unfocus | mode normal"

<C-^>

<C-^>: string = "buffer #"

<C-i>

<C-i>: string = "editor"

<CA-Escape>

<CA-Escape>: string = "mode normal"

<CA-`>

<CA-`>: string = "mode normal"

<Escape>

<Escape>: string = "composite unfocus | mode normal"

<S-Tab>

<S-Tab>: string = "focusinput -N"

<Tab>

<Tab>: string = "focusinput -n"

logging

logging: object

cmdline

cmdline: number = 2

containers

containers: number = 2

controller

controller: number = 2

excmd

excmd: number = 1

hinting

hinting: number = 2

messaging

messaging: number = 2

state

state: number = 2

styling

styling: number = 2

nmaps

nmaps: object

nmaps contain all of the bindings for "normal mode".

They consist of key sequences mapped to ex commands.

$

$: string = "scrollto 100 x"

.

.: string = "repeat"

:

:: string = "fillcmdline_notrail"

;#

;#: string = "hint -#"

;;

;;: string = "hint -;"

;A

;A: string = "hint -A"

;I

;I: string = "hint -I"

;O

;O: string = "hint -W fillcmdline_notrail open "

;P

;P: string = "hint -P"

;S

;S: string = "hint -S"

;T

;T: string = "hint -W fillcmdline_notrail tabopen "

;W

;W: string = "hint -W fillcmdline_notrail winopen "

;a

;a: string = "hint -a"

;b

;b: string = "hint -b"

;g#

;g#: string = "hint -q#"

;g;

;g;: string = "hint -q;"

;gA

;gA: string = "hint -qA"

;gI

;gI: string = "hint -qI"

;gP

;gP: string = "hint -qP"

;gS

;gS: string = "hint -qS"

;ga

;ga: string = "hint -qa"

;gb

;gb: string = "hint -qb"

;gi

;gi: string = "hint -qi"

;gk

;gk: string = "hint -qk"

;gp

;gp: string = "hint -qp"

;gr

;gr: string = "hint -qr"

;gs

;gs: string = "hint -qs"

;gv

;gv: string = "hint -qW exclaim_quiet mpv"

;gw

;gw: string = "hint -qw"

;gy

;gy: string = "hint -qy"

;i

;i: string = "hint -i"

;k

;k: string = "hint -k"

;o

;o: string = "hint"

;p

;p: string = "hint -p"

;r

;r: string = "hint -r"

;s

;s: string = "hint -s"

;v

;v: string = "hint -W exclaim_quiet mpv"

;w

;w: string = "hint -w"

;y

;y: string = "hint -y"

<<

<<: string = "tabmove -1"

<A-m>

<A-m>: string = "mute toggle"

<A-p>

<A-p>: string = "pin"

<C-6>

<C-6>: string = "buffer #"

<C-[>

<C-[>: string = "composite mode normal ; hidecmdline"

<C-^>

<C-^>: string = "buffer #"

<C-a>

<C-a>: string = "urlincrement 1"

<C-b>

<C-b>: string = "scrollpage -1"

<C-d>

<C-d>: string = "scrollpage 0.5"

<C-e>

<C-e>: string = "scrollline 10"

<C-f>

<C-f>: string = "scrollpage 1"

<C-i>

<C-i>: string = "jumpnext"

<C-o>

<C-o>: string = "jumpprev"

<C-u>

<C-u>: string = "scrollpage -0.5"

<C-x>

<C-x>: string = "urlincrement -1"

<C-y>

<C-y>: string = "scrollline -10"

<CA-Escape>

<CA-Escape>: string = "mode ignore"

<CA-`>

<CA-`>: string = "mode ignore"

<Escape>

<Escape>: string = "composite mode normal ; hidecmdline"

<F1>

<F1>: string = "help"

<S-Escape>

<S-Escape>: string = "mode ignore"

<S-Insert>

<S-Insert>: string = "mode ignore"

<SA-ArrowUp><SA-ArrowUp><SA-ArrowDown><SA-ArrowDown><SA-ArrowLeft><SA-ArrowRight><SA-ArrowLeft><SA-ArrowRight>ba

<SA-ArrowUp><SA-ArrowUp><SA-ArrowDown><SA-ArrowDown><SA-ArrowLeft><SA-ArrowRight><SA-ArrowLeft><SA-ArrowRight>ba: string = "open https://www.youtube.com/watch?v=M3iOROuTuMA"

>>

>>: string = "tabmove +1"

A

A: string = "bmark"

B

B: string = "fillcmdline bufferall"

D

D: string = "composite tabprev; sleep 100; tabclose #"

F

F: string = "hint -b"

G

G: string = "scrollto 100"

H

H: string = "back"

I

I: string = "mode ignore"

L

L: string = "forward"

M

M: string = "gobble 1 quickmark"

O

O: string = "current_url open"

P

P: string = "clipboard tabopen"

R

R: string = "reloadhard"

S

S: string = "fillcmdline tabopen search"

T

T: string = "current_url tabopen"

W

W: string = "current_url winopen"

ZZ

ZZ: string = "qall"

[[

[[: string = "followpage prev"

[c

[c: string = "urlincrement -1"

]]

]]: string = "followpage next"

]c

]c: string = "urlincrement 1"

^

^: string = "scrollto 0 x"

a

a: string = "current_url bmark"

b

b: string = "fillcmdline buffer"

d

d: string = "tabclose"

f

f: string = "hint"

g$

g$: string = "tablast"

g0

g0: string = "tabfirst"

g;

g;: string = "changelistjump -1"

gF

gF: string = "hint -br"

gH

gH: string = "home true"

gT

gT: string = "tabprev"

gU

gU: string = "urlroot"

g^

g^: string = "tabfirst"

gf

gf: string = "viewsource"

gg

gg: string = "scrollto 0"

gh

gh: string = "home"

gi

gi: string = "focusinput -l"

gr

gr: string = "reader"

gt

gt: string = "tabnext_gt"

gu

gu: string = "urlparent"

gx$

gx$: string = "tabclosealltoright"

gx0

gx0: string = "tabclosealltoleft"

h

h: string = "scrollpx -50"

j

j: string = "scrollline 10"

k

k: string = "scrollline -10"

l

l: string = "scrollpx 50"

o

o: string = "fillcmdline open"

p

p: string = "clipboard open"

r

r: string = "reload"

s

s: string = "fillcmdline open search"

t

t: string = "fillcmdline tabopen"

u

u: string = "undo"

w

w: string = "fillcmdline winopen"

yc

yc: string = "clipboard yankcanon"

ym

ym: string = "clipboard yankmd"

ys

ys: string = "clipboard yankshort"

yt

yt: string = "clipboard yanktitle"

yy

yy: string = "clipboard yank"

zi

zi: string = "zoom 0.1 true"

zo

zo: string = "zoom -0.1 true"

zz

zz: string = "zoom 1"

searchurls

searchurls: object

Definitions of search engines for use via open [keyword].

amazon

amazon: string = "https://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords="

amazonuk

amazonuk: string = "https://www.amazon.co.uk/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords="

bing

bing: string = "https://www.bing.com/search?q="

cnrtl

cnrtl: string = "http://www.cnrtl.fr/lexicographie/"

duckduckgo

duckduckgo: string = "https://duckduckgo.com/?q="

gentoo_wiki

gentoo_wiki: string = "https://wiki.gentoo.org/index.php?title=Special%3ASearch&profile=default&fulltext=Search&search="

github

github: string = "https://github.com/search?utf8=✓&q="

google

google: string = "https://www.google.com/search?q="

googleuk

googleuk: string = "https://www.google.co.uk/search?q="

mdn

mdn: string = "https://developer.mozilla.org/en-US/search?q="

osm

osm: string = "https://www.openstreetmap.org/search?query="

qwant

qwant: string = "https://www.qwant.com/?q="

scholar

scholar: string = "https://scholar.google.com/scholar?q="

searx

searx: string = "https://searx.me/?category_general=on&q="

startpage

startpage: string = "https://startpage.com/do/search?language=english&cat=web&query="

twitter

twitter: string = "https://twitter.com/search?q="

wikipedia

wikipedia: string = "https://en.wikipedia.org/wiki/Special:Search/"

yahoo

yahoo: string = "https://search.yahoo.com/search?p="

youtube

youtube: string = "https://www.youtube.com/results?search_query="