1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-25 14:22:37 +03:00
wezterm/docs
Wez Furlong 2d02df5f38 add --config name=value CLI options
`wezterm`, `wezterm-gui` and `wezterm-mux-server` now all support
a new `--config name=value` CLI option that can be specified
multiple times to supply config overrides.

Since there isn't a simple, direct way to update arbitrary fields
of a struct in Rust (there's no runtime reflection), we do this
work in lua.

The config file returns a config table. Before that is mapped
to the Rust Config type, we have a new phase that takes each
of the `--config` values and applies it to the config table.

For example, you can think of configuration as working like this
if wezterm is started as `wezterm --config foo="bar"`:

```lua
config = load_config_file();
config.foo = "bar";
return config;
```

The `--config name=value` option is split into `name` and `value`
parts.  The name part is literally concatenated with `config` in
the generated lua code, so the name MUST be valid in that context.
The `value` portion is literally inserted verbatim as the rvalue in the
assignment.  Not quoting or other processing is done, which means
that you can (and must!) use the same form that you would use in
the config file for the RHS.  Strings must be quoted.  This allows
you to use more complicated expressions on the right hand side,
such as:

```
wezterm --config 'font=wezterm.font("Fira Code")'
```

The overrides stick for the lifetime of the process; even if
you change the config file and reload, then the value specified
by the override will take precedence.

refs: https://github.com/wez/wezterm/issues/469
refs: https://github.com/wez/wezterm/issues/499
2021-02-27 10:53:45 -08:00
..
colorschemes colors: set cursor border to bg in the color schemes 2020-10-27 09:17:20 -07:00
config docs: fix a typo, expand exit_behavior example 2021-02-27 00:24:23 -08:00
install update for rename of master branch -> main 2021-02-03 21:34:12 -08:00
screenshots docs: document foreground_text_hsb 2021-02-20 11:24:10 -08:00
_config.yml docs: switch to the "Hacker" theme which is darker 2019-12-18 09:25:36 -08:00
book.toml Revert "ci: disable mdbook-linkcheck" 2021-02-24 09:28:00 -08:00
changelog.md add --config name=value CLI options 2021-02-27 10:53:45 -08:00
contributing.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
copymode.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
custom.css style download buttons a bit better 2019-12-29 21:39:23 -08:00
escape-sequences.md docs: note about OSC 9 and OSC 777 toast notification support 2021-02-23 09:18:23 -08:00
faq.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
features.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
help.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
hyperlinks.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
imgcat.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
index.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
installation.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
multiplexing.md docs: document various missing things 2021-02-20 10:40:26 -08:00
scrollback.md docs: fix link to ClearScrollback 2021-02-20 08:44:39 -08:00
serial.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00
shell-integration.md update for rename of master branch -> main 2021-02-03 21:34:12 -08:00
ssh.md docs: upgrade to mdbook 0.4, enable link checking 2021-01-30 14:14:29 -08:00