Components Reference
The following tables detail every component in each category. Use this reference to understand exactly which behaviors change when you toggle a category variable.
| Category | Description |
|---|---|
C1 |
Command Shadows — Wraps destructive commands (rm, cp) to be safe by default |
C2 |
Startup Side-Effects — Bootstraps Fisher, generates wrappers, auto-activates venvs |
C3 |
Overrides — Overrides cd, sets Vi mode, binds <CR> to smart_enter |
C4 |
Integrations — Kitty/Wezterm integrations, starship hooks, fzf theme |
C5 |
Logging and Capture — Session logs, command duration |
C6 |
Greeting & First-Run UI — Custom startup banner |
Each category further sub-divides into two to six sub-categories (24 in
total) with their own __fish_config_op_<category>_<subcategory> toggles
– see that category’s page for its sub-category list.
Per-function overrides: C0/always
Section titled “Per-function overrides: C0/always”Every guarded function or file can also carry a reserved always/on or
always/off tag in its # COMPONENT header, independent of every C1-C6
category and sub-category toggle and invisible to config-settings. An
always/off tag disables that function unconditionally; an always/on
tag enables it unconditionally, ignoring the state of every other tagged
sub-category. This is a per-function escape hatch for cases too granular
or too idiosyncratic to justify a taxonomy entry – edit the header
directly and run __fish_config_op_registry_rebuild to apply the change.