From a9d1d6ac4dfda2eb9e88886fba145a92c4481064 Mon Sep 17 00:00:00 2001 From: Gitea Actions Date: Thu, 11 Jun 2026 03:38:01 +0000 Subject: [PATCH] chore(docs): regenerate man page, HTML docs, and wiki --- docs/fish-config.1 | 213 +++++++++++++++++++++++++ docs/html/11-7-customization.html | 151 ++++++++++++++++++ docs/html/9-5-functions-reference.html | 11 +- docs/html/index.html | 7 +- docs/html/sitemap.json | 2 +- docs/wiki/5-functions-reference.md | 11 ++ docs/wiki/7-customization.md | 166 +++++++++++++++++++ 7 files changed, 558 insertions(+), 3 deletions(-) diff --git a/docs/fish-config.1 b/docs/fish-config.1 index c2b40f3..1785255 100644 --- a/docs/fish-config.1 +++ b/docs/fish-config.1 @@ -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 diff --git a/docs/html/11-7-customization.html b/docs/html/11-7-customization.html index c035ccb..82611e4 100644 --- a/docs/html/11-7-customization.html +++ b/docs/html/11-7-customization.html @@ -587,6 +587,157 @@ upgrade) print an error naming the variable that disabled them.
  • On CachyOS, the distro fish config's own aliases, history override, and bang-bang bindings are stripped per category as well.
  • +

    Component +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.

    +

    C1 — Command +Shadows

    +

    Disabling __fish_config_op_aliases restores standard system behavior +for all of these commands.

    +
    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 "help config" → config-help fish builtin help
    +

    When C1 is disabled, rm uses bare +command rm with no wrapper — files are permanently deleted, +not trashed. There is no intermediate safety net.

    +

    C2 — Startup +Side-Effects

    +

    These run automatically without any user action. Disabling +__fish_config_op_autoexec prevents all of them.

    +
    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 ~/.local/bin/paru wrapper
    +yay wrapper                Every startup        Writes ~/.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
    +

    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.

    +

    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.

    +

    C3 — +Key and Environment Overrides

    +

    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.

    +
    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=. ~/projects ~     bare dir names resolve against ~/projects and ~
    +Bang-bang system          ! and $ keys expand history; !^, !*, !-N, !?str?,
    +                          ^old^new abbreviations; six expand_bang_* helpers
    +Autopair                  ( [ { " ' auto-close to (), [], {}, "", ''
    +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
    +

    The bang-bang system spans key_bindings.fish, abbr.fish, puffer.fish, +and six expand_bang_*.fish functions. All are gated together — disabling +C3 removes the entire bang-expansion system at once.

    +

    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).

    +

    C4 — +Terminal and Tool Integration

    +

    These features couple the shell to specific external tools. Disabling +__fish_config_op_integrations disables all of them.

    +
    Component                  Requires
    +───────────────────────────────────────────────────────────────────────────
    +~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 ~/.terminal_history/
    +upgrade                    paru or yay (Arch Linux only)
    +WakaTime hook              wakatime CLI and a configured API key
    +

    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.

    +

    C5 — Logging and +Capture

    +

    Three components capture shell output to disk. Disabling +__fish_config_op_logging skips all capture and removes the logging +wrappers.

    +
    Component               What it captures
    +───────────────────────────────────────────────────────────────────────────
    +Scrollback capture      Terminal session output saved to:
    +                        ~/.terminal_history/scrollback_YYYY-MM-DD_HH-MM-SS.log
    +paru wrapper            All paru/AUR output teed to:
    +                        ~/.terminal_history/paru_YYYY-MM-DD_HH-MM-SS.log
    +yay wrapper             All yay/AUR output teed to:
    +                        ~/.terminal_history/yay_YYYY-MM-DD_HH-MM-SS.log
    +Kitty watcher           watcher.py captures scrollback when Kitty closes
    +

    Logging coordination via sentinel file

    +

    C5 uses a sentinel file to synchronize state between the shell and +out-of-process components (the Kitty watcher and all running +shells):

    +
    ~/.config/fish/.logging_disabled
    +

    Disabling __fish_config_op_logging:

    +
      +
    1. Creates the sentinel immediately in every open shell.
    2. +
    3. Removes ~/.local/bin/paru and ~/.local/bin/yay logging wrappers; +bare /usr/bin/paru and /usr/bin/yay are used instead.
    4. +
    5. Kitty's watcher.py reads the sentinel on each save attempt and skips +capture — no Kitty restart required.
    6. +
    7. smart_exit stops saving scrollback logs.
    8. +
    +

    Re-enabling __fish_config_op_logging:

    +
      +
    1. Removes the sentinel in every open shell.
    2. +
    3. Regenerates paru/yay logging wrappers in ~/.local/bin/.
    4. +
    5. Kitty watcher resumes capture on the next session exit.
    6. +
    +

    Changes propagate to all running shells through an event handler that +fires whenever __fish_config_op_logging changes — no shell restart +needed.

    +

    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.

    +

    C6 — +Greeting and First-Run UI

    +
    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)
    +

    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.

    Prompt and Theme

    Starship

    The primary prompt is Starship, initialized by conf.d/starship.fish. diff --git a/docs/html/9-5-functions-reference.html b/docs/html/9-5-functions-reference.html index d0dd516..8171461 100644 --- a/docs/html/9-5-functions-reference.html +++ b/docs/html/9-5-functions-reference.html @@ -589,7 +589,16 @@ Falls back to /usr/bin/rm when trash is unavailable. rm file.txt # moves to trash rm -e # empty trash rm -S sensitive.pem # permanent delete -

    scrub

    +

    rg

    +
    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 "fish_greeting" ~/.config/fish/
    +rg -l "TODO" ~/projects/myapp
    +

    scrub

    Synopsis:  scrub [-a] [-d] [-h]
     Recursively removes OS metadata, editor artifacts, compiler output,
     and dev caches using fd.
    diff --git a/docs/html/index.html b/docs/html/index.html
    index 97bb4c0..29a2b85 100644
    --- a/docs/html/index.html
    +++ b/docs/html/index.html
    @@ -611,6 +611,7 @@ id="toc-mkcd">mkcd
     
  • poke
  • rm
  • +
  • rg
  • scrub
  • @@ -821,7 +822,11 @@ id="toc-fish-universal-variables">Fish Universal Variables
  • Opinionated Components -(Minimal Mode)
  • +(Minimal Mode) +
  • Prompt and Theme
      diff --git a/docs/html/sitemap.json b/docs/html/sitemap.json index 4980155..05ac1c5 100644 --- a/docs/html/sitemap.json +++ b/docs/html/sitemap.json @@ -1 +1 @@ -{"section":{"id":"","level":"0","number":null,"path":"index.html","title":"FISH-CONFIG"},"subsections":[{"section":{"id":"name","level":"1","number":"1","path":"1-name.html","title":"NAME"},"subsections":[]},{"section":{"id":"synopsis","level":"1","number":"2","path":"2-synopsis.html","title":"SYNOPSIS"},"subsections":[]},{"section":{"id":"description","level":"1","number":"3","path":"3-description.html","title":"DESCRIPTION"},"subsections":[]},{"section":{"id":"table-of-contents","level":"1","number":"4","path":"4-table-of-contents.html","title":"TABLE OF CONTENTS"},"subsections":[]},{"section":{"id":"1-configuration-variables","level":"1","number":"5","path":"5-1-configuration-variables.html","title":"1. CONFIGURATION VARIABLES"},"subsections":[{"section":{"id":"environment-directories-xdg","level":"2","number":"5.1","path":"5-1-configuration-variables.html#environment-directories-xdg","title":"Environment Directories (XDG)"},"subsections":[]},{"section":{"id":"tool-homes-xdg-compliant","level":"2","number":"5.2","path":"5-1-configuration-variables.html#tool-homes-xdg-compliant","title":"Tool Homes (XDG-compliant)"},"subsections":[]},{"section":{"id":"editor-and-pager","level":"2","number":"5.3","path":"5-1-configuration-variables.html#editor-and-pager","title":"Editor and Pager"},"subsections":[]},{"section":{"id":"scrollback-history","level":"2","number":"5.4","path":"5-1-configuration-variables.html#scrollback-history","title":"Scrollback History"},"subsections":[]},{"section":{"id":"other","level":"2","number":"5.5","path":"5-1-configuration-variables.html#other","title":"Other"},"subsections":[]},{"section":{"id":"pager-hierarchy","level":"2","number":"5.6","path":"5-1-configuration-variables.html#pager-hierarchy","title":"Pager Hierarchy"},"subsections":[]},{"section":{"id":"integrations","level":"2","number":"5.7","path":"5-1-configuration-variables.html#integrations","title":"Integrations"},"subsections":[{"section":{"id":"zoxide","level":"3","number":"5.7.1","path":"5-1-configuration-variables.html#zoxide","title":"Zoxide"},"subsections":[]},{"section":{"id":"direnv","level":"3","number":"5.7.2","path":"5-1-configuration-variables.html#direnv","title":"DirEnv"},"subsections":[]},{"section":{"id":"auto-python-venv","level":"3","number":"5.7.3","path":"5-1-configuration-variables.html#auto-python-venv","title":"Auto Python Venv"},"subsections":[]},{"section":{"id":"wakatime","level":"3","number":"5.7.4","path":"5-1-configuration-variables.html#wakatime","title":"WakaTime"},"subsections":[]},{"section":{"id":"tailscale","level":"3","number":"5.7.5","path":"5-1-configuration-variables.html#tailscale","title":"Tailscale"},"subsections":[]},{"section":{"id":"done-notifications","level":"3","number":"5.7.6","path":"5-1-configuration-variables.html#done-notifications","title":"Done Notifications"},"subsections":[]},{"section":{"id":"scrollback-history-1","level":"3","number":"5.7.7","path":"5-1-configuration-variables.html#scrollback-history-1","title":"Scrollback History"},"subsections":[]}]}]},{"section":{"id":"2-path-setup","level":"1","number":"6","path":"6-2-path-setup.html","title":"2. PATH SETUP"},"subsections":[]},{"section":{"id":"3-key-bindings","level":"1","number":"7","path":"7-3-key-bindings.html","title":"3. KEY BINDINGS"},"subsections":[{"section":{"id":"fzf-bindings-bundled-from-patrickf1fzffish","level":"2","number":"7.1","path":"7-3-key-bindings.html#fzf-bindings-bundled-from-patrickf1fzffish","title":"FZF Bindings (bundled from PatrickF1/fzf.fish)"},"subsections":[]}]},{"section":{"id":"4-abbreviations","level":"1","number":"8","path":"8-4-abbreviations.html","title":"4. ABBREVIATIONS"},"subsections":[{"section":{"id":"41-editors","level":"2","number":"8.1","path":"8-4-abbreviations.html#41-editors","title":"4.1 Editors"},"subsections":[]},{"section":{"id":"42-navigation-and-listing","level":"2","number":"8.2","path":"8-4-abbreviations.html#42-navigation-and-listing","title":"4.2 Navigation and Listing"},"subsections":[]},{"section":{"id":"43-git","level":"2","number":"8.3","path":"8-4-abbreviations.html#43-git","title":"4.3 Git"},"subsections":[]},{"section":{"id":"44-terminal-windows-tabs-and-panes","level":"2","number":"8.4","path":"8-4-abbreviations.html#44-terminal-windows-tabs-and-panes","title":"4.4 Terminal Windows, Tabs, and Panes"},"subsections":[]},{"section":{"id":"45-chezmoi","level":"2","number":"8.5","path":"8-4-abbreviations.html#45-chezmoi","title":"4.5 Chezmoi"},"subsections":[]},{"section":{"id":"46-docker","level":"2","number":"8.6","path":"8-4-abbreviations.html#46-docker","title":"4.6 Docker"},"subsections":[]},{"section":{"id":"47-systemctl","level":"2","number":"8.7","path":"8-4-abbreviations.html#47-systemctl","title":"4.7 Systemctl"},"subsections":[]},{"section":{"id":"48-ai-assistants","level":"2","number":"8.8","path":"8-4-abbreviations.html#48-ai-assistants","title":"4.8 AI Assistants"},"subsections":[]},{"section":{"id":"49-history-expansion","level":"2","number":"8.9","path":"8-4-abbreviations.html#49-history-expansion","title":"4.9 History Expansion"},"subsections":[]},{"section":{"id":"410-miscellaneous","level":"2","number":"8.10","path":"8-4-abbreviations.html#410-miscellaneous","title":"4.10 Miscellaneous"},"subsections":[]},{"section":{"id":"411-shell-aliases","level":"2","number":"8.11","path":"8-4-abbreviations.html#411-shell-aliases","title":"4.11 Shell Aliases"},"subsections":[{"section":{"id":"navigation","level":"3","number":"8.11.1","path":"8-4-abbreviations.html#navigation","title":"Navigation"},"subsections":[]},{"section":{"id":"color-overrides","level":"3","number":"8.11.2","path":"8-4-abbreviations.html#color-overrides","title":"Color Overrides"},"subsections":[]},{"section":{"id":"safety-wrappers","level":"3","number":"8.11.3","path":"8-4-abbreviations.html#safety-wrappers","title":"Safety Wrappers"},"subsections":[]},{"section":{"id":"archives-and-networking","level":"3","number":"8.11.4","path":"8-4-abbreviations.html#archives-and-networking","title":"Archives and Networking"},"subsections":[]},{"section":{"id":"system-logs","level":"3","number":"8.11.5","path":"8-4-abbreviations.html#system-logs","title":"System Logs"},"subsections":[]}]}]},{"section":{"id":"5-functions-reference","level":"1","number":"9","path":"9-5-functions-reference.html","title":"5. FUNCTIONS REFERENCE"},"subsections":[{"section":{"id":"51-file-and-directory","level":"2","number":"9.1","path":"9-5-functions-reference.html#51-file-and-directory","title":"5.1 File and Directory"},"subsections":[{"section":{"id":"cat","level":"3","number":"9.1.1","path":"9-5-functions-reference.html#cat","title":"cat"},"subsections":[]},{"section":{"id":"copy","level":"3","number":"9.1.2","path":"9-5-functions-reference.html#copy","title":"copy"},"subsections":[]},{"section":{"id":"du","level":"3","number":"9.1.3","path":"9-5-functions-reference.html#du","title":"du"},"subsections":[]},{"section":{"id":"dusize","level":"3","number":"9.1.4","path":"9-5-functions-reference.html#dusize","title":"dusize"},"subsections":[]},{"section":{"id":"ld","level":"3","number":"9.1.5","path":"9-5-functions-reference.html#ld","title":"lD"},"subsections":[]},{"section":{"id":"ls","level":"3","number":"9.1.6","path":"9-5-functions-reference.html#ls","title":"ls"},"subsections":[]},{"section":{"id":"lsr","level":"3","number":"9.1.7","path":"9-5-functions-reference.html#lsr","title":"lsr"},"subsections":[]},{"section":{"id":"lss","level":"3","number":"9.1.8","path":"9-5-functions-reference.html#lss","title":"lss"},"subsections":[]},{"section":{"id":"lstree","level":"3","number":"9.1.9","path":"9-5-functions-reference.html#lstree","title":"lstree"},"subsections":[]},{"section":{"id":"lt","level":"3","number":"9.1.10","path":"9-5-functions-reference.html#lt","title":"lt"},"subsections":[]},{"section":{"id":"ltr","level":"3","number":"9.1.11","path":"9-5-functions-reference.html#ltr","title":"ltr"},"subsections":[]},{"section":{"id":"lx","level":"3","number":"9.1.12","path":"9-5-functions-reference.html#lx","title":"lx"},"subsections":[]},{"section":{"id":"mkdir","level":"3","number":"9.1.13","path":"9-5-functions-reference.html#mkdir","title":"mkdir"},"subsections":[]},{"section":{"id":"mkcd","level":"3","number":"9.1.14","path":"9-5-functions-reference.html#mkcd","title":"mkcd"},"subsections":[]},{"section":{"id":"poke","level":"3","number":"9.1.15","path":"9-5-functions-reference.html#poke","title":"poke"},"subsections":[]},{"section":{"id":"rm","level":"3","number":"9.1.16","path":"9-5-functions-reference.html#rm","title":"rm"},"subsections":[]},{"section":{"id":"scrub","level":"3","number":"9.1.17","path":"9-5-functions-reference.html#scrub","title":"scrub"},"subsections":[]}]},{"section":{"id":"52-navigation","level":"2","number":"9.2","path":"9-5-functions-reference.html#52-navigation","title":"5.2 Navigation"},"subsections":[{"section":{"id":"cdi","level":"3","number":"9.2.1","path":"9-5-functions-reference.html#cdi","title":"cdi"},"subsections":[]},{"section":{"id":"clone","level":"3","number":"9.2.2","path":"9-5-functions-reference.html#clone","title":"clone"},"subsections":[]},{"section":{"id":"clonet","level":"3","number":"9.2.3","path":"9-5-functions-reference.html#clonet","title":"clonet"},"subsections":[]}]},{"section":{"id":"53-editors-and-viewers","level":"2","number":"9.3","path":"9-5-functions-reference.html#53-editors-and-viewers","title":"5.3 Editors and Viewers"},"subsections":[{"section":{"id":"edit","level":"3","number":"9.3.1","path":"9-5-functions-reference.html#edit","title":"edit"},"subsections":[]},{"section":{"id":"fc","level":"3","number":"9.3.2","path":"9-5-functions-reference.html#fc","title":"fc"},"subsections":[]},{"section":{"id":"less","level":"3","number":"9.3.3","path":"9-5-functions-reference.html#less","title":"less"},"subsections":[]},{"section":{"id":"rawfish","level":"3","number":"9.3.4","path":"9-5-functions-reference.html#rawfish","title":"rawfish"},"subsections":[]},{"section":{"id":"view","level":"3","number":"9.3.5","path":"9-5-functions-reference.html#view","title":"view"},"subsections":[]}]},{"section":{"id":"54-git-and-version-control","level":"2","number":"9.4","path":"9-5-functions-reference.html#54-git-and-version-control","title":"5.4 Git and Version Control"},"subsections":[{"section":{"id":"branch","level":"3","number":"9.4.1","path":"9-5-functions-reference.html#branch","title":"branch"},"subsections":[]},{"section":{"id":"gi","level":"3","number":"9.4.2","path":"9-5-functions-reference.html#gi","title":"gi"},"subsections":[]},{"section":{"id":"git-clean","level":"3","number":"9.4.3","path":"9-5-functions-reference.html#git-clean","title":"git-clean"},"subsections":[]},{"section":{"id":"gitup","level":"3","number":"9.4.4","path":"9-5-functions-reference.html#gitup","title":"gitup"},"subsections":[]},{"section":{"id":"gitui","level":"3","number":"9.4.5","path":"9-5-functions-reference.html#gitui","title":"gitui"},"subsections":[]},{"section":{"id":"hist","level":"3","number":"9.4.6","path":"9-5-functions-reference.html#hist","title":"hist"},"subsections":[]}]},{"section":{"id":"55-package-management","level":"2","number":"9.5","path":"9-5-functions-reference.html#55-package-management","title":"5.5 Package Management"},"subsections":[{"section":{"id":"pkg","level":"3","number":"9.5.1","path":"9-5-functions-reference.html#pkg","title":"pkg"},"subsections":[]},{"section":{"id":"search","level":"3","number":"9.5.2","path":"9-5-functions-reference.html#search","title":"search"},"subsections":[]},{"section":{"id":"upgrade","level":"3","number":"9.5.3","path":"9-5-functions-reference.html#upgrade","title":"upgrade"},"subsections":[]},{"section":{"id":"cleanup","level":"3","number":"9.5.4","path":"9-5-functions-reference.html#cleanup","title":"cleanup"},"subsections":[]},{"section":{"id":"parur","level":"3","number":"9.5.5","path":"9-5-functions-reference.html#parur","title":"parur"},"subsections":[]}]},{"section":{"id":"56-dependency-management","level":"2","number":"9.6","path":"9-5-functions-reference.html#56-dependency-management","title":"5.6 Dependency Management"},"subsections":[{"section":{"id":"fish-deps","level":"3","number":"9.6.1","path":"9-5-functions-reference.html#fish-deps","title":"fish-deps"},"subsections":[]},{"section":{"id":"check_fish_deps","level":"3","number":"9.6.2","path":"9-5-functions-reference.html#check_fish_deps","title":"check_fish_deps"},"subsections":[]}]},{"section":{"id":"57-system-and-monitoring","level":"2","number":"9.7","path":"9-5-functions-reference.html#57-system-and-monitoring","title":"5.7 System and Monitoring"},"subsections":[{"section":{"id":"top","level":"3","number":"9.7.1","path":"9-5-functions-reference.html#top","title":"top"},"subsections":[]},{"section":{"id":"swapstat","level":"3","number":"9.7.2","path":"9-5-functions-reference.html#swapstat","title":"swapstat"},"subsections":[]},{"section":{"id":"sbver","level":"3","number":"9.7.3","path":"9-5-functions-reference.html#sbver","title":"sbver"},"subsections":[]},{"section":{"id":"ports","level":"3","number":"9.7.4","path":"9-5-functions-reference.html#ports","title":"ports"},"subsections":[]},{"section":{"id":"screensleep","level":"3","number":"9.7.5","path":"9-5-functions-reference.html#screensleep","title":"screensleep"},"subsections":[]},{"section":{"id":"lock","level":"3","number":"9.7.6","path":"9-5-functions-reference.html#lock","title":"lock"},"subsections":[]},{"section":{"id":"sudo-toggle","level":"3","number":"9.7.7","path":"9-5-functions-reference.html#sudo-toggle","title":"sudo-toggle"},"subsections":[]},{"section":{"id":"limine-edit","level":"3","number":"9.7.8","path":"9-5-functions-reference.html#limine-edit","title":"limine-edit"},"subsections":[]}]},{"section":{"id":"58-terminal-management","level":"2","number":"9.8","path":"9-5-functions-reference.html#58-terminal-management","title":"5.8 Terminal Management"},"subsections":[{"section":{"id":"tab","level":"3","number":"9.8.1","path":"9-5-functions-reference.html#tab","title":"tab"},"subsections":[]},{"section":{"id":"split","level":"3","number":"9.8.2","path":"9-5-functions-reference.html#split","title":"split"},"subsections":[]},{"section":{"id":"spwin","level":"3","number":"9.8.3","path":"9-5-functions-reference.html#spwin","title":"spwin"},"subsections":[]},{"section":{"id":"detach","level":"3","number":"9.8.4","path":"9-5-functions-reference.html#detach","title":"detach"},"subsections":[]},{"section":{"id":"bkg","level":"3","number":"9.8.5","path":"9-5-functions-reference.html#bkg","title":"bkg"},"subsections":[]},{"section":{"id":"ssh","level":"3","number":"9.8.6","path":"9-5-functions-reference.html#ssh","title":"ssh"},"subsections":[]}]},{"section":{"id":"59-clipboard","level":"2","number":"9.9","path":"9-5-functions-reference.html#59-clipboard","title":"5.9 Clipboard"},"subsections":[{"section":{"id":"y","level":"3","number":"9.9.1","path":"9-5-functions-reference.html#y","title":"y"},"subsections":[]},{"section":{"id":"p","level":"3","number":"9.9.2","path":"9-5-functions-reference.html#p","title":"p"},"subsections":[]},{"section":{"id":"paste","level":"3","number":"9.9.3","path":"9-5-functions-reference.html#paste","title":"paste"},"subsections":[]}]},{"section":{"id":"510-network","level":"2","number":"9.10","path":"9-5-functions-reference.html#510-network","title":"5.10 Network"},"subsections":[{"section":{"id":"gip","level":"3","number":"9.10.1","path":"9-5-functions-reference.html#gip","title":"gip"},"subsections":[]},{"section":{"id":"gip4","level":"3","number":"9.10.2","path":"9-5-functions-reference.html#gip4","title":"gip4"},"subsections":[]},{"section":{"id":"gip6","level":"3","number":"9.10.3","path":"9-5-functions-reference.html#gip6","title":"gip6"},"subsections":[]},{"section":{"id":"ping","level":"3","number":"9.10.4","path":"9-5-functions-reference.html#ping","title":"ping"},"subsections":[]},{"section":{"id":"qr","level":"3","number":"9.10.5","path":"9-5-functions-reference.html#qr","title":"qr"},"subsections":[]}]},{"section":{"id":"511-pager-and-logging","level":"2","number":"9.11","path":"9-5-functions-reference.html#511-pager-and-logging","title":"5.11 Pager and Logging"},"subsections":[{"section":{"id":"logs","level":"3","number":"9.11.1","path":"9-5-functions-reference.html#logs","title":"logs"},"subsections":[]},{"section":{"id":"smart_exit","level":"3","number":"9.11.2","path":"9-5-functions-reference.html#smart_exit","title":"smart_exit"},"subsections":[]}]},{"section":{"id":"512-ai-and-developer-tools","level":"2","number":"9.12","path":"9-5-functions-reference.html#512-ai-and-developer-tools","title":"5.12 AI and Developer Tools"},"subsections":[{"section":{"id":"antigravity","level":"3","number":"9.12.1","path":"9-5-functions-reference.html#antigravity","title":"antigravity"},"subsections":[]},{"section":{"id":"antigravity-ide","level":"3","number":"9.12.2","path":"9-5-functions-reference.html#antigravity-ide","title":"antigravity-ide"},"subsections":[]},{"section":{"id":"antigravity-resume","level":"3","number":"9.12.3","path":"9-5-functions-reference.html#antigravity-resume","title":"antigravity-resume"},"subsections":[]},{"section":{"id":"claude-resume","level":"3","number":"9.12.4","path":"9-5-functions-reference.html#claude-resume","title":"claude-resume"},"subsections":[]},{"section":{"id":"claude-docs","level":"3","number":"9.12.5","path":"9-5-functions-reference.html#claude-docs","title":"claude-docs"},"subsections":[]},{"section":{"id":"claude-pr","level":"3","number":"9.12.6","path":"9-5-functions-reference.html#claude-pr","title":"claude-pr"},"subsections":[]},{"section":{"id":"code-resume","level":"3","number":"9.12.7","path":"9-5-functions-reference.html#code-resume","title":"code-resume"},"subsections":[]},{"section":{"id":"superpowers","level":"3","number":"9.12.8","path":"9-5-functions-reference.html#superpowers","title":"superpowers"},"subsections":[]}]},{"section":{"id":"513-media-and-utilities","level":"2","number":"9.13","path":"9-5-functions-reference.html#513-media-and-utilities","title":"5.13 Media and Utilities"},"subsections":[{"section":{"id":"dng2avif","level":"3","number":"9.13.1","path":"9-5-functions-reference.html#dng2avif","title":"dng2avif"},"subsections":[]},{"section":{"id":"steam-dl","level":"3","number":"9.13.2","path":"9-5-functions-reference.html#steam-dl","title":"steam-dl"},"subsections":[]},{"section":{"id":"spark","level":"3","number":"9.13.3","path":"9-5-functions-reference.html#spark","title":"spark"},"subsections":[]}]},{"section":{"id":"514-miscellaneous","level":"2","number":"9.14","path":"9-5-functions-reference.html#514-miscellaneous","title":"5.14 Miscellaneous"},"subsections":[{"section":{"id":"config-help","level":"3","number":"9.14.1","path":"9-5-functions-reference.html#config-help","title":"config-help"},"subsections":[]},{"section":{"id":"config-update","level":"3","number":"9.14.2","path":"9-5-functions-reference.html#config-update","title":"config-update"},"subsections":[]},{"section":{"id":"bash","level":"3","number":"9.14.3","path":"9-5-functions-reference.html#bash","title":"bash"},"subsections":[]},{"section":{"id":"bd-pull","level":"3","number":"9.14.4","path":"9-5-functions-reference.html#bd-pull","title":"bd-pull"},"subsections":[]},{"section":{"id":"cheat","level":"3","number":"9.14.5","path":"9-5-functions-reference.html#cheat","title":"cheat"},"subsections":[]},{"section":{"id":"cffetch--ffetch","level":"3","number":"9.14.6","path":"9-5-functions-reference.html#cffetch--ffetch","title":"cffetch / ffetch"},"subsections":[]},{"section":{"id":"dockup","level":"3","number":"9.14.7","path":"9-5-functions-reference.html#dockup","title":"dockup"},"subsections":[]},{"section":{"id":"joplin","level":"3","number":"9.14.8","path":"9-5-functions-reference.html#joplin","title":"joplin"},"subsections":[]},{"section":{"id":"ld-1","level":"3","number":"9.14.9","path":"9-5-functions-reference.html#ld-1","title":"ld"},"subsections":[]},{"section":{"id":"replay","level":"3","number":"9.14.10","path":"9-5-functions-reference.html#replay","title":"replay"},"subsections":[]},{"section":{"id":"tmux-clean","level":"3","number":"9.14.11","path":"9-5-functions-reference.html#tmux-clean","title":"tmux-clean"},"subsections":[]},{"section":{"id":"wake-lock","level":"3","number":"9.14.12","path":"9-5-functions-reference.html#wake-lock","title":"wake-lock"},"subsections":[]},{"section":{"id":"zellij","level":"3","number":"9.14.13","path":"9-5-functions-reference.html#zellij","title":"zellij"},"subsections":[]}]}]},{"section":{"id":"6-dependency-catalog","level":"1","number":"10","path":"10-6-dependency-catalog.html","title":"6. DEPENDENCY CATALOG"},"subsections":[{"section":{"id":"required","level":"2","number":"10.1","path":"10-6-dependency-catalog.html#required","title":"Required"},"subsections":[]},{"section":{"id":"integrations-1","level":"2","number":"10.2","path":"10-6-dependency-catalog.html#integrations-1","title":"Integrations"},"subsections":[]},{"section":{"id":"recommended","level":"2","number":"10.3","path":"10-6-dependency-catalog.html#recommended","title":"Recommended"},"subsections":[]},{"section":{"id":"install-methods","level":"2","number":"10.4","path":"10-6-dependency-catalog.html#install-methods","title":"Install Methods"},"subsections":[]}]},{"section":{"id":"7-customization","level":"1","number":"11","path":"11-7-customization.html","title":"7. CUSTOMIZATION"},"subsections":[{"section":{"id":"machine-local-configuration","level":"2","number":"11.1","path":"11-7-customization.html#machine-local-configuration","title":"Machine-local Configuration"},"subsections":[]},{"section":{"id":"secrets-and-api-keys","level":"2","number":"11.2","path":"11-7-customization.html#secrets-and-api-keys","title":"Secrets and API Keys"},"subsections":[]},{"section":{"id":"overriding-configuration-variables","level":"2","number":"11.3","path":"11-7-customization.html#overriding-configuration-variables","title":"Overriding Configuration Variables"},"subsections":[]},{"section":{"id":"fish-universal-variables","level":"2","number":"11.4","path":"11-7-customization.html#fish-universal-variables","title":"Fish Universal Variables"},"subsections":[]},{"section":{"id":"opinionated-components-minimal-mode","level":"2","number":"11.5","path":"11-7-customization.html#opinionated-components-minimal-mode","title":"Opinionated Components (Minimal Mode)"},"subsections":[]},{"section":{"id":"prompt-and-theme","level":"2","number":"11.6","path":"11-7-customization.html#prompt-and-theme","title":"Prompt and Theme"},"subsections":[{"section":{"id":"starship","level":"3","number":"11.6.1","path":"11-7-customization.html#starship","title":"Starship"},"subsections":[]},{"section":{"id":"fzf","level":"3","number":"11.6.2","path":"11-7-customization.html#fzf","title":"FZF"},"subsections":[]},{"section":{"id":"catppuccin-mocha-syntax-highlighting","level":"3","number":"11.6.3","path":"11-7-customization.html#catppuccin-mocha-syntax-highlighting","title":"Catppuccin Mocha Syntax Highlighting"},"subsections":[]}]}]},{"section":{"id":"8-fisher-plugins","level":"1","number":"12","path":"12-8-fisher-plugins.html","title":"8. FISHER PLUGINS"},"subsections":[{"section":{"id":"fisher-managed-plugins","level":"2","number":"12.1","path":"12-8-fisher-plugins.html#fisher-managed-plugins","title":"Fisher-Managed Plugins"},"subsections":[]},{"section":{"id":"sponge-history-filtering","level":"2","number":"12.2","path":"12-8-fisher-plugins.html#sponge-history-filtering","title":"Sponge History Filtering"},"subsections":[]},{"section":{"id":"bundled-plugin-functionality","level":"2","number":"12.3","path":"12-8-fisher-plugins.html#bundled-plugin-functionality","title":"Bundled Plugin Functionality"},"subsections":[]},{"section":{"id":"fish_plugins-manifest","level":"2","number":"12.4","path":"12-8-fisher-plugins.html#fish_plugins-manifest","title":"fish_plugins Manifest"},"subsections":[]}]},{"section":{"id":"9-installation","level":"1","number":"13","path":"13-9-installation.html","title":"9. INSTALLATION"},"subsections":[{"section":{"id":"return-sentinel","level":"2","number":"13.1","path":"13-9-installation.html#return-sentinel","title":"Return Sentinel"},"subsections":[]},{"section":{"id":"updating","level":"2","number":"13.2","path":"13-9-installation.html#updating","title":"Updating"},"subsections":[]}]},{"section":{"id":"10-personalization","level":"1","number":"14","path":"14-10-personalization.html","title":"10. PERSONALIZATION"},"subsections":[{"section":{"id":"secretsfish","level":"2","number":"14.1","path":"14-10-personalization.html#secretsfish","title":"secrets.fish"},"subsections":[]},{"section":{"id":"localfish","level":"2","number":"14.2","path":"14-10-personalization.html#localfish","title":"local.fish"},"subsections":[]}]},{"section":{"id":"11-viewing-this-manual","level":"1","number":"15","path":"15-11-viewing-this-manual.html","title":"11. VIEWING THIS MANUAL"},"subsections":[{"section":{"id":"with-ov-recommended","level":"2","number":"15.1","path":"15-11-viewing-this-manual.html#with-ov-recommended","title":"With ov (recommended)"},"subsections":[]},{"section":{"id":"with-bat","level":"2","number":"15.2","path":"15-11-viewing-this-manual.html#with-bat","title":"With bat"},"subsections":[]},{"section":{"id":"as-a-man-page","level":"2","number":"15.3","path":"15-11-viewing-this-manual.html#as-a-man-page","title":"As a man page"},"subsections":[]},{"section":{"id":"in-the-browser-html","level":"2","number":"15.4","path":"15-11-viewing-this-manual.html#in-the-browser-html","title":"In the browser (HTML)"},"subsections":[]},{"section":{"id":"as-a-wiki","level":"2","number":"15.5","path":"15-11-viewing-this-manual.html#as-a-wiki","title":"As a wiki"},"subsections":[]},{"section":{"id":"jumping-to-a-section","level":"2","number":"15.6","path":"15-11-viewing-this-manual.html#jumping-to-a-section","title":"Jumping to a section"},"subsections":[]}]}]} \ No newline at end of file +{"section":{"id":"","level":"0","number":null,"path":"index.html","title":"FISH-CONFIG"},"subsections":[{"section":{"id":"name","level":"1","number":"1","path":"1-name.html","title":"NAME"},"subsections":[]},{"section":{"id":"synopsis","level":"1","number":"2","path":"2-synopsis.html","title":"SYNOPSIS"},"subsections":[]},{"section":{"id":"description","level":"1","number":"3","path":"3-description.html","title":"DESCRIPTION"},"subsections":[]},{"section":{"id":"table-of-contents","level":"1","number":"4","path":"4-table-of-contents.html","title":"TABLE OF CONTENTS"},"subsections":[]},{"section":{"id":"1-configuration-variables","level":"1","number":"5","path":"5-1-configuration-variables.html","title":"1. CONFIGURATION VARIABLES"},"subsections":[{"section":{"id":"environment-directories-xdg","level":"2","number":"5.1","path":"5-1-configuration-variables.html#environment-directories-xdg","title":"Environment Directories (XDG)"},"subsections":[]},{"section":{"id":"tool-homes-xdg-compliant","level":"2","number":"5.2","path":"5-1-configuration-variables.html#tool-homes-xdg-compliant","title":"Tool Homes (XDG-compliant)"},"subsections":[]},{"section":{"id":"editor-and-pager","level":"2","number":"5.3","path":"5-1-configuration-variables.html#editor-and-pager","title":"Editor and Pager"},"subsections":[]},{"section":{"id":"scrollback-history","level":"2","number":"5.4","path":"5-1-configuration-variables.html#scrollback-history","title":"Scrollback History"},"subsections":[]},{"section":{"id":"other","level":"2","number":"5.5","path":"5-1-configuration-variables.html#other","title":"Other"},"subsections":[]},{"section":{"id":"pager-hierarchy","level":"2","number":"5.6","path":"5-1-configuration-variables.html#pager-hierarchy","title":"Pager Hierarchy"},"subsections":[]},{"section":{"id":"integrations","level":"2","number":"5.7","path":"5-1-configuration-variables.html#integrations","title":"Integrations"},"subsections":[{"section":{"id":"zoxide","level":"3","number":"5.7.1","path":"5-1-configuration-variables.html#zoxide","title":"Zoxide"},"subsections":[]},{"section":{"id":"direnv","level":"3","number":"5.7.2","path":"5-1-configuration-variables.html#direnv","title":"DirEnv"},"subsections":[]},{"section":{"id":"auto-python-venv","level":"3","number":"5.7.3","path":"5-1-configuration-variables.html#auto-python-venv","title":"Auto Python Venv"},"subsections":[]},{"section":{"id":"wakatime","level":"3","number":"5.7.4","path":"5-1-configuration-variables.html#wakatime","title":"WakaTime"},"subsections":[]},{"section":{"id":"tailscale","level":"3","number":"5.7.5","path":"5-1-configuration-variables.html#tailscale","title":"Tailscale"},"subsections":[]},{"section":{"id":"done-notifications","level":"3","number":"5.7.6","path":"5-1-configuration-variables.html#done-notifications","title":"Done Notifications"},"subsections":[]},{"section":{"id":"scrollback-history-1","level":"3","number":"5.7.7","path":"5-1-configuration-variables.html#scrollback-history-1","title":"Scrollback History"},"subsections":[]}]}]},{"section":{"id":"2-path-setup","level":"1","number":"6","path":"6-2-path-setup.html","title":"2. PATH SETUP"},"subsections":[]},{"section":{"id":"3-key-bindings","level":"1","number":"7","path":"7-3-key-bindings.html","title":"3. KEY BINDINGS"},"subsections":[{"section":{"id":"fzf-bindings-bundled-from-patrickf1fzffish","level":"2","number":"7.1","path":"7-3-key-bindings.html#fzf-bindings-bundled-from-patrickf1fzffish","title":"FZF Bindings (bundled from PatrickF1/fzf.fish)"},"subsections":[]}]},{"section":{"id":"4-abbreviations","level":"1","number":"8","path":"8-4-abbreviations.html","title":"4. ABBREVIATIONS"},"subsections":[{"section":{"id":"41-editors","level":"2","number":"8.1","path":"8-4-abbreviations.html#41-editors","title":"4.1 Editors"},"subsections":[]},{"section":{"id":"42-navigation-and-listing","level":"2","number":"8.2","path":"8-4-abbreviations.html#42-navigation-and-listing","title":"4.2 Navigation and Listing"},"subsections":[]},{"section":{"id":"43-git","level":"2","number":"8.3","path":"8-4-abbreviations.html#43-git","title":"4.3 Git"},"subsections":[]},{"section":{"id":"44-terminal-windows-tabs-and-panes","level":"2","number":"8.4","path":"8-4-abbreviations.html#44-terminal-windows-tabs-and-panes","title":"4.4 Terminal Windows, Tabs, and Panes"},"subsections":[]},{"section":{"id":"45-chezmoi","level":"2","number":"8.5","path":"8-4-abbreviations.html#45-chezmoi","title":"4.5 Chezmoi"},"subsections":[]},{"section":{"id":"46-docker","level":"2","number":"8.6","path":"8-4-abbreviations.html#46-docker","title":"4.6 Docker"},"subsections":[]},{"section":{"id":"47-systemctl","level":"2","number":"8.7","path":"8-4-abbreviations.html#47-systemctl","title":"4.7 Systemctl"},"subsections":[]},{"section":{"id":"48-ai-assistants","level":"2","number":"8.8","path":"8-4-abbreviations.html#48-ai-assistants","title":"4.8 AI Assistants"},"subsections":[]},{"section":{"id":"49-history-expansion","level":"2","number":"8.9","path":"8-4-abbreviations.html#49-history-expansion","title":"4.9 History Expansion"},"subsections":[]},{"section":{"id":"410-miscellaneous","level":"2","number":"8.10","path":"8-4-abbreviations.html#410-miscellaneous","title":"4.10 Miscellaneous"},"subsections":[]},{"section":{"id":"411-shell-aliases","level":"2","number":"8.11","path":"8-4-abbreviations.html#411-shell-aliases","title":"4.11 Shell Aliases"},"subsections":[{"section":{"id":"navigation","level":"3","number":"8.11.1","path":"8-4-abbreviations.html#navigation","title":"Navigation"},"subsections":[]},{"section":{"id":"color-overrides","level":"3","number":"8.11.2","path":"8-4-abbreviations.html#color-overrides","title":"Color Overrides"},"subsections":[]},{"section":{"id":"safety-wrappers","level":"3","number":"8.11.3","path":"8-4-abbreviations.html#safety-wrappers","title":"Safety Wrappers"},"subsections":[]},{"section":{"id":"archives-and-networking","level":"3","number":"8.11.4","path":"8-4-abbreviations.html#archives-and-networking","title":"Archives and Networking"},"subsections":[]},{"section":{"id":"system-logs","level":"3","number":"8.11.5","path":"8-4-abbreviations.html#system-logs","title":"System Logs"},"subsections":[]}]}]},{"section":{"id":"5-functions-reference","level":"1","number":"9","path":"9-5-functions-reference.html","title":"5. FUNCTIONS REFERENCE"},"subsections":[{"section":{"id":"51-file-and-directory","level":"2","number":"9.1","path":"9-5-functions-reference.html#51-file-and-directory","title":"5.1 File and Directory"},"subsections":[{"section":{"id":"cat","level":"3","number":"9.1.1","path":"9-5-functions-reference.html#cat","title":"cat"},"subsections":[]},{"section":{"id":"copy","level":"3","number":"9.1.2","path":"9-5-functions-reference.html#copy","title":"copy"},"subsections":[]},{"section":{"id":"du","level":"3","number":"9.1.3","path":"9-5-functions-reference.html#du","title":"du"},"subsections":[]},{"section":{"id":"dusize","level":"3","number":"9.1.4","path":"9-5-functions-reference.html#dusize","title":"dusize"},"subsections":[]},{"section":{"id":"ld","level":"3","number":"9.1.5","path":"9-5-functions-reference.html#ld","title":"lD"},"subsections":[]},{"section":{"id":"ls","level":"3","number":"9.1.6","path":"9-5-functions-reference.html#ls","title":"ls"},"subsections":[]},{"section":{"id":"lsr","level":"3","number":"9.1.7","path":"9-5-functions-reference.html#lsr","title":"lsr"},"subsections":[]},{"section":{"id":"lss","level":"3","number":"9.1.8","path":"9-5-functions-reference.html#lss","title":"lss"},"subsections":[]},{"section":{"id":"lstree","level":"3","number":"9.1.9","path":"9-5-functions-reference.html#lstree","title":"lstree"},"subsections":[]},{"section":{"id":"lt","level":"3","number":"9.1.10","path":"9-5-functions-reference.html#lt","title":"lt"},"subsections":[]},{"section":{"id":"ltr","level":"3","number":"9.1.11","path":"9-5-functions-reference.html#ltr","title":"ltr"},"subsections":[]},{"section":{"id":"lx","level":"3","number":"9.1.12","path":"9-5-functions-reference.html#lx","title":"lx"},"subsections":[]},{"section":{"id":"mkdir","level":"3","number":"9.1.13","path":"9-5-functions-reference.html#mkdir","title":"mkdir"},"subsections":[]},{"section":{"id":"mkcd","level":"3","number":"9.1.14","path":"9-5-functions-reference.html#mkcd","title":"mkcd"},"subsections":[]},{"section":{"id":"poke","level":"3","number":"9.1.15","path":"9-5-functions-reference.html#poke","title":"poke"},"subsections":[]},{"section":{"id":"rm","level":"3","number":"9.1.16","path":"9-5-functions-reference.html#rm","title":"rm"},"subsections":[]},{"section":{"id":"rg","level":"3","number":"9.1.17","path":"9-5-functions-reference.html#rg","title":"rg"},"subsections":[]},{"section":{"id":"scrub","level":"3","number":"9.1.18","path":"9-5-functions-reference.html#scrub","title":"scrub"},"subsections":[]}]},{"section":{"id":"52-navigation","level":"2","number":"9.2","path":"9-5-functions-reference.html#52-navigation","title":"5.2 Navigation"},"subsections":[{"section":{"id":"cdi","level":"3","number":"9.2.1","path":"9-5-functions-reference.html#cdi","title":"cdi"},"subsections":[]},{"section":{"id":"clone","level":"3","number":"9.2.2","path":"9-5-functions-reference.html#clone","title":"clone"},"subsections":[]},{"section":{"id":"clonet","level":"3","number":"9.2.3","path":"9-5-functions-reference.html#clonet","title":"clonet"},"subsections":[]}]},{"section":{"id":"53-editors-and-viewers","level":"2","number":"9.3","path":"9-5-functions-reference.html#53-editors-and-viewers","title":"5.3 Editors and Viewers"},"subsections":[{"section":{"id":"edit","level":"3","number":"9.3.1","path":"9-5-functions-reference.html#edit","title":"edit"},"subsections":[]},{"section":{"id":"fc","level":"3","number":"9.3.2","path":"9-5-functions-reference.html#fc","title":"fc"},"subsections":[]},{"section":{"id":"less","level":"3","number":"9.3.3","path":"9-5-functions-reference.html#less","title":"less"},"subsections":[]},{"section":{"id":"rawfish","level":"3","number":"9.3.4","path":"9-5-functions-reference.html#rawfish","title":"rawfish"},"subsections":[]},{"section":{"id":"view","level":"3","number":"9.3.5","path":"9-5-functions-reference.html#view","title":"view"},"subsections":[]}]},{"section":{"id":"54-git-and-version-control","level":"2","number":"9.4","path":"9-5-functions-reference.html#54-git-and-version-control","title":"5.4 Git and Version Control"},"subsections":[{"section":{"id":"branch","level":"3","number":"9.4.1","path":"9-5-functions-reference.html#branch","title":"branch"},"subsections":[]},{"section":{"id":"gi","level":"3","number":"9.4.2","path":"9-5-functions-reference.html#gi","title":"gi"},"subsections":[]},{"section":{"id":"git-clean","level":"3","number":"9.4.3","path":"9-5-functions-reference.html#git-clean","title":"git-clean"},"subsections":[]},{"section":{"id":"gitup","level":"3","number":"9.4.4","path":"9-5-functions-reference.html#gitup","title":"gitup"},"subsections":[]},{"section":{"id":"gitui","level":"3","number":"9.4.5","path":"9-5-functions-reference.html#gitui","title":"gitui"},"subsections":[]},{"section":{"id":"hist","level":"3","number":"9.4.6","path":"9-5-functions-reference.html#hist","title":"hist"},"subsections":[]}]},{"section":{"id":"55-package-management","level":"2","number":"9.5","path":"9-5-functions-reference.html#55-package-management","title":"5.5 Package Management"},"subsections":[{"section":{"id":"pkg","level":"3","number":"9.5.1","path":"9-5-functions-reference.html#pkg","title":"pkg"},"subsections":[]},{"section":{"id":"search","level":"3","number":"9.5.2","path":"9-5-functions-reference.html#search","title":"search"},"subsections":[]},{"section":{"id":"upgrade","level":"3","number":"9.5.3","path":"9-5-functions-reference.html#upgrade","title":"upgrade"},"subsections":[]},{"section":{"id":"cleanup","level":"3","number":"9.5.4","path":"9-5-functions-reference.html#cleanup","title":"cleanup"},"subsections":[]},{"section":{"id":"parur","level":"3","number":"9.5.5","path":"9-5-functions-reference.html#parur","title":"parur"},"subsections":[]}]},{"section":{"id":"56-dependency-management","level":"2","number":"9.6","path":"9-5-functions-reference.html#56-dependency-management","title":"5.6 Dependency Management"},"subsections":[{"section":{"id":"fish-deps","level":"3","number":"9.6.1","path":"9-5-functions-reference.html#fish-deps","title":"fish-deps"},"subsections":[]},{"section":{"id":"check_fish_deps","level":"3","number":"9.6.2","path":"9-5-functions-reference.html#check_fish_deps","title":"check_fish_deps"},"subsections":[]}]},{"section":{"id":"57-system-and-monitoring","level":"2","number":"9.7","path":"9-5-functions-reference.html#57-system-and-monitoring","title":"5.7 System and Monitoring"},"subsections":[{"section":{"id":"top","level":"3","number":"9.7.1","path":"9-5-functions-reference.html#top","title":"top"},"subsections":[]},{"section":{"id":"swapstat","level":"3","number":"9.7.2","path":"9-5-functions-reference.html#swapstat","title":"swapstat"},"subsections":[]},{"section":{"id":"sbver","level":"3","number":"9.7.3","path":"9-5-functions-reference.html#sbver","title":"sbver"},"subsections":[]},{"section":{"id":"ports","level":"3","number":"9.7.4","path":"9-5-functions-reference.html#ports","title":"ports"},"subsections":[]},{"section":{"id":"screensleep","level":"3","number":"9.7.5","path":"9-5-functions-reference.html#screensleep","title":"screensleep"},"subsections":[]},{"section":{"id":"lock","level":"3","number":"9.7.6","path":"9-5-functions-reference.html#lock","title":"lock"},"subsections":[]},{"section":{"id":"sudo-toggle","level":"3","number":"9.7.7","path":"9-5-functions-reference.html#sudo-toggle","title":"sudo-toggle"},"subsections":[]},{"section":{"id":"limine-edit","level":"3","number":"9.7.8","path":"9-5-functions-reference.html#limine-edit","title":"limine-edit"},"subsections":[]}]},{"section":{"id":"58-terminal-management","level":"2","number":"9.8","path":"9-5-functions-reference.html#58-terminal-management","title":"5.8 Terminal Management"},"subsections":[{"section":{"id":"tab","level":"3","number":"9.8.1","path":"9-5-functions-reference.html#tab","title":"tab"},"subsections":[]},{"section":{"id":"split","level":"3","number":"9.8.2","path":"9-5-functions-reference.html#split","title":"split"},"subsections":[]},{"section":{"id":"spwin","level":"3","number":"9.8.3","path":"9-5-functions-reference.html#spwin","title":"spwin"},"subsections":[]},{"section":{"id":"detach","level":"3","number":"9.8.4","path":"9-5-functions-reference.html#detach","title":"detach"},"subsections":[]},{"section":{"id":"bkg","level":"3","number":"9.8.5","path":"9-5-functions-reference.html#bkg","title":"bkg"},"subsections":[]},{"section":{"id":"ssh","level":"3","number":"9.8.6","path":"9-5-functions-reference.html#ssh","title":"ssh"},"subsections":[]}]},{"section":{"id":"59-clipboard","level":"2","number":"9.9","path":"9-5-functions-reference.html#59-clipboard","title":"5.9 Clipboard"},"subsections":[{"section":{"id":"y","level":"3","number":"9.9.1","path":"9-5-functions-reference.html#y","title":"y"},"subsections":[]},{"section":{"id":"p","level":"3","number":"9.9.2","path":"9-5-functions-reference.html#p","title":"p"},"subsections":[]},{"section":{"id":"paste","level":"3","number":"9.9.3","path":"9-5-functions-reference.html#paste","title":"paste"},"subsections":[]}]},{"section":{"id":"510-network","level":"2","number":"9.10","path":"9-5-functions-reference.html#510-network","title":"5.10 Network"},"subsections":[{"section":{"id":"gip","level":"3","number":"9.10.1","path":"9-5-functions-reference.html#gip","title":"gip"},"subsections":[]},{"section":{"id":"gip4","level":"3","number":"9.10.2","path":"9-5-functions-reference.html#gip4","title":"gip4"},"subsections":[]},{"section":{"id":"gip6","level":"3","number":"9.10.3","path":"9-5-functions-reference.html#gip6","title":"gip6"},"subsections":[]},{"section":{"id":"ping","level":"3","number":"9.10.4","path":"9-5-functions-reference.html#ping","title":"ping"},"subsections":[]},{"section":{"id":"qr","level":"3","number":"9.10.5","path":"9-5-functions-reference.html#qr","title":"qr"},"subsections":[]}]},{"section":{"id":"511-pager-and-logging","level":"2","number":"9.11","path":"9-5-functions-reference.html#511-pager-and-logging","title":"5.11 Pager and Logging"},"subsections":[{"section":{"id":"logs","level":"3","number":"9.11.1","path":"9-5-functions-reference.html#logs","title":"logs"},"subsections":[]},{"section":{"id":"smart_exit","level":"3","number":"9.11.2","path":"9-5-functions-reference.html#smart_exit","title":"smart_exit"},"subsections":[]}]},{"section":{"id":"512-ai-and-developer-tools","level":"2","number":"9.12","path":"9-5-functions-reference.html#512-ai-and-developer-tools","title":"5.12 AI and Developer Tools"},"subsections":[{"section":{"id":"antigravity","level":"3","number":"9.12.1","path":"9-5-functions-reference.html#antigravity","title":"antigravity"},"subsections":[]},{"section":{"id":"antigravity-ide","level":"3","number":"9.12.2","path":"9-5-functions-reference.html#antigravity-ide","title":"antigravity-ide"},"subsections":[]},{"section":{"id":"antigravity-resume","level":"3","number":"9.12.3","path":"9-5-functions-reference.html#antigravity-resume","title":"antigravity-resume"},"subsections":[]},{"section":{"id":"claude-resume","level":"3","number":"9.12.4","path":"9-5-functions-reference.html#claude-resume","title":"claude-resume"},"subsections":[]},{"section":{"id":"claude-docs","level":"3","number":"9.12.5","path":"9-5-functions-reference.html#claude-docs","title":"claude-docs"},"subsections":[]},{"section":{"id":"claude-pr","level":"3","number":"9.12.6","path":"9-5-functions-reference.html#claude-pr","title":"claude-pr"},"subsections":[]},{"section":{"id":"code-resume","level":"3","number":"9.12.7","path":"9-5-functions-reference.html#code-resume","title":"code-resume"},"subsections":[]},{"section":{"id":"superpowers","level":"3","number":"9.12.8","path":"9-5-functions-reference.html#superpowers","title":"superpowers"},"subsections":[]}]},{"section":{"id":"513-media-and-utilities","level":"2","number":"9.13","path":"9-5-functions-reference.html#513-media-and-utilities","title":"5.13 Media and Utilities"},"subsections":[{"section":{"id":"dng2avif","level":"3","number":"9.13.1","path":"9-5-functions-reference.html#dng2avif","title":"dng2avif"},"subsections":[]},{"section":{"id":"steam-dl","level":"3","number":"9.13.2","path":"9-5-functions-reference.html#steam-dl","title":"steam-dl"},"subsections":[]},{"section":{"id":"spark","level":"3","number":"9.13.3","path":"9-5-functions-reference.html#spark","title":"spark"},"subsections":[]}]},{"section":{"id":"514-miscellaneous","level":"2","number":"9.14","path":"9-5-functions-reference.html#514-miscellaneous","title":"5.14 Miscellaneous"},"subsections":[{"section":{"id":"config-help","level":"3","number":"9.14.1","path":"9-5-functions-reference.html#config-help","title":"config-help"},"subsections":[]},{"section":{"id":"config-update","level":"3","number":"9.14.2","path":"9-5-functions-reference.html#config-update","title":"config-update"},"subsections":[]},{"section":{"id":"bash","level":"3","number":"9.14.3","path":"9-5-functions-reference.html#bash","title":"bash"},"subsections":[]},{"section":{"id":"bd-pull","level":"3","number":"9.14.4","path":"9-5-functions-reference.html#bd-pull","title":"bd-pull"},"subsections":[]},{"section":{"id":"cheat","level":"3","number":"9.14.5","path":"9-5-functions-reference.html#cheat","title":"cheat"},"subsections":[]},{"section":{"id":"cffetch--ffetch","level":"3","number":"9.14.6","path":"9-5-functions-reference.html#cffetch--ffetch","title":"cffetch / ffetch"},"subsections":[]},{"section":{"id":"dockup","level":"3","number":"9.14.7","path":"9-5-functions-reference.html#dockup","title":"dockup"},"subsections":[]},{"section":{"id":"joplin","level":"3","number":"9.14.8","path":"9-5-functions-reference.html#joplin","title":"joplin"},"subsections":[]},{"section":{"id":"ld-1","level":"3","number":"9.14.9","path":"9-5-functions-reference.html#ld-1","title":"ld"},"subsections":[]},{"section":{"id":"replay","level":"3","number":"9.14.10","path":"9-5-functions-reference.html#replay","title":"replay"},"subsections":[]},{"section":{"id":"tmux-clean","level":"3","number":"9.14.11","path":"9-5-functions-reference.html#tmux-clean","title":"tmux-clean"},"subsections":[]},{"section":{"id":"wake-lock","level":"3","number":"9.14.12","path":"9-5-functions-reference.html#wake-lock","title":"wake-lock"},"subsections":[]},{"section":{"id":"zellij","level":"3","number":"9.14.13","path":"9-5-functions-reference.html#zellij","title":"zellij"},"subsections":[]}]}]},{"section":{"id":"6-dependency-catalog","level":"1","number":"10","path":"10-6-dependency-catalog.html","title":"6. DEPENDENCY CATALOG"},"subsections":[{"section":{"id":"required","level":"2","number":"10.1","path":"10-6-dependency-catalog.html#required","title":"Required"},"subsections":[]},{"section":{"id":"integrations-1","level":"2","number":"10.2","path":"10-6-dependency-catalog.html#integrations-1","title":"Integrations"},"subsections":[]},{"section":{"id":"recommended","level":"2","number":"10.3","path":"10-6-dependency-catalog.html#recommended","title":"Recommended"},"subsections":[]},{"section":{"id":"install-methods","level":"2","number":"10.4","path":"10-6-dependency-catalog.html#install-methods","title":"Install Methods"},"subsections":[]}]},{"section":{"id":"7-customization","level":"1","number":"11","path":"11-7-customization.html","title":"7. CUSTOMIZATION"},"subsections":[{"section":{"id":"machine-local-configuration","level":"2","number":"11.1","path":"11-7-customization.html#machine-local-configuration","title":"Machine-local Configuration"},"subsections":[]},{"section":{"id":"secrets-and-api-keys","level":"2","number":"11.2","path":"11-7-customization.html#secrets-and-api-keys","title":"Secrets and API Keys"},"subsections":[]},{"section":{"id":"overriding-configuration-variables","level":"2","number":"11.3","path":"11-7-customization.html#overriding-configuration-variables","title":"Overriding Configuration Variables"},"subsections":[]},{"section":{"id":"fish-universal-variables","level":"2","number":"11.4","path":"11-7-customization.html#fish-universal-variables","title":"Fish Universal Variables"},"subsections":[]},{"section":{"id":"opinionated-components-minimal-mode","level":"2","number":"11.5","path":"11-7-customization.html#opinionated-components-minimal-mode","title":"Opinionated Components (Minimal Mode)"},"subsections":[{"section":{"id":"component-reference","level":"3","number":"11.5.1","path":"11-7-customization.html#component-reference","title":"Component Reference"},"subsections":[{"section":{"id":"c1--command-shadows","level":"4","number":"11.5.1.1","path":"11-7-customization.html#c1--command-shadows","title":"C1 — Command Shadows"},"subsections":[]},{"section":{"id":"c2--startup-side-effects","level":"4","number":"11.5.1.2","path":"11-7-customization.html#c2--startup-side-effects","title":"C2 — Startup Side-Effects"},"subsections":[]},{"section":{"id":"c3--key-and-environment-overrides","level":"4","number":"11.5.1.3","path":"11-7-customization.html#c3--key-and-environment-overrides","title":"C3 — Key and Environment Overrides"},"subsections":[]},{"section":{"id":"c4--terminal-and-tool-integration","level":"4","number":"11.5.1.4","path":"11-7-customization.html#c4--terminal-and-tool-integration","title":"C4 — Terminal and Tool Integration"},"subsections":[]},{"section":{"id":"c5--logging-and-capture","level":"4","number":"11.5.1.5","path":"11-7-customization.html#c5--logging-and-capture","title":"C5 — Logging and Capture"},"subsections":[]},{"section":{"id":"c6--greeting-and-first-run-ui","level":"4","number":"11.5.1.6","path":"11-7-customization.html#c6--greeting-and-first-run-ui","title":"C6 — Greeting and First-Run UI"},"subsections":[]}]}]},{"section":{"id":"prompt-and-theme","level":"2","number":"11.6","path":"11-7-customization.html#prompt-and-theme","title":"Prompt and Theme"},"subsections":[{"section":{"id":"starship","level":"3","number":"11.6.1","path":"11-7-customization.html#starship","title":"Starship"},"subsections":[]},{"section":{"id":"fzf","level":"3","number":"11.6.2","path":"11-7-customization.html#fzf","title":"FZF"},"subsections":[]},{"section":{"id":"catppuccin-mocha-syntax-highlighting","level":"3","number":"11.6.3","path":"11-7-customization.html#catppuccin-mocha-syntax-highlighting","title":"Catppuccin Mocha Syntax Highlighting"},"subsections":[]}]}]},{"section":{"id":"8-fisher-plugins","level":"1","number":"12","path":"12-8-fisher-plugins.html","title":"8. FISHER PLUGINS"},"subsections":[{"section":{"id":"fisher-managed-plugins","level":"2","number":"12.1","path":"12-8-fisher-plugins.html#fisher-managed-plugins","title":"Fisher-Managed Plugins"},"subsections":[]},{"section":{"id":"sponge-history-filtering","level":"2","number":"12.2","path":"12-8-fisher-plugins.html#sponge-history-filtering","title":"Sponge History Filtering"},"subsections":[]},{"section":{"id":"bundled-plugin-functionality","level":"2","number":"12.3","path":"12-8-fisher-plugins.html#bundled-plugin-functionality","title":"Bundled Plugin Functionality"},"subsections":[]},{"section":{"id":"fish_plugins-manifest","level":"2","number":"12.4","path":"12-8-fisher-plugins.html#fish_plugins-manifest","title":"fish_plugins Manifest"},"subsections":[]}]},{"section":{"id":"9-installation","level":"1","number":"13","path":"13-9-installation.html","title":"9. INSTALLATION"},"subsections":[{"section":{"id":"return-sentinel","level":"2","number":"13.1","path":"13-9-installation.html#return-sentinel","title":"Return Sentinel"},"subsections":[]},{"section":{"id":"updating","level":"2","number":"13.2","path":"13-9-installation.html#updating","title":"Updating"},"subsections":[]}]},{"section":{"id":"10-personalization","level":"1","number":"14","path":"14-10-personalization.html","title":"10. PERSONALIZATION"},"subsections":[{"section":{"id":"secretsfish","level":"2","number":"14.1","path":"14-10-personalization.html#secretsfish","title":"secrets.fish"},"subsections":[]},{"section":{"id":"localfish","level":"2","number":"14.2","path":"14-10-personalization.html#localfish","title":"local.fish"},"subsections":[]}]},{"section":{"id":"11-viewing-this-manual","level":"1","number":"15","path":"15-11-viewing-this-manual.html","title":"11. VIEWING THIS MANUAL"},"subsections":[{"section":{"id":"with-ov-recommended","level":"2","number":"15.1","path":"15-11-viewing-this-manual.html#with-ov-recommended","title":"With ov (recommended)"},"subsections":[]},{"section":{"id":"with-bat","level":"2","number":"15.2","path":"15-11-viewing-this-manual.html#with-bat","title":"With bat"},"subsections":[]},{"section":{"id":"as-a-man-page","level":"2","number":"15.3","path":"15-11-viewing-this-manual.html#as-a-man-page","title":"As a man page"},"subsections":[]},{"section":{"id":"in-the-browser-html","level":"2","number":"15.4","path":"15-11-viewing-this-manual.html#in-the-browser-html","title":"In the browser (HTML)"},"subsections":[]},{"section":{"id":"as-a-wiki","level":"2","number":"15.5","path":"15-11-viewing-this-manual.html#as-a-wiki","title":"As a wiki"},"subsections":[]},{"section":{"id":"jumping-to-a-section","level":"2","number":"15.6","path":"15-11-viewing-this-manual.html#jumping-to-a-section","title":"Jumping to a section"},"subsections":[]}]}]} \ No newline at end of file diff --git a/docs/wiki/5-functions-reference.md b/docs/wiki/5-functions-reference.md index 4b6cfcc..4f3f3f2 100644 --- a/docs/wiki/5-functions-reference.md +++ b/docs/wiki/5-functions-reference.md @@ -135,6 +135,17 @@ rm -e # empty trash rm -S sensitive.pem # permanent delete +### rg + + 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 "fish_greeting" ~/.config/fish/ + rg -l "TODO" ~/projects/myapp + ### scrub Synopsis: scrub [-a] [-d] [-h] diff --git a/docs/wiki/7-customization.md b/docs/wiki/7-customization.md index 25afc6b..453b0d8 100644 --- a/docs/wiki/7-customization.md +++ b/docs/wiki/7-customization.md @@ -112,6 +112,172 @@ Notes: - On CachyOS, the distro fish config's own aliases, history override, and bang-bang bindings are stripped per category as well. +### Component 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. + +#### C1 — Command Shadows + +Disabling __fish_config_op_aliases restores standard system behavior for +all of these commands. + + 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 "help config" → config-help fish builtin help + +When C1 is disabled, `rm` uses bare `command rm` with no wrapper — files +are permanently deleted, not trashed. There is no intermediate safety net. + +#### C2 — Startup Side-Effects + +These run automatically without any user action. Disabling +__fish_config_op_autoexec prevents all of them. + + 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 ~/.local/bin/paru wrapper + yay wrapper Every startup Writes ~/.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 + +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. + +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. + +#### C3 — Key and Environment Overrides + +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. + + 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=. ~/projects ~ bare dir names resolve against ~/projects and ~ + Bang-bang system ! and $ keys expand history; !^, !*, !-N, !?str?, + ^old^new abbreviations; six expand_bang_* helpers + Autopair ( [ { " ' auto-close to (), [], {}, "", '' + 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 + +The bang-bang system spans key_bindings.fish, abbr.fish, puffer.fish, and +six expand_bang_*.fish functions. All are gated together — disabling C3 +removes the entire bang-expansion system at once. + +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). + +#### C4 — Terminal and Tool Integration + +These features couple the shell to specific external tools. Disabling +__fish_config_op_integrations disables all of them. + + Component Requires + ─────────────────────────────────────────────────────────────────────────── + ~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 ~/.terminal_history/ + upgrade paru or yay (Arch Linux only) + WakaTime hook wakatime CLI and a configured API key + +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. + +#### C5 — Logging and Capture + +Three components capture shell output to disk. Disabling +__fish_config_op_logging skips all capture and removes the logging wrappers. + + Component What it captures + ─────────────────────────────────────────────────────────────────────────── + Scrollback capture Terminal session output saved to: + ~/.terminal_history/scrollback_YYYY-MM-DD_HH-MM-SS.log + paru wrapper All paru/AUR output teed to: + ~/.terminal_history/paru_YYYY-MM-DD_HH-MM-SS.log + yay wrapper All yay/AUR output teed to: + ~/.terminal_history/yay_YYYY-MM-DD_HH-MM-SS.log + Kitty watcher watcher.py captures scrollback when Kitty closes + +Logging coordination via sentinel file + +C5 uses a sentinel file to synchronize state between the shell and +out-of-process components (the Kitty watcher and all running shells): + + ~/.config/fish/.logging_disabled + +Disabling __fish_config_op_logging: + 1. Creates the sentinel immediately in every open shell. + 2. Removes ~/.local/bin/paru and ~/.local/bin/yay logging wrappers; + bare /usr/bin/paru and /usr/bin/yay are used instead. + 3. Kitty's watcher.py reads the sentinel on each save attempt and + skips capture — no Kitty restart required. + 4. smart_exit stops saving scrollback logs. + +Re-enabling __fish_config_op_logging: + 1. Removes the sentinel in every open shell. + 2. Regenerates paru/yay logging wrappers in ~/.local/bin/. + 3. Kitty watcher resumes capture on the next session exit. + +Changes propagate to all running shells through an event handler that fires +whenever __fish_config_op_logging changes — no shell restart needed. + +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. + +#### C6 — Greeting and First-Run UI + + 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) + +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. + ## Prompt and Theme ### Starship