feat(tricks): auto-create fish-config.1 symlink on shell start
The symlink from ~/.local/share/man/man1/fish-config.1 to docs/fish-config.1 is now created automatically alongside the existing MANPATH setup, making `man fish-config` work out of the box on any machine after cloning. Simplified docs accordingly.
This commit is contained in:
@@ -321,13 +321,13 @@ The viewer falls back through: **ov** (syntax highlight + section navigation)
|
||||
|
||||
Examples: `config_help keybindings` · `config_help pkg` · `config_help fish-deps` · `config_help abbreviations`
|
||||
|
||||
You can also read the documentation as a standard man page:
|
||||
You can also read the documentation as a standard man page — the symlink and `MANPATH` are set up automatically on shell start:
|
||||
|
||||
```fish
|
||||
man fish-config
|
||||
```
|
||||
|
||||
This works once `~/.local/share/man` is on your `MANPATH` (added automatically by `conf.d/tricks.fish`) and `~/.local/share/man/man1/fish-config.1` is symlinked to `docs/fish-config.1`. The man page itself is auto-generated from `docs/fish-config.md` by the CI pipeline on every push to `main`.
|
||||
The man page is auto-generated from `docs/fish-config.md` by the CI pipeline on every push to `main`.
|
||||
|
||||
> **Note:** `fish-config` (hyphen) is this configuration's man page. `fish_config` (underscore) is fish's built-in browser-based configuration tool — a completely separate command. Don't mix them up.
|
||||
|
||||
|
||||
+7
-1
@@ -17,10 +17,16 @@ end
|
||||
fish_add_path ~/.local/bin
|
||||
fish_add_path ~/Applications/depot_tools
|
||||
|
||||
# Expose user-local man pages (e.g. fish-config.1 symlinked from docs/)
|
||||
# Expose user-local man pages and keep fish-config.1 symlink current
|
||||
if not contains ~/.local/share/man $MANPATH
|
||||
set -gx MANPATH ~/.local/share/man $MANPATH
|
||||
end
|
||||
set -l _man1 ~/.local/share/man/man1
|
||||
set -l _src ~/.config/fish/docs/fish-config.1
|
||||
if test -f $_src; and not test -L $_man1/fish-config.1
|
||||
mkdir -p $_man1
|
||||
ln -sf $_src $_man1/fish-config.1
|
||||
end
|
||||
|
||||
# Format man pages using bat (only if bat is installed)
|
||||
if type -q bat
|
||||
|
||||
+6
-6
@@ -1231,16 +1231,16 @@ navigation.
|
||||
|
||||
bat --language=markdown --paging=always ~/.config/fish/docs/fish-config.md
|
||||
|
||||
## As a man page (if compiled)
|
||||
## As a man page
|
||||
|
||||
man -l ~/.config/fish/docs/fish-config.1
|
||||
|
||||
If ~/.local/share/man is on your MANPATH (set automatically by
|
||||
conf.d/tricks.fish) and ~/.local/share/man/man1/fish-config.1 is
|
||||
symlinked to docs/fish-config.1, you can also use:
|
||||
The symlink and MANPATH are configured automatically on shell start:
|
||||
|
||||
man fish-config
|
||||
|
||||
Or read the compiled file directly:
|
||||
|
||||
man -l ~/.config/fish/docs/fish-config.1
|
||||
|
||||
NOTE: fish-config (hyphen) is this config's man page. fish_config
|
||||
(underscore) is fish's built-in browser-based configuration tool —
|
||||
a completely separate command. Do not mix them up.
|
||||
|
||||
Reference in New Issue
Block a user