docs: clarify that plugin functionality is bundled, not managed by fisher

Only jorgebucaran/fisher itself is in fish_plugins. The functionality
from catppuccin/fish, fzf.fish, done, autopair, and puffer-fish is
bundled directly with this config in modified form and must not be
installed or updated via fisher.

Removes sponge (not present), corrects file path mappings for bundled
components, fixes stale "Plugin sync failed" message in first_run.fish,
and expands fish-config.index with missing sections 9–11.
This commit is contained in:
2026-06-08 21:51:27 -04:00
parent d53237f53c
commit 8e7e450a9d
5 changed files with 59 additions and 25 deletions
+2 -2
View File
@@ -22,7 +22,7 @@ This config layers on top of the CachyOS base Fish configuration and adds:
- **Catppuccin Mocha** theming throughout (prompt, FZF, syntax highlighting)
- **Starship** prompt with VI key bindings
- **Fisher** plugin management with FZF key bindings and Catppuccin syntax colors
- **Fisher** plugin manager bootstrapped automatically; plugin functionality (FZF bindings, Catppuccin theme, done notifications, autopair, puffer-fish) bundled directly with the config
- **Smart CLI wrappers** that prefer modern tools (`eza`, `bat`, `btop`, `dust`, `prettyping`) with graceful fallbacks
- **Auto Python venv** activation on directory change (direnv-aware)
- **Kitty terminal** deep integration for splits, tabs, and SSH
@@ -66,7 +66,7 @@ mv ~/.config/fish ~/.config/fish.bak
git clone https://git.rootiest.dev/rootiest/fish-config.git ~/.config/fish
```
Then open a new Fish shell — Fisher and all plugins will be installed automatically on first launch, and the Catppuccin Mocha theme will be applied.
Then open a new Fish shell — Fisher will be installed automatically on first launch and the Catppuccin Mocha theme will be applied. All plugin functionality is bundled directly with this config and requires no additional installation.
A [chezmoi](https://www.chezmoi.io/) dotfile manager is also configured — secrets are sourced from `~/.config/.user-dots/fish/secrets.fish` and excluded from version control.
+1 -1
View File
@@ -35,7 +35,7 @@ if not type -q fisher
if curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source
echo " [first-run] Fisher installed."
if not fisher update 2>/dev/null
echo " [first-run] Plugin sync failed — run 'fisher update' manually." >&2
echo " [first-run] Fisher update failed — run 'fisher update' manually." >&2
end
else
echo " [first-run] Fisher install failed — run 'fisher update' manually." >&2
+19 -5
View File
@@ -29,8 +29,8 @@ keybindings=# 3. KEY BINDINGS
bindings=# 3. KEY BINDINGS
key-bindings=# 3. KEY BINDINGS
keys=# 3. KEY BINDINGS
fzf-bindings=## FZF Bindings (from fzf --fish integration)
fzf=## FZF Bindings (from fzf --fish integration)
fzf-bindings=## FZF Bindings (bundled from PatrickF1/fzf.fish)
fzf=## FZF Bindings (bundled from PatrickF1/fzf.fish)
# ── Section 4: Abbreviations ──────────────────────────────────
abbreviations=# 4. ABBREVIATIONS
@@ -166,10 +166,24 @@ universal=## Fish Universal Variables
# ── Section 8: Fisher Plugins ─────────────────────────────────
plugins=# 8. FISHER PLUGINS
fisher=# 8. FISHER PLUGINS
bundled-plugins=## Bundled Plugin Functionality
fish-plugins-manifest=## fish_plugins Manifest
# ── Section 9: Viewing This Manual ───────────────────────────
viewing=# 9. VIEWING THIS MANUAL
manual=# 9. VIEWING THIS MANUAL
# ── Section 9: Installation ────────────────────────────────────
installation=# 9. INSTALLATION
install=# 9. INSTALLATION
sentinel=## Return Sentinel
updating=## Updating
# ── Section 10: Personalization ───────────────────────────────
personalization=# 10. PERSONALIZATION
personalize=# 10. PERSONALIZATION
secrets=## secrets.fish
local-config=## local.fish
# ── Section 11: Viewing This Manual ──────────────────────────
viewing=# 11. VIEWING THIS MANUAL
manual=# 11. VIEWING THIS MANUAL
ov=## With ov (recommended)
man-page=## As a man page (if compiled)
manpage=## As a man page (if compiled)
+31 -15
View File
@@ -279,7 +279,7 @@ are active in Insert, Normal, and Visual modes unless noted.
line to open an fzf picker and insert a selection
at the cursor position.
## FZF Bindings (from PatrickF1/fzf.fish)
## FZF Bindings (bundled from PatrickF1/fzf.fish)
Ctrl+R Search command history
Ctrl+Alt+F Search git-tracked files
@@ -1395,9 +1395,9 @@ To customize, override FZF_DEFAULT_OPTS in local.fish.
### Catppuccin Mocha Syntax Highlighting
The catppuccin/fish plugin applies syntax highlight colors on first run.
Colors are stored in fish_variables (universal). To switch variants, install
a different theme from the themes/ directory:
The Catppuccin Mocha theme ships with this config in themes/ and is applied
on first run via `conf.d/first_run.fish`. Colors are stored in fish_variables
(universal). To switch variants, install a different theme from themes/:
fish_config theme save "Catppuccin Latte"
@@ -1417,18 +1417,33 @@ testing), run:
Then open a new shell.
The plugin list is maintained in fish_plugins at the config root.
## Bundled Plugin Functionality
Plugin functionality is bundled directly with this config rather than managed
through Fisher. The bundled versions include customizations for Fish 4.x
compatibility and improved behavior that differ from their upstream releases.
Installing them through Fisher would overwrite these customizations.
Bundled components and their upstream origins:
catppuccin/fish → themes/ + conf.d/theme.fish
PatrickF1/fzf.fish → functions/_fzf_*.fish + conf.d/fzf.fish
franciscolourenco/done → conf.d/done.fish
jorgebucaran/autopair.fish → functions/_autopair_*.fish + conf.d/autopair.fish
nickeb96/puffer-fish → functions/_puffer_fish_*.fish + conf.d/puffer.fish
Do not run `fisher install` for these — it will overwrite the customized
versions. To update their behavior, edit the relevant bundled files directly.
## fish_plugins Manifest
The `fish_plugins` file at the config root contains only the Fisher manager
entry itself:
jorgebucaran/fisher Plugin manager itself
catppuccin/fish Catppuccin Mocha color theme
PatrickF1/fzf.fish fzf integration for Fish
franciscolourenco/done Desktop notification when long commands finish
jorgebucaran/autopair.fish Auto-pair brackets and quotes
meaningful-ooo/sponge Remove failed commands from history
nickeb96/puffer-fish !! / !$ / ./ expansion
Run `fisher update` to update all plugins, or `fish-deps update` which
calls fisher update as its first step.
To update Fisher, run `fisher update` or `fish-deps update` which calls it
as its first step.
---
@@ -1439,8 +1454,9 @@ This configuration is managed as a git repository. To deploy on a new machine:
mv ~/.config/fish ~/.config/fish.bak # back up any existing config
git clone https://git.rootiest.dev/rootiest/fish-config.git ~/.config/fish
Then open a new Fish shell. Fisher and all plugins install automatically on
first launch and the Catppuccin Mocha theme is applied.
Then open a new Fish shell. Fisher installs automatically on first launch
and the Catppuccin Mocha theme is applied. All other plugin functionality is
bundled directly with this config and requires no additional installation.
## Return Sentinel
+6 -2
View File
@@ -116,5 +116,9 @@ Non-standard applications required by this fish shell configuration.
| Tool | Description | Notes |
|------|-------------|-------|
| `fisher` | Fish plugin manager | Manages plugins via `fish_plugins` |
| `catppuccin/fish` | Catppuccin theme for Fish | Listed in `fish_plugins` |
| `fisher` | Fish plugin manager | Bootstrapped automatically on first run; only entry in `fish_plugins` |
Plugin functionality (Catppuccin theme, FZF bindings, done notifications, autopair, puffer-fish
expansions) is bundled directly with this config in `functions/`, `conf.d/`, and `themes/`. These are
customized versions — do not install them via `fisher install`, as doing so would overwrite the
bundled modifications.