docs(fisher): clarify bundled vs fisher-managed plugins; add sponge #37
@@ -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)
|
- **Catppuccin Mocha** theming throughout (prompt, FZF, syntax highlighting)
|
||||||
- **Starship** prompt with VI key bindings
|
- **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
|
- **Smart CLI wrappers** that prefer modern tools (`eza`, `bat`, `btop`, `dust`, `prettyping`) with graceful fallbacks
|
||||||
- **Auto Python venv** activation on directory change (direnv-aware)
|
- **Auto Python venv** activation on directory change (direnv-aware)
|
||||||
- **Kitty terminal** deep integration for splits, tabs, and SSH
|
- **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
|
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.
|
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.
|
||||||
|
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ if not type -q fisher
|
|||||||
if curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source
|
if curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source
|
||||||
echo " [first-run] Fisher installed."
|
echo " [first-run] Fisher installed."
|
||||||
if not fisher update 2>/dev/null
|
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
|
end
|
||||||
else
|
else
|
||||||
echo " [first-run] Fisher install failed — run 'fisher update' manually." >&2
|
echo " [first-run] Fisher install failed — run 'fisher update' manually." >&2
|
||||||
|
|||||||
+19
-5
@@ -29,8 +29,8 @@ keybindings=# 3. KEY BINDINGS
|
|||||||
bindings=# 3. KEY BINDINGS
|
bindings=# 3. KEY BINDINGS
|
||||||
key-bindings=# 3. KEY BINDINGS
|
key-bindings=# 3. KEY BINDINGS
|
||||||
keys=# 3. KEY BINDINGS
|
keys=# 3. KEY BINDINGS
|
||||||
fzf-bindings=## FZF Bindings (from fzf --fish integration)
|
fzf-bindings=## FZF Bindings (bundled from PatrickF1/fzf.fish)
|
||||||
fzf=## FZF Bindings (from fzf --fish integration)
|
fzf=## FZF Bindings (bundled from PatrickF1/fzf.fish)
|
||||||
|
|
||||||
# ── Section 4: Abbreviations ──────────────────────────────────
|
# ── Section 4: Abbreviations ──────────────────────────────────
|
||||||
abbreviations=# 4. ABBREVIATIONS
|
abbreviations=# 4. ABBREVIATIONS
|
||||||
@@ -166,10 +166,24 @@ universal=## Fish Universal Variables
|
|||||||
# ── Section 8: Fisher Plugins ─────────────────────────────────
|
# ── Section 8: Fisher Plugins ─────────────────────────────────
|
||||||
plugins=# 8. FISHER PLUGINS
|
plugins=# 8. FISHER PLUGINS
|
||||||
fisher=# 8. FISHER PLUGINS
|
fisher=# 8. FISHER PLUGINS
|
||||||
|
bundled-plugins=## Bundled Plugin Functionality
|
||||||
|
fish-plugins-manifest=## fish_plugins Manifest
|
||||||
|
|
||||||
# ── Section 9: Viewing This Manual ───────────────────────────
|
# ── Section 9: Installation ────────────────────────────────────
|
||||||
viewing=# 9. VIEWING THIS MANUAL
|
installation=# 9. INSTALLATION
|
||||||
manual=# 9. VIEWING THIS MANUAL
|
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)
|
ov=## With ov (recommended)
|
||||||
man-page=## As a man page (if compiled)
|
man-page=## As a man page (if compiled)
|
||||||
manpage=## As a man page (if compiled)
|
manpage=## As a man page (if compiled)
|
||||||
|
|||||||
+31
-15
@@ -279,7 +279,7 @@ are active in Insert, Normal, and Visual modes unless noted.
|
|||||||
line to open an fzf picker and insert a selection
|
line to open an fzf picker and insert a selection
|
||||||
at the cursor position.
|
at the cursor position.
|
||||||
|
|
||||||
## FZF Bindings (from PatrickF1/fzf.fish)
|
## FZF Bindings (bundled from PatrickF1/fzf.fish)
|
||||||
|
|
||||||
Ctrl+R Search command history
|
Ctrl+R Search command history
|
||||||
Ctrl+Alt+F Search git-tracked files
|
Ctrl+Alt+F Search git-tracked files
|
||||||
@@ -1395,9 +1395,9 @@ To customize, override FZF_DEFAULT_OPTS in local.fish.
|
|||||||
|
|
||||||
### Catppuccin Mocha Syntax Highlighting
|
### Catppuccin Mocha Syntax Highlighting
|
||||||
|
|
||||||
The catppuccin/fish plugin applies syntax highlight colors on first run.
|
The Catppuccin Mocha theme ships with this config in themes/ and is applied
|
||||||
Colors are stored in fish_variables (universal). To switch variants, install
|
on first run via `conf.d/first_run.fish`. Colors are stored in fish_variables
|
||||||
a different theme from the themes/ directory:
|
(universal). To switch variants, install a different theme from themes/:
|
||||||
|
|
||||||
fish_config theme save "Catppuccin Latte"
|
fish_config theme save "Catppuccin Latte"
|
||||||
|
|
||||||
@@ -1417,18 +1417,33 @@ testing), run:
|
|||||||
|
|
||||||
Then open a new shell.
|
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
|
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
|
To update Fisher, run `fisher update` or `fish-deps update` which calls it
|
||||||
calls fisher update as its first step.
|
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
|
mv ~/.config/fish ~/.config/fish.bak # back up any existing config
|
||||||
git clone https://git.rootiest.dev/rootiest/fish-config.git ~/.config/fish
|
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
|
Then open a new Fish shell. Fisher installs automatically on first launch
|
||||||
first launch and the Catppuccin Mocha theme is applied.
|
and the Catppuccin Mocha theme is applied. All other plugin functionality is
|
||||||
|
bundled directly with this config and requires no additional installation.
|
||||||
|
|
||||||
## Return Sentinel
|
## Return Sentinel
|
||||||
|
|
||||||
|
|||||||
+6
-2
@@ -116,5 +116,9 @@ Non-standard applications required by this fish shell configuration.
|
|||||||
|
|
||||||
| Tool | Description | Notes |
|
| Tool | Description | Notes |
|
||||||
|------|-------------|-------|
|
|------|-------------|-------|
|
||||||
| `fisher` | Fish plugin manager | Manages plugins via `fish_plugins` |
|
| `fisher` | Fish plugin manager | Bootstrapped automatically on first run; only entry in `fish_plugins` |
|
||||||
| `catppuccin/fish` | Catppuccin theme for Fish | Listed 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.
|
||||||
|
|||||||
Reference in New Issue
Block a user