Doc. 05 · Config
Config
Four options, a file that holds them, and the flags that set the same things.
bushel reads ~/.config/bushel/config.toml, which holds the same options the
command-line flags set. The file is optional and every key below is optional
inside it. Set BUSHEL_CONFIG_DIR to move the directory that
contains config.toml. This page is generated from bushel v0.3.6,
so the defaults are the ones the binary actually starts with.
Writing out the defaults gives you a file that changes nothing:
no_splash = false
reduced_motion = false
ascii = false
layout = "rail" Options
| Key | Flag | Default | Does |
|---|---|---|---|
no_splash | --no-splash | false | Skip the splash screen |
reduced_motion | --reduced-motion | false | Disable all animation and effects |
ascii | --ascii | false | ASCII icons and spinners (no Unicode glyphs) |
layout | --layout | "rail" | Body layout: rail keeps all four panes in view, table gives one full-width table |
Layouts and settings
rail is the default: all four panes remain visible, with the
active one expanded beside the detail pane. In narrow terminals the rail
moves above the detail. table puts one full-width table above
one full-width detail pane at every size. Both use the same pane and action keys.
bushel --layout table
Press , to open settings. Move between rows with
j/k or the up/down arrows, then press
enter or space to change the selected setting.
Changes apply immediately and are saved for future launches. Close the panel
with esc, q or ,.
Flags and the file
The three boolean flags, --no-splash,
--reduced-motion, and --ascii, are ORed with the
values in the file at startup. A true value in the file stays true when you
omit its flag. Edit the file or use the settings panel to turn it off.
--layout takes rail or table and
replaces the file's layout for that run. For example,
bushel --layout table uses the full-width table without changing
layout = "rail" in the file. Changing a setting in the panel
saves that choice while keeping the other saved option values. For example,
launching with --ascii and changing the layout does not save
the temporary ASCII override. Saving changes only the selected setting and
preserves comments, unknown keys and the other saved values.
A key bushel does not recognise is ignored in silence, so a misspelling like
reduce_motion is silently dead. A value of the
wrong type is louder: bushel logs an error naming the file and falls back
to defaults for all of it. Press m to read the error.
Troubleshooting
has both.
bushel refuses to overwrite an invalid or unreadable config, a file changed
on disk since it was loaded, or a symbolic link. It also refuses a save if
the file cannot be edited without losing content. The change still applies
to the current session; press m for the save error. Fix an
invalid file and restart bushel before saving again. Restart after an external
edit too.
Edit a symbolic link's target directly.
Config directory
BUSHEL_CONFIG_DIR changes the directory used for
config.toml and the .launched first-run marker.
For example, this keeps a separate set of preferences:
BUSHEL_CONFIG_DIR="$HOME/.config/bushel-work" bushel
The settings panel shows the path it saves to. This override does not move
the shell installer's update receipt; that receipt uses
XDG_CONFIG_HOME. If a save fails, the change still applies in
the current session and the message log records the error.