feat(docs): generate Section 5 from function comment headers
The man-page-style comment header above each function in functions/*.fish becomes the SSOT for that function's documentation. Writing a new function and documenting it are now the same act. - manualtools.parse_functions() parses every header carrying a # CATEGORY; absence of one is the opt-in, keeping bundled-plugin and prompt internals out of the manual with no exclusion list to maintain. - build-manual.py generates entries for both --concat and --site, with **Dependencies:** rendered as links and a **Used by:** reverse index computed in one pass. Cross-category links are the navigation win. - docs/manual/05-functions/*.md reduced to frontmatter-only stubs. Every intro measured zero words, so the category files were pure entry containers; ordering, titles, and helpKeywords routing are untouched. - _first_sentence() unwraps the leading hard-wrapped paragraph and skips the whole Synopsis block, not just its label line. Site cards no longer truncate mid-clause or show a synopsis as their description. Verification, per the design spec: - test_concat_roundtrips_original scoped to sections 0-4 and 6-11. It guarded a format migration; this is a content migration. - replaced by structural checks: one entry per categorised function, the required sections present, every category resolving to a stub with no stub empty, and every declared dependency resolving to a real function or a type -q-guarded binary. - public functions lacking # CATEGORY warn rather than fail, so a new user-facing function going undocumented stays visible in CI. 24/24 checks pass. 94 entries generated from 94 parsed headers. Also drops a stale claim from open-url's NOTES: config-help --html calls xdg-open directly and has never called open-url.
This commit is contained in:
@@ -8,53 +8,4 @@ helpKeywords:
|
||||
- packages
|
||||
---
|
||||
|
||||
## pkg
|
||||
|
||||
Synopsis: pkg [-h] [-i|-u] <package> [package...]
|
||||
Installs or removes packages using the detected system package manager.
|
||||
Supports: paru, yay, pacman, apt, dnf, zypper, yum, brew, pkg.
|
||||
|
||||
(no flag) Auto mode: installs missing packages, removes installed ones
|
||||
-i/--install Force install
|
||||
-u/--uninstall Force uninstall
|
||||
|
||||
pkg firefox # auto: install if missing, remove if present
|
||||
pkg -i ripgrep fd # force install
|
||||
pkg -u cowsay # force uninstall
|
||||
|
||||
The package-installed check uses the correct query for each PM:
|
||||
pacman/paru/yay pacman -Qi
|
||||
apt dpkg -s
|
||||
dnf/zypper/yum rpm -q
|
||||
brew brew list
|
||||
pkg pkg info
|
||||
|
||||
## search
|
||||
|
||||
Synopsis: search [args...]
|
||||
Interactive AUR package search and install via paru or yay.
|
||||
Arch Linux only.
|
||||
|
||||
search neovim
|
||||
|
||||
## upgrade
|
||||
|
||||
Synopsis: upgrade
|
||||
Full system upgrade via paru -Syu --noconfirm or yay -Syu --noconfirm.
|
||||
Arch Linux only.
|
||||
|
||||
## cleanup
|
||||
|
||||
Synopsis: cleanup
|
||||
Lists and removes orphan packages via pacman, logging their names to
|
||||
~/.removed_orphans. Arch Linux only.
|
||||
|
||||
## parur
|
||||
|
||||
Synopsis: parur
|
||||
Opens an fzf picker of all installed packages (with pacman -Qi previews),
|
||||
then removes the selected packages via paru or yay. Arch Linux only.
|
||||
|
||||
parur
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user