diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8d2c9c3..6f66bc1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -390,7 +390,7 @@ all optional except where noted: |---|---| | `CATEGORY` | **Required to appear in the manual at all** — see below. | | `COMPONENT` | Only for functions gated by the [opinionated-component system](#opinionated-components). | -| `DEPENDENCIES` | Other functions this one calls that a reader may want to look up. | +| `DEPENDENCIES` | Other functions, and external CLI tools, this one needs for full functionality — required or optional-with-fallback alike. | | `CLASSIFICATION` | Hazard/shadow-interaction tags — see below. | | `SYNOPSIS` | One-line usage form. | | `DESCRIPTION` | Prose description; can span multiple paragraphs. | diff --git a/docs/fish-config.md b/docs/fish-config.md index ef6d7c3..193159d 100644 --- a/docs/fish-config.md +++ b/docs/fish-config.md @@ -607,6 +607,8 @@ functions). They are active in all interactive sessions. cat README.md cat ~/projects/myapp +**Dependencies:** `bat` + **Classification:** `uses-shadow(ls)`, `bypasses-shadow(cat)` ### copy @@ -644,6 +646,8 @@ functions). They are active in all interactive sessions. du ~/Downloads du --disk +**Dependencies:** `duf`, `dust`, `dua` + **Classification:** `bypasses-shadow(du)` ### dusize @@ -678,6 +682,8 @@ functions). They are active in all interactive sessions. Example: lD ~/projects +**Dependencies:** `eza`, `lsd` + **Classification:** `bypasses-shadow(ls)` ### ls @@ -695,6 +701,8 @@ functions). They are active in all interactive sessions. ls ls -a ~/projects +**Dependencies:** `eza`, `lsd` + **Classification:** `bypasses-shadow(ls)` ### lsr @@ -713,6 +721,8 @@ functions). They are active in all interactive sessions. Example: lsr ~/projects +**Dependencies:** `eza`, `lsd` + **Classification:** `bypasses-shadow(ls)` ### lss @@ -731,6 +741,8 @@ functions). They are active in all interactive sessions. Example: lss ~/downloads +**Dependencies:** `eza`, `lsd` + **Classification:** `bypasses-shadow(ls)` ### lstree @@ -749,6 +761,8 @@ functions). They are active in all interactive sessions. Example: lstree ~/projects/myapp +**Dependencies:** `eza`, `lsd` + **Classification:** `bypasses-shadow(ls)` ### lt @@ -767,6 +781,8 @@ functions). They are active in all interactive sessions. Example: lt ~/projects +**Dependencies:** `eza`, `lsd` + **Classification:** `bypasses-shadow(ls)` ### ltr @@ -786,6 +802,8 @@ functions). They are active in all interactive sessions. Example: ltr ~/projects +**Dependencies:** `eza`, `lsd` + **Classification:** `bypasses-shadow(ls)` ### lx @@ -804,6 +822,8 @@ functions). They are active in all interactive sessions. Example: lx ~/projects +**Dependencies:** `eza`, `lsd` + **Classification:** `bypasses-shadow(ls)` ### mkcd @@ -828,6 +848,8 @@ functions). They are active in all interactive sessions. mkcd ~/projects/myapp mkcd ~/projects/newapp/src +**Dependencies:** `_fish_mkdir_p` + **Classification:** `bypasses-shadow(cd)` ### mkdir @@ -845,6 +867,8 @@ functions). They are active in all interactive sessions. Example: mkdir ~/projects/myapp/src +**Dependencies:** `_fish_mkdir_p` + **Classification:** `bypasses-shadow(mkdir)` ### mv @@ -888,6 +912,8 @@ functions). They are active in all interactive sessions. Example: poke ~/projects/new/src/main.fish +**Dependencies:** `_fish_mkdir_p` + ### rg Synopsis: rg [args...] @@ -939,6 +965,8 @@ functions). They are active in all interactive sessions. rm -e rm -S sensitive_key.pem +**Dependencies:** `trash` + **Classification:** `bypasses-shadow(rm)`, `destructive` ### scrub @@ -965,6 +993,8 @@ functions). They are active in all interactive sessions. scrub -a scrub -d +**Dependencies:** `fd`, `trash` + **Classification:** `uses-shadow(rm)`, `bypasses-shadow(rm)`, `destructive` ## 5.2 Navigation @@ -982,6 +1012,8 @@ functions). They are active in all interactive sessions. Example: cdi myproject +**Dependencies:** `zoxide` + ### clone Synopsis: clone [args...] @@ -1056,6 +1088,8 @@ functions). They are active in all interactive sessions. edit --editor=code --clipboard edit --text="hello world" +**Dependencies:** `p`, `nano`, `nvim` + **Classification:** `bypasses-shadow(rm)` ### fc @@ -1093,6 +1127,8 @@ functions). They are active in all interactive sessions. Example: less /var/log/syslog +**Dependencies:** `ov`, `more` + **Classification:** `bypasses-shadow(cat,less)` ### md @@ -1153,6 +1189,8 @@ functions). They are active in all interactive sessions. Example: rawfish +**Dependencies:** `fish` + ### view Synopsis: view [args...] @@ -1166,6 +1204,8 @@ functions). They are active in all interactive sessions. Example: view /etc/fstab +**Dependencies:** `nvim` + **Classification:** `uses-shadow(less)` ## 5.4 Git and Version Control @@ -1205,6 +1245,8 @@ functions). They are active in all interactive sessions. auto-pull list auto-pull remove qmk_firmware +**Dependencies:** `git` + ### branch Synopsis: branch @@ -1222,6 +1264,8 @@ functions). They are active in all interactive sessions. Example: branch feature/new-ui +**Dependencies:** `git` + ### gi Synopsis: gi [-h] [-b] [-p] [-s] [-l] [targets...] @@ -1253,6 +1297,8 @@ functions). They are active in all interactive sessions. gi -b -p gi -s node > .gitignore +**Dependencies:** `curl`, `md5sum`, `md5` + **Classification:** `self-limiting(grep,cat)`, `network`, `blocking-prompt` ### git-clean @@ -1275,6 +1321,8 @@ functions). They are active in all interactive sessions. git-clean --force git-clean +**Dependencies:** `git` + **Classification:** `network` ### gitui @@ -1308,6 +1356,8 @@ functions). They are active in all interactive sessions. gitup gitup --all +**Dependencies:** `git` + **Classification:** `network` ### hist @@ -1491,6 +1541,8 @@ functions). They are active in all interactive sessions. Example: cleanup +**Dependencies:** `pacman` + **Classification:** `self-limiting(grep)` ### parur @@ -1508,6 +1560,8 @@ functions). They are active in all interactive sessions. Example: parur +**Dependencies:** `fzf`, `pacman`, `paru`, `yay` + **Classification:** `network` ### pkg @@ -1542,6 +1596,8 @@ functions). They are active in all interactive sessions. pkg -i ripgrep fd-find pkg -u cowsay +**Dependencies:** `_fish_deps_detect_pm`, `pacman`, `paru`, `yay` + **Classification:** `network` ### search @@ -1561,6 +1617,8 @@ functions). They are active in all interactive sessions. Example: search neovim +**Dependencies:** `paru`, `yay` + **Classification:** `network` ### upgrade @@ -1577,6 +1635,8 @@ functions). They are active in all interactive sessions. Example: upgrade +**Dependencies:** `paru`, `yay` + **Classification:** `network` ## 5.6 Dependency Management @@ -1594,6 +1654,8 @@ functions). They are active in all interactive sessions. Example: check_fish_deps +**Dependencies:** `fish-deps` + ### fish-deps Synopsis: fish-deps [status|install|update|sync] [--optional] [--terminals] [--all] @@ -1648,6 +1710,10 @@ functions). They are active in all interactive sessions. fish-deps install --all fish-deps update +**Dependencies:** `_fish_deps_status`, `_fish_deps_install`, `_fish_deps_update` + +**Used by:** `check_fish_deps` + ### fzf-update Synopsis: fzf-update @@ -1662,6 +1728,8 @@ functions). They are active in all interactive sessions. Example: fzf-update +**Dependencies:** `git`, `fzf` + **Classification:** `network` ## 5.7 System and Monitoring @@ -1681,6 +1749,8 @@ functions). They are active in all interactive sessions. Example: limine-edit +**Dependencies:** `sbctl` + ### lock Synopsis: lock @@ -1726,6 +1796,8 @@ functions). They are active in all interactive sessions. sbver sbver --brief +**Dependencies:** `sbctl` + **Classification:** `self-limiting(grep)` ### screensleep @@ -1783,6 +1855,8 @@ functions). They are active in all interactive sessions. Example: top +**Dependencies:** `btop` + **Classification:** `bypasses-shadow(top)` ## 5.8 Terminal Management @@ -1876,6 +1950,8 @@ functions). They are active in all interactive sessions. Example: # Rendered automatically by fish; not called directly. +**Dependencies:** `docker`, `starship` + ### jobrunner Synopsis: jobrunner [-t ] [] [] [...] @@ -1959,6 +2035,8 @@ functions). They are active in all interactive sessions. split split -v nvim README.md +**Dependencies:** `kitty` + ### spwin Synopsis: spwin [args...] @@ -1976,6 +2054,8 @@ functions). They are active in all interactive sessions. Example: spwin +**Dependencies:** `kitty` + ### ssh Synopsis: ssh [args...] @@ -1991,6 +2071,8 @@ functions). They are active in all interactive sessions. Example: ssh user@host +**Dependencies:** `kitten` + **Classification:** `bypasses-shadow(ssh)`, `network` ### tab @@ -2011,6 +2093,8 @@ functions). They are active in all interactive sessions. Example: tab +**Dependencies:** `kitty` + ## 5.9 Clipboard ### p @@ -2037,6 +2121,8 @@ functions). They are active in all interactive sessions. **Dependencies:** `_fish_clipboard_paste` +**Used by:** `edit` + ### paste Synopsis: paste [args...] @@ -2120,6 +2206,8 @@ functions). They are active in all interactive sessions. Example: gip +**Dependencies:** `curl` + **Classification:** `network` ### gip4 @@ -2134,6 +2222,8 @@ functions). They are active in all interactive sessions. Example: gip4 +**Dependencies:** `curl` + **Classification:** `network` ### gip6 @@ -2153,6 +2243,8 @@ functions). They are active in all interactive sessions. Example: gip6 +**Dependencies:** `curl` + **Classification:** `network` ### ping @@ -2171,6 +2263,8 @@ functions). They are active in all interactive sessions. ping google.com ping --legend google.com +**Dependencies:** `prettyping` + **Classification:** `bypasses-shadow(ping)` ### qr @@ -2191,6 +2285,8 @@ functions). They are active in all interactive sessions. qr "https://example.com" echo "hello" | qr +**Dependencies:** `curl`, `qrencode` + **Classification:** `self-limiting(cat)`, `network` ## 5.11 Pager and Logging @@ -2225,6 +2321,8 @@ functions). They are active in all interactive sessions. logs logs -c scrollback +**Dependencies:** `_scrollback_prune_junk`, `fzf`, `nvim`, `ov` + **Classification:** `bypasses-shadow(cat)`, `self-limiting(rm)`, `network` ### smart_exit @@ -2252,6 +2350,8 @@ functions). They are active in all interactive sessions. smart_exit smart_exit --no-log +**Dependencies:** `kitty`, `ps`, `_scrollback_prune_junk` + **Classification:** `self-limiting(rm,mkdir)`, `destructive` ### sponge_filter_secrets @@ -2597,6 +2697,8 @@ functions). They are active in all interactive sessions. **Dependencies:** `agents-init`, `agents-vault` +**Used by:** `superpowers` + ### antigravity-ide Synopsis: antigravity-ide [args...] @@ -2702,7 +2804,7 @@ functions). They are active in all interactive sessions. **Dependencies:** `dops` -**Used by:** `dops` +**Used by:** `dockup`, `dops`, `fish_right_prompt`, `ld` ### dops @@ -2752,6 +2854,8 @@ functions). They are active in all interactive sessions. qc -m ollama:llama3 "explain this error" qc --role coder "refactor this function" +**Dependencies:** `aichat` + ### superpowers Synopsis: superpowers [on|off] [-g] @@ -2774,6 +2878,8 @@ functions). They are active in all interactive sessions. superpowers on superpowers off -g +**Dependencies:** `agy` + **Classification:** `uses-shadow(claude)` ## 5.13 Media and Utilities @@ -2801,6 +2907,8 @@ functions). They are active in all interactive sessions. dng2avif photo.dng dng2avif -q 85 -s 5 -i shot.dng -o out.avif +**Dependencies:** `magick`, `ffmpeg`, `avifenc`, `exiftool` + **Classification:** `self-limiting(rm)` ### key-crypt @@ -2884,6 +2992,8 @@ functions). They are active in all interactive sessions. play-media play-media --player mpv +**Dependencies:** `_fzf_preview_media`, `_fzf_wrapper`, `fd`, `fdfind`, `file`, `xdg-mime` + ### spark Synopsis: spark [--min=] [--max=] [numbers...] @@ -2979,6 +3089,8 @@ functions). They are active in all interactive sessions. bd-pull myuser/myproject bd-pull rootiest/fish-config +**Dependencies:** `curl`, `jq`, `git` + ### cffetch Synopsis: cffetch [args...] @@ -2992,6 +3104,8 @@ functions). They are active in all interactive sessions. Example: cffetch +**Dependencies:** `fastfetch`, `neofetch` + **Classification:** `uses-shadow(ls)` ### cheat @@ -3009,6 +3123,10 @@ functions). They are active in all interactive sessions. cheat tar cheat git +**Dependencies:** `cheat`, `tldr`, `man` + +**Used by:** `cheat` + ### config-help Synopsis: config-help [section] @@ -3061,6 +3179,8 @@ functions). They are active in all interactive sessions. config-help --help config-help pkg --man +**Dependencies:** `xdg-open`, `man`, `ov`, `bat` + **Classification:** `self-limiting(grep)`, `bypasses-shadow(less)` ### config-settings @@ -3181,6 +3301,8 @@ functions). They are active in all interactive sessions. config-update --dry-run config-update --force +**Dependencies:** `git` + ### dockup Synopsis: dockup [-h] [directory] @@ -3199,6 +3321,8 @@ functions). They are active in all interactive sessions. Example: dockup ~/myapp +**Dependencies:** `docker` + **Classification:** `network` ### ffetch @@ -3214,6 +3338,8 @@ functions). They are active in all interactive sessions. Example: ffetch +**Dependencies:** `fastfetch`, `neofetch` + **Classification:** `uses-shadow(ls)` ### fzf_configure_bindings @@ -3241,6 +3367,8 @@ functions). They are active in all interactive sessions. Example: fzf_configure_bindings --history=ctrl-h +**Dependencies:** `_fzf_search_directory`, `_fzf_search_git_log`, `_fzf_search_git_status`, `_fzf_search_history`, `_fzf_search_processes`, `_fzf_search_variables` + ### joplin Synopsis: joplin [args...] @@ -3258,6 +3386,10 @@ functions). They are active in all interactive sessions. Example: joplin ls +**Dependencies:** `joplin` + +**Used by:** `joplin` + ### kitty-logging Synopsis: kitty-logging [install | uninstall | status | dismiss] [-h] @@ -3289,6 +3421,8 @@ functions). They are active in all interactive sessions. kitty-logging install kitty-logging status +**Dependencies:** `kitty`, `__kitty_logging_dir`, `__kitty_logging_has_watcher`, `__kitty_logging_version` + **Classification:** `bypasses-shadow(grep,mkdir,rm)` ### ld @@ -3304,6 +3438,8 @@ functions). They are active in all interactive sessions. Example: ld +**Dependencies:** `docker`, `lazydocker` + ### open-url Synopsis: open-url [-s|--silent] [-v|--verbose] @@ -3341,6 +3477,8 @@ functions). They are active in all interactive sessions. open-url https://git.rootiest.dev/rootiest/fish-config open-url -v https://fish.rootiest.fyi/ +**Dependencies:** `xdg-mime`, `xdg-open` + **Used by:** `repo-open` ### rand_string @@ -3377,6 +3515,8 @@ functions). They are active in all interactive sessions. rand_string --case=title color animal --separator=dot digits=4 rand_string literal=TEST --separator=underscore verb noun +**Dependencies:** `shuf` + **Classification:** `bypasses-shadow(cat)` ### replay @@ -3460,6 +3600,8 @@ functions). They are active in all interactive sessions. Example: tmux-clean +**Dependencies:** `tmux` + ### wake-lock Synopsis: wake-lock [args...] diff --git a/docs/verify-manual.py b/docs/verify-manual.py index e3749b3..703d9ec 100644 --- a/docs/verify-manual.py +++ b/docs/verify-manual.py @@ -202,13 +202,22 @@ def test_dependencies_resolve(): Catches typos, and catches stale entries when a dependency is renamed or deleted. External binaries are accepted when some file in the tree - guards them with `type -q`, which is this repo's convention. + guards their availability -- `type -q name`, `command -q name`, + `command -v name`, or `which name`, this repo's four interchangeable + existence-check idioms -- either directly, or, for a multi-tool check + like dng2avif's `for cmd in magick ffmpeg avifenc exiftool; type -q + $cmd`, indirectly through a loop variable. """ repo = Path(__file__).parent.parent functions = _parsed_functions() known = {p.stem for p in (repo / "functions").glob("*.fish")} | set(functions) + guard_re = re.compile(r"(?:type -q|command -q|command -v|which)\s+([\w.\-]+)") for path in list(repo.glob("conf.d/*.fish")) + list((repo / "functions").glob("*.fish")): - known |= set(re.findall(r"type -q\s+(\S+)", path.read_text(encoding="utf-8"))) + text = path.read_text(encoding="utf-8") + known |= set(guard_re.findall(text)) + for var, names in re.findall(r"for\s+(\w+)\s+in\s+([^\n;]+)", text): + if re.search(rf"type -q\s+\$\{{?{re.escape(var)}\}}?\b", text): + known |= set(names.split()) dangling = [] for name, fn in functions.items(): for dep in (d for d in re.split(r"[,\s]+", " ".join(fn.get("DEPENDENCIES", []))) if d): diff --git a/functions/auto-pull.fish b/functions/auto-pull.fish index 2a4a532..ca1dd3a 100644 --- a/functions/auto-pull.fish +++ b/functions/auto-pull.fish @@ -7,6 +7,9 @@ # COMPONENT # autoexec/sync # +# DEPENDENCIES +# git +# # SYNOPSIS # auto-pull [list] # auto-pull add [PATH] diff --git a/functions/bd-pull.fish b/functions/bd-pull.fish index 30c0819..5d50720 100644 --- a/functions/bd-pull.fish +++ b/functions/bd-pull.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# curl, jq, git +# # SYNOPSIS # bd-pull # diff --git a/functions/branch.fish b/functions/branch.fish index ed0336c..93f7d31 100644 --- a/functions/branch.fish +++ b/functions/branch.fish @@ -4,6 +4,9 @@ # CATEGORY # 04-git-and-version-control # +# DEPENDENCIES +# git +# # SYNOPSIS # branch # diff --git a/functions/cat.fish b/functions/cat.fish index ce494e7..74c1b53 100644 --- a/functions/cat.fish +++ b/functions/cat.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/filesystem # +# DEPENDENCIES +# bat +# # CLASSIFICATION # uses-shadow(ls), bypasses-shadow(cat) # diff --git a/functions/cdi.fish b/functions/cdi.fish index 4bfeecf..15eae9e 100644 --- a/functions/cdi.fish +++ b/functions/cdi.fish @@ -4,6 +4,9 @@ # CATEGORY # 02-navigation # +# DEPENDENCIES +# zoxide +# # SYNOPSIS # cdi [query] # diff --git a/functions/cffetch.fish b/functions/cffetch.fish index 69396de..f88965b 100644 --- a/functions/cffetch.fish +++ b/functions/cffetch.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# fastfetch, neofetch +# # CLASSIFICATION # uses-shadow(ls) # diff --git a/functions/cheat.fish b/functions/cheat.fish index 0d9e20d..e761d14 100644 --- a/functions/cheat.fish +++ b/functions/cheat.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# cheat, tldr, man +# # SYNOPSIS # cheat [args...] # diff --git a/functions/check_fish_deps.fish b/functions/check_fish_deps.fish index 981fa50..91b7812 100644 --- a/functions/check_fish_deps.fish +++ b/functions/check_fish_deps.fish @@ -4,6 +4,9 @@ # CATEGORY # 06-dependency-management # +# DEPENDENCIES +# fish-deps +# # SYNOPSIS # check_fish_deps # diff --git a/functions/cleanup.fish b/functions/cleanup.fish index 1dee139..ffe8089 100644 --- a/functions/cleanup.fish +++ b/functions/cleanup.fish @@ -4,6 +4,9 @@ # CATEGORY # 05-package-management # +# DEPENDENCIES +# pacman +# # CLASSIFICATION # self-limiting(grep) # diff --git a/functions/config-help.fish b/functions/config-help.fish index 47cdb89..fe860a1 100644 --- a/functions/config-help.fish +++ b/functions/config-help.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# xdg-open, man, ov, bat +# # CLASSIFICATION # self-limiting(grep), bypasses-shadow(less) # diff --git a/functions/config-update.fish b/functions/config-update.fish index 4d0ea5f..bd43cee 100644 --- a/functions/config-update.fish +++ b/functions/config-update.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# git +# # SYNOPSIS # config-update [-h | --help] [-f | --force] [-n | --dry-run] # diff --git a/functions/dng2avif.fish b/functions/dng2avif.fish index 2254b47..b5022a7 100644 --- a/functions/dng2avif.fish +++ b/functions/dng2avif.fish @@ -4,6 +4,9 @@ # CATEGORY # 13-media-and-utilities # +# DEPENDENCIES +# magick, ffmpeg, avifenc, exiftool +# # CLASSIFICATION # self-limiting(rm) # diff --git a/functions/dockup.fish b/functions/dockup.fish index 1717085..4579471 100644 --- a/functions/dockup.fish +++ b/functions/dockup.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# docker +# # CLASSIFICATION # network # diff --git a/functions/du.fish b/functions/du.fish index bb8924e..cd7297e 100644 --- a/functions/du.fish +++ b/functions/du.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/filesystem # +# DEPENDENCIES +# duf, dust, dua +# # CLASSIFICATION # bypasses-shadow(du) # diff --git a/functions/edit.fish b/functions/edit.fish index 155c208..3ad41d4 100644 --- a/functions/edit.fish +++ b/functions/edit.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/dev-tools # +# DEPENDENCIES +# p, nano, nvim +# # CLASSIFICATION # bypasses-shadow(rm) # diff --git a/functions/ffetch.fish b/functions/ffetch.fish index 388ad58..19d09cb 100644 --- a/functions/ffetch.fish +++ b/functions/ffetch.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# fastfetch, neofetch +# # CLASSIFICATION # uses-shadow(ls) # diff --git a/functions/fish-deps.fish b/functions/fish-deps.fish index a4b9270..19b3355 100644 --- a/functions/fish-deps.fish +++ b/functions/fish-deps.fish @@ -4,6 +4,9 @@ # CATEGORY # 06-dependency-management # +# DEPENDENCIES +# _fish_deps_status, _fish_deps_install, _fish_deps_update +# # SYNOPSIS # fish-deps [status|install|update|sync] [--optional] [--terminals] [--all] # diff --git a/functions/fish_right_prompt.fish b/functions/fish_right_prompt.fish index 36a1c81..9a5593c 100644 --- a/functions/fish_right_prompt.fish +++ b/functions/fish_right_prompt.fish @@ -7,6 +7,9 @@ # COMPONENT # overrides/prompt # +# DEPENDENCIES +# docker, starship +# # SYNOPSIS # fish_right_prompt # diff --git a/functions/fzf-update.fish b/functions/fzf-update.fish index 543d99d..e465ad2 100644 --- a/functions/fzf-update.fish +++ b/functions/fzf-update.fish @@ -4,6 +4,9 @@ # CATEGORY # 06-dependency-management # +# DEPENDENCIES +# git, fzf +# # CLASSIFICATION # network # diff --git a/functions/fzf_configure_bindings.fish b/functions/fzf_configure_bindings.fish index 41f4181..8ba97a0 100644 --- a/functions/fzf_configure_bindings.fish +++ b/functions/fzf_configure_bindings.fish @@ -4,6 +4,10 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# _fzf_search_directory, _fzf_search_git_log, _fzf_search_git_status, +# _fzf_search_history, _fzf_search_processes, _fzf_search_variables +# # SYNOPSIS # fzf_configure_bindings [--directory=] [--git_log=] [--git_status=] # [--history=] [--processes=] [--variables=] [-h] diff --git a/functions/gi.fish b/functions/gi.fish index 9fabbca..559b28c 100644 --- a/functions/gi.fish +++ b/functions/gi.fish @@ -4,6 +4,9 @@ # CATEGORY # 04-git-and-version-control # +# DEPENDENCIES +# curl, md5sum, md5 +# # CLASSIFICATION # self-limiting(grep,cat), network, blocking-prompt # diff --git a/functions/gip.fish b/functions/gip.fish index 83825b6..c5ba9d8 100644 --- a/functions/gip.fish +++ b/functions/gip.fish @@ -4,6 +4,9 @@ # CATEGORY # 10-network # +# DEPENDENCIES +# curl +# # CLASSIFICATION # network # diff --git a/functions/gip4.fish b/functions/gip4.fish index 8d957cf..b45df87 100644 --- a/functions/gip4.fish +++ b/functions/gip4.fish @@ -4,6 +4,9 @@ # CATEGORY # 10-network # +# DEPENDENCIES +# curl +# # CLASSIFICATION # network # diff --git a/functions/gip6.fish b/functions/gip6.fish index f272fb8..f1279f9 100644 --- a/functions/gip6.fish +++ b/functions/gip6.fish @@ -4,6 +4,9 @@ # CATEGORY # 10-network # +# DEPENDENCIES +# curl +# # CLASSIFICATION # network # diff --git a/functions/git-clean.fish b/functions/git-clean.fish index 64e1b31..41b87dc 100644 --- a/functions/git-clean.fish +++ b/functions/git-clean.fish @@ -4,6 +4,9 @@ # CATEGORY # 04-git-and-version-control # +# DEPENDENCIES +# git +# # CLASSIFICATION # network # diff --git a/functions/gitup.fish b/functions/gitup.fish index b453de2..0c5fd5f 100644 --- a/functions/gitup.fish +++ b/functions/gitup.fish @@ -4,6 +4,9 @@ # CATEGORY # 04-git-and-version-control # +# DEPENDENCIES +# git +# # CLASSIFICATION # network # diff --git a/functions/joplin.fish b/functions/joplin.fish index 92eb222..7547173 100644 --- a/functions/joplin.fish +++ b/functions/joplin.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# joplin +# # SYNOPSIS # joplin [args...] # diff --git a/functions/kitty-logging.fish b/functions/kitty-logging.fish index fc2921c..7e665ed 100644 --- a/functions/kitty-logging.fish +++ b/functions/kitty-logging.fish @@ -7,6 +7,10 @@ # COMPONENT # logging/terminal-capture # +# DEPENDENCIES +# kitty, __kitty_logging_dir, __kitty_logging_has_watcher, +# __kitty_logging_version +# # CLASSIFICATION # bypasses-shadow(grep,mkdir,rm) # diff --git a/functions/lD.fish b/functions/lD.fish index 2126153..b15196e 100644 --- a/functions/lD.fish +++ b/functions/lD.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# eza, lsd +# # CLASSIFICATION # bypasses-shadow(ls) # diff --git a/functions/ld.fish b/functions/ld.fish index 4baa58e..b684a63 100644 --- a/functions/ld.fish +++ b/functions/ld.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# docker, lazydocker +# # SYNOPSIS # ld # diff --git a/functions/less.fish b/functions/less.fish index 3680857..2a594bc 100644 --- a/functions/less.fish +++ b/functions/less.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/shell-tools # +# DEPENDENCIES +# ov, more +# # CLASSIFICATION # bypasses-shadow(cat,less) # diff --git a/functions/limine-edit.fish b/functions/limine-edit.fish index f130e35..249d359 100644 --- a/functions/limine-edit.fish +++ b/functions/limine-edit.fish @@ -4,6 +4,9 @@ # CATEGORY # 07-system-and-monitoring # +# DEPENDENCIES +# sbctl +# # SYNOPSIS # limine-edit # diff --git a/functions/logs.fish b/functions/logs.fish index c708d3f..5519ac2 100644 --- a/functions/logs.fish +++ b/functions/logs.fish @@ -7,6 +7,9 @@ # COMPONENT # integrations/history-logs # +# DEPENDENCIES +# _scrollback_prune_junk, fzf, nvim, ov +# # CLASSIFICATION # bypasses-shadow(cat), self-limiting(rm), network # diff --git a/functions/ls.fish b/functions/ls.fish index 28f5ad3..26b6852 100644 --- a/functions/ls.fish +++ b/functions/ls.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/filesystem # +# DEPENDENCIES +# eza, lsd +# # CLASSIFICATION # bypasses-shadow(ls) # diff --git a/functions/lsr.fish b/functions/lsr.fish index 593b43d..f0ccc2d 100644 --- a/functions/lsr.fish +++ b/functions/lsr.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# eza, lsd +# # CLASSIFICATION # bypasses-shadow(ls) # diff --git a/functions/lss.fish b/functions/lss.fish index b50e60c..0ee6dfe 100644 --- a/functions/lss.fish +++ b/functions/lss.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# eza, lsd +# # CLASSIFICATION # bypasses-shadow(ls) # diff --git a/functions/lstree.fish b/functions/lstree.fish index bc781c1..92ca65c 100644 --- a/functions/lstree.fish +++ b/functions/lstree.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# eza, lsd +# # CLASSIFICATION # bypasses-shadow(ls) # diff --git a/functions/lt.fish b/functions/lt.fish index 366708e..90d3e15 100644 --- a/functions/lt.fish +++ b/functions/lt.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# eza, lsd +# # CLASSIFICATION # bypasses-shadow(ls) # diff --git a/functions/ltr.fish b/functions/ltr.fish index 2a077e6..df01f6e 100644 --- a/functions/ltr.fish +++ b/functions/ltr.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# eza, lsd +# # CLASSIFICATION # bypasses-shadow(ls) # diff --git a/functions/lx.fish b/functions/lx.fish index 0a320f7..5026e11 100644 --- a/functions/lx.fish +++ b/functions/lx.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# eza, lsd +# # CLASSIFICATION # bypasses-shadow(ls) # diff --git a/functions/mkcd.fish b/functions/mkcd.fish index e8173d3..53eb920 100644 --- a/functions/mkcd.fish +++ b/functions/mkcd.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# _fish_mkdir_p +# # CLASSIFICATION # bypasses-shadow(cd) # diff --git a/functions/mkdir.fish b/functions/mkdir.fish index d33f535..88e736f 100644 --- a/functions/mkdir.fish +++ b/functions/mkdir.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/filesystem # +# DEPENDENCIES +# _fish_mkdir_p +# # CLASSIFICATION # bypasses-shadow(mkdir) # diff --git a/functions/open-url.fish b/functions/open-url.fish index 7c6b2bc..930c843 100644 --- a/functions/open-url.fish +++ b/functions/open-url.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# xdg-mime, xdg-open +# # SYNOPSIS # open-url [-s|--silent] [-v|--verbose] # open-url --help diff --git a/functions/parur.fish b/functions/parur.fish index 79f182b..b9ee1f3 100644 --- a/functions/parur.fish +++ b/functions/parur.fish @@ -4,6 +4,9 @@ # CATEGORY # 05-package-management # +# DEPENDENCIES +# fzf, pacman, paru, yay +# # CLASSIFICATION # network # diff --git a/functions/ping.fish b/functions/ping.fish index 244608d..06a4d43 100644 --- a/functions/ping.fish +++ b/functions/ping.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/network # +# DEPENDENCIES +# prettyping +# # CLASSIFICATION # bypasses-shadow(ping) # diff --git a/functions/pkg.fish b/functions/pkg.fish index 0f385f7..8ce01ce 100644 --- a/functions/pkg.fish +++ b/functions/pkg.fish @@ -4,6 +4,9 @@ # CATEGORY # 05-package-management # +# DEPENDENCIES +# _fish_deps_detect_pm, pacman, paru, yay +# # CLASSIFICATION # network # diff --git a/functions/play-media.fish b/functions/play-media.fish index 38d08f6..f0c13f5 100644 --- a/functions/play-media.fish +++ b/functions/play-media.fish @@ -4,6 +4,9 @@ # CATEGORY # 13-media-and-utilities # +# DEPENDENCIES +# _fzf_preview_media, _fzf_wrapper, fd, fdfind, file, xdg-mime +# # SYNOPSIS # play-media [-p|--player ] # play-media --help diff --git a/functions/poke.fish b/functions/poke.fish index ea9bd59..b853896 100644 --- a/functions/poke.fish +++ b/functions/poke.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# _fish_mkdir_p +# # SYNOPSIS # poke [file...] # diff --git a/functions/qc.fish b/functions/qc.fish index 87a1acf..7227956 100644 --- a/functions/qc.fish +++ b/functions/qc.fish @@ -4,6 +4,9 @@ # CATEGORY # 12-ai-and-developer-tools # +# DEPENDENCIES +# aichat +# # SYNOPSIS # qc [prompt...] # diff --git a/functions/qr.fish b/functions/qr.fish index d6de68f..4bd133e 100644 --- a/functions/qr.fish +++ b/functions/qr.fish @@ -4,6 +4,9 @@ # CATEGORY # 10-network # +# DEPENDENCIES +# curl, qrencode +# # CLASSIFICATION # self-limiting(cat), network # diff --git a/functions/rand_string.fish b/functions/rand_string.fish index 0a9b7d4..4aee5ab 100644 --- a/functions/rand_string.fish +++ b/functions/rand_string.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# shuf +# # CLASSIFICATION # bypasses-shadow(cat) # diff --git a/functions/rawfish.fish b/functions/rawfish.fish index be0e586..ed2c1be 100644 --- a/functions/rawfish.fish +++ b/functions/rawfish.fish @@ -4,6 +4,9 @@ # CATEGORY # 03-editors-and-viewers # +# DEPENDENCIES +# fish +# # SYNOPSIS # rawfish [args...] # diff --git a/functions/rm.fish b/functions/rm.fish index 50c452a..038c9b7 100644 --- a/functions/rm.fish +++ b/functions/rm.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/filesystem # +# DEPENDENCIES +# trash +# # CLASSIFICATION # bypasses-shadow(rm), destructive # diff --git a/functions/sbver.fish b/functions/sbver.fish index 80162eb..baf9f3a 100644 --- a/functions/sbver.fish +++ b/functions/sbver.fish @@ -4,6 +4,9 @@ # CATEGORY # 07-system-and-monitoring # +# DEPENDENCIES +# sbctl +# # CLASSIFICATION # self-limiting(grep) # diff --git a/functions/scrub.fish b/functions/scrub.fish index d91c36d..c26b82b 100644 --- a/functions/scrub.fish +++ b/functions/scrub.fish @@ -4,6 +4,9 @@ # CATEGORY # 01-file-and-directory # +# DEPENDENCIES +# fd, trash +# # CLASSIFICATION # uses-shadow(rm), bypasses-shadow(rm), destructive # diff --git a/functions/search.fish b/functions/search.fish index bd2560b..6a3039e 100644 --- a/functions/search.fish +++ b/functions/search.fish @@ -4,6 +4,9 @@ # CATEGORY # 05-package-management # +# DEPENDENCIES +# paru, yay +# # CLASSIFICATION # network # diff --git a/functions/smart_exit.fish b/functions/smart_exit.fish index 135c333..d4300ec 100644 --- a/functions/smart_exit.fish +++ b/functions/smart_exit.fish @@ -8,6 +8,9 @@ # site exit-plain: overrides/key-bindings # site logging-guard: logging/terminal-capture # +# DEPENDENCIES +# kitty, ps, _scrollback_prune_junk +# # CLASSIFICATION # self-limiting(rm,mkdir), destructive # diff --git a/functions/split.fish b/functions/split.fish index 2b4bad6..c225fdb 100644 --- a/functions/split.fish +++ b/functions/split.fish @@ -7,6 +7,9 @@ # COMPONENT # integrations/window-mgmt # +# DEPENDENCIES +# kitty +# # SYNOPSIS # split [-h | -v] [command...] # diff --git a/functions/spwin.fish b/functions/spwin.fish index 50532b7..d01fae0 100644 --- a/functions/spwin.fish +++ b/functions/spwin.fish @@ -7,6 +7,9 @@ # COMPONENT # integrations/window-mgmt # +# DEPENDENCIES +# kitty +# # SYNOPSIS # spwin [args...] # diff --git a/functions/ssh.fish b/functions/ssh.fish index 1c80d4f..9a088e9 100644 --- a/functions/ssh.fish +++ b/functions/ssh.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/network # +# DEPENDENCIES +# kitten +# # CLASSIFICATION # bypasses-shadow(ssh), network # diff --git a/functions/superpowers.fish b/functions/superpowers.fish index 23443dc..9f6eccc 100644 --- a/functions/superpowers.fish +++ b/functions/superpowers.fish @@ -4,6 +4,9 @@ # CATEGORY # 12-ai-and-developer-tools # +# DEPENDENCIES +# agy +# # CLASSIFICATION # uses-shadow(claude) # diff --git a/functions/tab.fish b/functions/tab.fish index 601b4d1..a5c9a8b 100644 --- a/functions/tab.fish +++ b/functions/tab.fish @@ -7,6 +7,9 @@ # COMPONENT # integrations/window-mgmt # +# DEPENDENCIES +# kitty +# # SYNOPSIS # tab [args...] # diff --git a/functions/tmux-clean.fish b/functions/tmux-clean.fish index 6d878e8..6be766e 100644 --- a/functions/tmux-clean.fish +++ b/functions/tmux-clean.fish @@ -4,6 +4,9 @@ # CATEGORY # 14-miscellaneous # +# DEPENDENCIES +# tmux +# # SYNOPSIS # tmux-clean # diff --git a/functions/top.fish b/functions/top.fish index bf8ae10..1457863 100644 --- a/functions/top.fish +++ b/functions/top.fish @@ -7,6 +7,9 @@ # COMPONENT # aliases/monitor # +# DEPENDENCIES +# btop +# # CLASSIFICATION # bypasses-shadow(top) # diff --git a/functions/upgrade.fish b/functions/upgrade.fish index 19460d7..ec3a5a0 100644 --- a/functions/upgrade.fish +++ b/functions/upgrade.fish @@ -7,6 +7,9 @@ # COMPONENT # integrations/pkg-upgrade # +# DEPENDENCIES +# paru, yay +# # CLASSIFICATION # network # diff --git a/functions/view.fish b/functions/view.fish index e793b6c..47b3d9a 100644 --- a/functions/view.fish +++ b/functions/view.fish @@ -4,6 +4,9 @@ # CATEGORY # 03-editors-and-viewers # +# DEPENDENCIES +# nvim +# # CLASSIFICATION # uses-shadow(less) # diff --git a/functions/zoxide.fish b/functions/zoxide.fish index defce5d..4089491 100644 --- a/functions/zoxide.fish +++ b/functions/zoxide.fish @@ -6,6 +6,9 @@ # CATEGORY # 02-navigation # +# DEPENDENCIES +# zoxide +# # INTERNAL SYNOPSIS # _zoxide_z_complete [comp] [desc] #