chore(docs): regenerate man page, HTML docs, and wiki

This commit is contained in:
Gitea Actions
2026-06-11 03:38:01 +00:00
parent fc17c9fd61
commit a9d1d6ac4d
7 changed files with 558 additions and 3 deletions
+213
View File
@@ -792,6 +792,20 @@ rm -e # empty trash
rm -S sensitive.pem # permanent delete
\f[R]
.fi
.SS rg
.IP
.nf
\f[C]
Synopsis: rg [args...]
In Kitty, wraps ripgrep with --hyperlink-format=kitty so search
results are clickable file links in the terminal. Falls back to
system rg in any other terminal. All other arguments pass through
unchanged.
rg \[dq]fish_greeting\[dq] \[ti]/.config/fish/
rg -l \[dq]TODO\[dq] \[ti]/projects/myapp
\f[R]
.fi
.SS scrub
.IP
.nf
@@ -1863,6 +1877,205 @@ print an error naming the variable that disabled them.
.IP \[bu] 2
On CachyOS, the distro fish config\[cq]s own aliases, history override,
and bang-bang bindings are stripped per category as well.
.SS Component Reference
.PP
The following tables detail every component in each category.
Use this reference to understand exactly which behaviors change when you
toggle a category variable.
.SS C1 \[em] Command Shadows
.PP
Disabling __fish_config_op_aliases restores standard system behavior for
all of these commands.
.IP
.nf
\f[C]
Command / Alias Active behavior Disabled fallback
───────────────────────────────────────────────────────────────────────────
ls eza -l -a --icons --hyperlink system ls
cat bat syntax-highlighted; dirs → ls /usr/bin/cat
cd zoxide frecency-based navigation fish builtin cd
rm moves files to trash (recoverable) command rm (permanent)
less $PAGER → ov → less → more → cat system less
du duf (disk overview) or dust (dir tree) system du
top btop resource monitor system top
ping prettyping --nolegend animation system ping
ssh kitten ssh in Kitty terminal system ssh
rg rg --hyperlink-format=kitty system rg
mkdir verbose path-tree display on creation mkdir -p silently
bash XDG bashrc + $SHELL reset on exit system bash
history timestamps prepended to every entry fish builtin history
cp / mv forced -i confirmation prompt cp / mv unmodified
wget forced --continue (resume downloads) system wget
grep/fgrep/egrep forced --color=auto system grep variants
dir / vdir forced --color=auto system dir / vdir
help config intercepts \[dq]help config\[dq] → config-help fish builtin help
\f[R]
.fi
.PP
When C1 is disabled, \f[V]rm\f[R] uses bare \f[V]command rm\f[R] with no
wrapper \[em] files are permanently deleted, not trashed.
There is no intermediate safety net.
.SS C2 \[em] Startup Side-Effects
.PP
These run automatically without any user action.
Disabling __fish_config_op_autoexec prevents all of them.
.IP
.nf
\f[C]
Component Trigger What it does
───────────────────────────────────────────────────────────────────────────
Fisher bootstrap First shell only Downloads and installs fisher
Fisher update After bootstrap Installs all fish_plugins entries
Catppuccin Mocha theme First shell only Applies theme via fish_config
paru wrapper Every startup Writes \[ti]/.local/bin/paru wrapper
yay wrapper Every startup Writes \[ti]/.local/bin/yay wrapper
Python venv activation On every cd Sources .venv/bin/activate.fish
WakaTime command hook On every command Reports to WakaTime API
\f[R]
.fi
.PP
When C2 is disabled: no Fisher install, no theme application, no
paru/yay wrapper generation, no automatic venv activation, and no
WakaTime reporting.
The first-run completion marker (__fish_config_first_run_complete) is
still set so the init does not re-run on subsequent shells.
.PP
Python venv activation fires on every directory change.
If a directory uses direnv (.envrc present), direnv takes priority and
auto-venv is skipped for that directory.
.SS C3 \[em] Key and Environment Overrides
.PP
These change fundamental shell behavior: how keys work, which pager
opens, and what the prompt looks like.
Disabling __fish_config_op_overrides removes all of them.
.IP
.nf
\f[C]
Override What it replaces or sets
───────────────────────────────────────────────────────────────────────────
Vi mode fish_vi_key_bindings replaces default Emacs mode
exit → smart_exit exit wrapper that captures scrollback before closing
PAGER=ov ov used by git, man, and all $PAGER-aware tools
MANPAGER=bat pipeline man pages rendered with syntax highlighting
CDPATH=. \[ti]/projects \[ti] bare dir names resolve against \[ti]/projects and \[ti]
Bang-bang system ! and $ keys expand history; !\[ha], !*, !-N, !?str?,
\[ha]old\[ha]new abbreviations; six expand_bang_* helpers
Autopair ( [ { \[dq] \[aq] auto-close to (), [], {}, \[dq]\[dq], \[aq]\[aq]
Puffer key intercepts . ! $ * keys intercepted for smart expansion
Starship prompt fish_prompt replaced by Starship + OSC 133 markers
Catppuccin colors 30+ fish_color_* variables set to Mocha palette
FZF_DEFAULT_OPTS FZF themed to Catppuccin Mocha colors
Right prompt fish_right_prompt: Docker context + timestamp
\f[R]
.fi
.PP
The bang-bang system spans key_bindings.fish, abbr.fish, puffer.fish,
and six expand_bang_*.fish functions.
All are gated together \[em] disabling C3 removes the entire
bang-expansion system at once.
.PP
When C3 is disabled, \f[V]exit\f[R] falls back to \f[V]builtin exit\f[R]
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).
.SS C4 \[em] Terminal and Tool Integration
.PP
These features couple the shell to specific external tools.
Disabling __fish_config_op_integrations disables all of them.
.IP
.nf
\f[C]
Component Requires
───────────────────────────────────────────────────────────────────────────
\[ti]60 Kitty/WezTerm abbrs Active Kitty or WezTerm session
(:w, :wv, :wh, :t, etc.)
Done desktop notifications Graphical desktop with a notification daemon
spwin Kitty or WezTerm
tab Kitty, WezTerm, or Konsole
split Kitty or WezTerm
hist fzf + wl-copy (Wayland clipboard)
logs fzf + ov; reads from \[ti]/.terminal_history/
upgrade paru or yay (Arch Linux only)
WakaTime hook wakatime CLI and a configured API key
\f[R]
.fi
.PP
Disabled integration commands (spwin, tab, split, hist, logs, upgrade)
print a colored error to stderr naming the variable that disabled them
rather than silently failing.
.SS C5 \[em] Logging and Capture
.PP
Three components capture shell output to disk.
Disabling __fish_config_op_logging skips all capture and removes the
logging wrappers.
.IP
.nf
\f[C]
Component What it captures
───────────────────────────────────────────────────────────────────────────
Scrollback capture Terminal session output saved to:
\[ti]/.terminal_history/scrollback_YYYY-MM-DD_HH-MM-SS.log
paru wrapper All paru/AUR output teed to:
\[ti]/.terminal_history/paru_YYYY-MM-DD_HH-MM-SS.log
yay wrapper All yay/AUR output teed to:
\[ti]/.terminal_history/yay_YYYY-MM-DD_HH-MM-SS.log
Kitty watcher watcher.py captures scrollback when Kitty closes
\f[R]
.fi
.PP
Logging coordination via sentinel file
.PP
C5 uses a sentinel file to synchronize state between the shell and
out-of-process components (the Kitty watcher and all running shells):
.IP
.nf
\f[C]
\[ti]/.config/fish/.logging_disabled
\f[R]
.fi
.PP
Disabling __fish_config_op_logging: 1.
Creates the sentinel immediately in every open shell.
2.
Removes \[ti]/.local/bin/paru and \[ti]/.local/bin/yay logging wrappers;
bare /usr/bin/paru and /usr/bin/yay are used instead.
3.
Kitty\[cq]s watcher.py reads the sentinel on each save attempt and skips
capture \[em] no Kitty restart required.
4.
smart_exit stops saving scrollback logs.
.PP
Re-enabling __fish_config_op_logging: 1.
Removes the sentinel in every open shell.
2.
Regenerates paru/yay logging wrappers in \[ti]/.local/bin/.
3.
Kitty watcher resumes capture on the next session exit.
.PP
Changes propagate to all running shells through an event handler that
fires whenever __fish_config_op_logging changes \[em] no shell restart
needed.
.PP
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.
.SS C6 \[em] Greeting and First-Run UI
.IP
.nf
\f[C]
Component What it shows
───────────────────────────────────────────────────────────────────────────
First-run welcome banner One-time message on first interactive session
fish_greeting override Empty function defined late in config.fish to
suppress distro greetings (e.g. CachyOS sets
fish_greeting to fastfetch by default)
\f[R]
.fi
.PP
When C6 is disabled, no greeting is printed by this config.
Any greeting set by the distro or other configs runs normally \[em] this
config simply does not override it.
.SS Prompt and Theme
.SS Starship
.PP