config.toml: keys, ui, logging, jobs, scripting
This page lists every key of the tables [keys], [ui], [logging], [jobs] and [scripting] of config.toml, with its type and default.
Every table and every key is optional: a table that is missing gets the defaults below. Check a file after every change, because tcli check names a key that does not exist and a value of the wrong type:
tcli check[keys]
Section titled “[keys]”The two values of the key bindings that the scripts cannot set, because the leader is needed before the scripts run. The bindings themselves are in keybind.lua: see Change a key.
| Key | Type | Default | Meaning |
|---|---|---|---|
leader |
text | "<Space>" |
The key that <leader> stands for: one key in key notation, such as "," or "<Space>". A digit cannot be the leader. |
timeout_ms |
number | 1000 |
How long, in milliseconds, tt waits for the next key of a sequence such as gg. From 100 to 10000. |
Read by tt. See Themes.
| Key | Type | Default | Meaning |
|---|---|---|---|
theme |
text | "default" |
The theme: the file themes/<name>.toml in the root folder. default without such a file is the built-in theme. Letters, digits, - and _, starting with a letter or a digit. |
[logging]
Section titled “[logging]”See Logging and jobs.
| Key | Type | Default | Meaning |
|---|---|---|---|
log_to_file |
boolean | false |
Writes the log to tilde-<date>.log in the logs folder of the root folder. |
log_level |
text | "Information" |
The lowest level written: Trace, Debug, Information, Warning, Error, Critical, or None for nothing. Any case. |
[jobs]
Section titled “[jobs]”| Key | Type | Default | Meaning |
|---|---|---|---|
workers |
number | processors minus one | How many jobs run at the same time. Zero or less means one for each processor; never fewer than one. |
stop_timeout |
time | 00:00:10 |
How long stopping waits for the running jobs. A TOML time, written without quotes: 00:00:30. |
[scripting]
Section titled “[scripting]”See Scripts.
| Key | Type | Default | Meaning |
|---|---|---|---|
enabled |
boolean | true |
Starts the Lua engine. false means no scripts at all. |
max_instructions |
number | 10000000 |
How many Lua instructions one unit of work (a script, a handler, a command, a job, a timer) may run before it is stopped. |
write_definitions |
boolean | false |
Writes definitions.lua and .luarc.json into the scripts folder, for the editor. A definitions.lua that Tilde did not write is never overwritten. |
An example
Section titled “An example”[keys]leader = ","timeout_ms = 800
[ui]theme = "nord"
[logging]log_to_file = truelog_level = "Debug"
[jobs]workers = 2stop_timeout = 00:00:20
[scripting]write_definitions = trueThe code of the tables is in KeysConfig.cs, UiConfig.cs, LoggingConfig.cs, JobsConfig.cs and ScriptingConfig.cs.