Files
fish-config/docs/manual/index.md
T
rootiest f62404c692 docs: fix formatting and links in troubleshooting
Converted plain text references to Markdown links across the troubleshooting documentation and index.md. Converted commands to properly formatted inline code blocks, and ensured code blocks conform to the SSOT's indented-block requirements.
2026-07-27 16:01:14 -04:00

4.1 KiB

title, description, manTitle, sidebar, helpKeywords
title description manTitle sidebar helpKeywords
Fish Shell Configuration Reference manual for the rootiest fish configuration. DESCRIPTION
order
3
description
autopair
puffer
puffer-fish
logging-events

A production-grade Fish shell configuration targeting Fish 4.x. It provides:

  • Drop-in replacements for common Unix tools (ls, cat, rm, du, ping, less)
  • Deep Kitty and WezTerm terminal integration: tab/window/pane management from the command line
  • Automatic session logging: terminal scrollback, tmux/zellij panes, and paru/yay output captured to ~/.terminal_history (on by default; see below)
  • Automatic Python virtualenv activation on directory change
  • Cross-platform package management via pkg and fish-deps
  • AI session helpers for Claude Code and Antigravity
  • Catppuccin Mocha color theme throughout

Install now Function reference

CAUTION: SESSION LOGGING IS ON BY DEFAULT This configuration silently records terminal output to ~/.terminal_history: Kitty scrollback on window close, live tmux pane streams, zellij pane snapshots on exit, and full paru/yay output. These logs can contain command output, file contents, and secrets printed to the terminal. Nothing leaves your machine, but the files persist locally.

  • Disable all logging with: set -U __fish_config_op_logging off
  • Prefer a menu? Run the interactive picker: config-settings
  • See C5 — Logging and Capture for the full breakdown.

The configuration uses a structured file tree:

~/.config/fish/
├── config.fish                 Main entry point; sets env vars and PATH
├── conf.d/
│   ├── abbr.fish               All abbreviations
│   ├── autopair.fish           Auto-pair brackets and quotes
│   ├── cheat.fish              cheat.sh tab completions
│   ├── done.fish               Desktop notifications for long commands
│   ├── first_run.fish          One-time init: Fisher bootstrap, theme
│   ├── key_bindings.fish       Custom key bindings and Vi mode
│   ├── logging-events.fish     C5 event handlers; syncs logging state
│   ├── kitty-watcher-reminder.fish  C5 per-session Kitty watcher reminder
│   ├── paru-wrapper.fish       Auto-generates paru logging wrapper
│   ├── puffer.fish             !! / !$ / ./ expansion
│   ├── tmux-logging.fish       C5 starts tmux pipe-pane capture
│   ├── zellij-logging.fish     C5 fish_exit handler for zellij
│   ├── sponge_privacy.fish     Sponge privacy patterns
│   ├── starship.fish           fish_prompt shell-integration markers
│   ├── tailscale.fish          Tailscale CLI tab completions
│   ├── theme.fish              Catppuccin syntax highlight colors
│   ├── tricks.fish             PATH, bang-bang helpers, bat man pages
│   ├── wakatime.fish           WakaTime shell hook
│   ├── yay-wrapper.fish        Auto-generates yay logging wrapper
│   └── zoxide.fish             Zoxide z/zi integration; overrides cd
├── functions/                  Custom functions, one per file
├── completions/                Tab completion scripts
├── integrations/
│   └── fzf.fish                FZF Catppuccin theme and key bindings
├── scripts/
│   ├── clean_progress_log.py   Strips typescript animations for clean logs
│   └── agents-tools/           AGENTS.md scripts and git hooks
└── docs/                       Offline documentation and man page
    ├── fish-config.md          Primary source manual
    ├── fish-config.1           Compiled man page (auto-generated)
    ├── fish-config.index       Section index for help config
    ├── html/                   Chunked HTML docs (auto-generated)
    └── wiki/                   Markdown wiki (auto-generated)