docs: author the sub-category taxonomy and C0 explanation
This commit is contained in:
@@ -31,3 +31,35 @@ all of these commands.
|
||||
When C1 is disabled, `rm` uses bare `command rm` with no wrapper — files
|
||||
are permanently deleted, not trashed. There is no intermediate safety net.
|
||||
|
||||
## Sub-categories
|
||||
|
||||
`__fish_config_op_aliases` sub-divides into six sub-categories, each with
|
||||
its own `__fish_config_op_aliases_<slug>` toggle:
|
||||
|
||||
## filesystem
|
||||
|
||||
`ls`, `cat`, `cd`, `du`, `mkdir`, `rm`, `mv`, and `cd`/zoxide navigation --
|
||||
the everyday filesystem-inspection and -modification shadows.
|
||||
|
||||
## search
|
||||
|
||||
`rg`, with its Kitty hyperlink formatting.
|
||||
|
||||
## network
|
||||
|
||||
`ping`, `ssh`, and `yt-dlp` -- shadows that talk to the network.
|
||||
|
||||
## monitor
|
||||
|
||||
`top` -> `btop`.
|
||||
|
||||
## shell-tools
|
||||
|
||||
`bash` (XDG bashrc + `$SHELL` reset), `less` (`$PAGER` fallback chain),
|
||||
and the `help config` interception.
|
||||
|
||||
## dev-tools
|
||||
|
||||
`claude` (AGENTS.md/CLAUDE.md auto-linking) and `edit` (multi-editor
|
||||
launcher), plus `agy`.
|
||||
|
||||
|
||||
@@ -43,3 +43,28 @@ branches, or repos without a remote. The handler fires once per repo entry
|
||||
(not on every sub-directory `cd`). The registry is machine-local at
|
||||
`$__fish_user_dots_path/auto-pull.list` (defaults to `~/.config/.user-dots/fish/auto-pull.list`) and is never committed.
|
||||
|
||||
## Sub-categories
|
||||
|
||||
`__fish_config_op_autoexec` sub-divides into five sub-categories, each
|
||||
with its own `__fish_config_op_autoexec_<slug>` toggle:
|
||||
|
||||
## plugin-management
|
||||
|
||||
Fisher bootstrap on first run.
|
||||
|
||||
## pkg-wrappers
|
||||
|
||||
`paru`/`yay` wrapper generation.
|
||||
|
||||
## venv
|
||||
|
||||
Automatic Python virtualenv activation.
|
||||
|
||||
## telemetry
|
||||
|
||||
The WakaTime hook's startup bootstrap.
|
||||
|
||||
## sync
|
||||
|
||||
Auto-pull background fast-forward, and the user-dots convenience symlink.
|
||||
|
||||
|
||||
@@ -33,3 +33,23 @@ When C3 is disabled, `exit` falls back to `builtin exit` with no scrollback
|
||||
capture, no Kitty IPC, and no file I/O on exit. The scrollback capture block
|
||||
is independently controlled by C5 (see below).
|
||||
|
||||
## Sub-categories
|
||||
|
||||
`__fish_config_op_overrides` sub-divides into three sub-categories, each
|
||||
with its own `__fish_config_op_overrides_<slug>` toggle:
|
||||
|
||||
## key-bindings
|
||||
|
||||
Vi mode, autopair, puffer key intercepts, bang-bang history expansion,
|
||||
and `smart_exit`'s plain-exit path.
|
||||
|
||||
## environment
|
||||
|
||||
`$PATH`, `$PAGER`/`$EDITOR`/`$GPG_TTY`, and `$CDPATH`.
|
||||
|
||||
## prompt
|
||||
|
||||
Starship, the right prompt, Catppuccin syntax/prompt colors, and FZF
|
||||
theming (`$FZF_DEFAULT_OPTS`) -- all driven by the same guard as a single
|
||||
unit, not independently toggleable from each other.
|
||||
|
||||
|
||||
@@ -22,3 +22,28 @@ Disabled integration commands (`spwin`, `tab`, `split`, `hist`, `logs`, `upgrade
|
||||
a colored error to stderr naming the variable that disabled them rather than
|
||||
silently failing.
|
||||
|
||||
## Sub-categories
|
||||
|
||||
`__fish_config_op_integrations` sub-divides into five sub-categories,
|
||||
each with its own `__fish_config_op_integrations_<slug>` toggle:
|
||||
|
||||
## terminal-abbrs
|
||||
|
||||
The Kitty/WezTerm abbreviation set.
|
||||
|
||||
## window-mgmt
|
||||
|
||||
`spwin`, `tab`, `split`.
|
||||
|
||||
## notifications
|
||||
|
||||
`done`'s completion notifications, and the WakaTime activity hook.
|
||||
|
||||
## history-logs
|
||||
|
||||
`hist`, `logs`.
|
||||
|
||||
## pkg-upgrade
|
||||
|
||||
`upgrade`.
|
||||
|
||||
|
||||
@@ -112,3 +112,22 @@ Note: C3 and C5 compose independently. C3 controls whether the smart_exit
|
||||
wrapper is active at all; C5 controls only the scrollback-capture block
|
||||
inside it. With C3 disabled, exit is plain builtin exit regardless of C5.
|
||||
|
||||
## Sub-categories
|
||||
|
||||
`__fish_config_op_logging` sub-divides into three sub-categories, each
|
||||
with its own `__fish_config_op_logging_<slug>` toggle (all still opt-in
|
||||
by default, inherited from C5's own opt-in behavior -- see §3 of the
|
||||
design spec):
|
||||
|
||||
## terminal-capture
|
||||
|
||||
Kitty watcher scrollback capture, and `smart_exit`'s logging-guard path.
|
||||
|
||||
## multiplexer-capture
|
||||
|
||||
tmux `pipe-pane` and zellij `dump-screen` capture.
|
||||
|
||||
## pkg-logs
|
||||
|
||||
`paru`/`yay` AUR log wrappers.
|
||||
|
||||
|
||||
@@ -13,3 +13,16 @@ When C6 is disabled, no greeting is printed by this config. Any greeting
|
||||
set by the distro or other configs runs normally — this config simply does
|
||||
not override it.
|
||||
|
||||
## Sub-categories
|
||||
|
||||
`__fish_config_op_greeting` sub-divides into two sub-categories, each
|
||||
with its own `__fish_config_op_greeting_<slug>` toggle:
|
||||
|
||||
## first-run
|
||||
|
||||
The first-run welcome banner.
|
||||
|
||||
## greeting-message
|
||||
|
||||
The per-session `fish_greeting` override.
|
||||
|
||||
|
||||
@@ -18,3 +18,14 @@ category variable.
|
||||
C4 [Integrations](/08-components-reference/04-c4-terminal-and-tool-integration/) — Kitty/Wezterm integrations, starship hooks, fzf theme
|
||||
C5 [Logging and Capture](/08-components-reference/05-c5-logging-and-capture/) — Session logs, command duration
|
||||
C6 [Greeting & First-Run UI](/08-components-reference/06-c6-greeting-and-first-run-ui/) — Custom startup banner
|
||||
|
||||
## 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.
|
||||
|
||||
Reference in New Issue
Block a user