Commit Graph
616 Commits
Author SHA1 Message Date
rootiest 9d6923f225 fix(docs): merge, not overwrite, COMPONENT lines on identity collision
collect_components() used dict.update(), which let conf.d silently
overwrite functions/ (or vice versa) when the same bare identity
appears in both, e.g. functions/auto-pull.fish and
conf.d/auto-pull.fish. The runtime guard can only ever look up the
bare status current-function/basename string, so both call sites
genuinely share one identity and their raw COMPONENT lines must be
concatenated, not replaced.
2026-08-17 20:42:04 -04:00
rootiest c0628dbd4c feat(docs): add component registry generator 2026-08-17 20:34:48 -04:00
rootiest 31b47ddfc5 feat(docs): parse # COMPONENT headers in manualtools 2026-08-17 20:29:02 -04:00
rootiest 9642cd69db feat(config): rewrite guard as self-identifying with C0 and site support 2026-08-17 20:23:49 -04:00
rootiest 7fa5ca2568 feat(config): add component registry lookup helper 2026-08-17 20:19:42 -04:00
rootiest 94a4fbe45f feat(config): add sub-category cascade evaluator 2026-08-17 20:15:29 -04:00
rootiest 04a02d089f style(docs-site): size the Gitea header icon up to 1.5rem
Generate documentation / build-docs (push) Successful in 3m26s
At the default 1em (16px) it read as noticeably smaller than the
other header controls, especially next to the logo. Bumped to a fixed
1.5rem — well within the nav bar's existing content height, so the
header itself doesn't grow.
2026-08-17 16:18:02 -04:00
rootiest 3ef83d1747 Merge pull request 'docs(site): use real Gitea logo for header social link' (#106) from feat-starlight-gitea-icon into main
Generate documentation / build-docs (push) Successful in 3m43s
Reviewed-on: #106
2026-08-17 20:05:56 +00:00
rootiest f865ad766d perf(docs-site): minify header logo SVG
logo.svg was 56KB of unminified, high-precision path data with no
embedded raster. Running it through SVGO (default preset, multipass)
cuts it to ~20KB with no visual difference.

perf(docs-site): further minify header logo SVG. Cut to ~8.9KB with no visual difference.
2026-08-17 16:03:05 -04:00
rootiest f32e0d0ce5 feat(docs-site): add starlight-plugin-icons, use real Gitea logo in header
The header social link used Starlight's generic `code-branch` icon.
Wires up starlight-plugin-icons + UnoCSS (Iconify) and overrides
SocialIcons to render `pajamas:gitea` for the Gitea link instead, while
falling back to Starlight's default icon set for anything else. Sidebar
and codeblock icon support are enabled but unused for now.
2026-08-17 15:30:42 -04:00
Gitea Actions 8a937124d3 chore(docs): regenerate manual and man page 2026-08-17 19:12:59 +00:00
rootiest d8feaf7143 Merge pull request 'docs(fisher-plugins): clarify sponge's history-purge security model, link plugin repos' (#105) from docs-sponge-privacy-clarity into main
Generate documentation / build-docs (push) Successful in 3m34s
Reviewed-on: #105
2026-08-17 19:09:27 +00:00
rootiest 22dcd31c05 docs(fisher-plugins): clarify sponge's history-purge security model, link plugin repos
Explains that a matched command is actively deleted from history and
force-saved within about one prompt cycle by default, not deferred to
shell exit, and calls out sponge_purge_only_on_exit as the setting that
would change that (a killed/crashed session never triggers fish_exit).
Also hyperlinks the Fisher-managed and bundled plugin names to their
upstream repos on the Starlight site.
2026-08-17 15:06:19 -04:00
Gitea Actions cbce46b63f chore(docs): regenerate manual and man page 2026-08-14 20:47:11 +00:00
rootiest 8ab69f53ed Merge pull request 'feat(deps): add Optional/Terminal Emulator tiers, fix docker prompt hang and ov install path' (#104) from feat-fish-deps-optional-tiers into main
Generate documentation / build-docs (push) Successful in 3m8s
Reviewed-on: #104
2026-08-14 20:44:10 +00:00
rootiest c17f6663db feat(deps): add Optional/Terminal Emulator tiers, fix docker prompt hang and ov install path
Reworks fish-deps' dependency classification from three tiers to five:
Required, Recommended, Optional, Terminal Emulators, and Integrations.

- Add an Optional tier for single-purpose wrapper conveniences that only
  matter if you already use that specific tool (btop, dust, duf,
  prettyping, go, lazygit, lazydocker, docker, yt-dlp, screen). Skipped by
  `fish-deps install`/`sync` by default.
- Split kitty/wezterm into their own Terminal Emulators tier, since only
  the one matching $TERM is ever relevant to a given user.
- Add --optional, --terminals, and --all flags to `install`/`sync` to
  opt back into the skipped tiers, with a summary of how many were
  skipped and which flag restores them.
- Fix `_fish_deps_status` marking missing Integrations as critical (red)
  the same as Required — only Required is red now; Recommended stays
  yellow, everything else renders as a neutral dim note.

Also fixes two bugs surfaced during dependency testing on a fresh
install:

- `fish_right_prompt` called `docker context show` on every prompt with
  no `type -q docker` guard, unlike every other optional integration in
  this config — on a system without docker this printed a visible
  "Unknown command: docker" block on every single prompt render. Added
  the missing guard, and hardened the `ld` wrapper with explicit
  docker/lazydocker presence checks.
- `ov`'s catalog entry offered `cargo install ov` as its preferred
  install method, but crates.io's `ov` is an unrelated crate, not the
  noborus/ov pager — cargo would silently install the wrong package.
  Removed the cargo path; `ov` now prefers `go install
  github.com/noborus/ov@latest` (ahead of the system PM) when go is
  available, since not all distros package `ov` in their base repos,
  and falls back to the system PM otherwise.
2026-08-14 16:42:37 -04:00
Gitea Actions 20adb8f75c chore(docs): regenerate manual and man page 2026-08-14 20:05:59 +00:00
rootiest 0e63b4fbb7 Merge pull request 'fix(mv): bring header and completions up to repo conventions' (#103) from fix-mv-header-conformance into main
Generate documentation / build-docs (push) Successful in 3m15s
Reviewed-on: #103
2026-08-14 20:02:53 +00:00
rootiest adbcd1d3c0 fix(mv): bring header and completions up to repo conventions
The EXIT STATUS block used a single space before the ">0" row's
description, which falls below the doc pipeline's 2-space column
threshold and silently degrades the rendered site page from a table
(like rm's) to a plain indented block. Pad it to match. Also strip
trailing whitespace from two DESCRIPTION lines and add --wraps='mv'
so fish inherits real mv's completions, matching the bash/top wrapper
convention.
2026-08-14 16:02:07 -04:00
rootiest 9e037f2a08 Merge pull request 'feat(docs): publish llms.txt for AI agent consumption' (#102) from feat-docs-llms-txt into main
Generate documentation / build-docs (push) Successful in 3m12s
Reviewed-on: #102
2026-08-14 19:58:10 +00:00
rootiest 96df21444b feat(docs): publish llms.txt for AI agent consumption
Add the starlight-llms-txt plugin so the docs build emits llms.txt,
llms-full.txt, and llms-small.txt alongside the regular pages, making
the manual queryable by MCP-compatible agents without depending on a
third-party indexing service.

Also bump js-yaml, nanoid, and sharp in docs/site to clear three
high-severity advisories (quadratic YAML omap parsing, a zero-size
nanoid loop, and inherited libvips CVEs) flagged by npm audit while
touching the same lockfile.
2026-08-14 15:50:21 -04:00
Gitea Actions 7875b83a94 chore(docs): regenerate manual and man page 2026-08-14 19:28:36 +00:00
rootiest 0765a2726a Merge pull request 'feat(mv): wrap the mv command to facilitate moving a directory up the tree' (#101) from mv-up-tree into main
Generate documentation / build-docs (push) Successful in 3m15s
Reviewed-on: #101
2026-08-14 19:25:28 +00:00
rootiest 80d4f5d9fa feat(mv): wrap the mv command to facilitate moving a directory up the tree 2026-08-14 15:24:40 -04:00
rootiest 391e2b6750 chore: ignore auto-generated uv env vars 2026-08-14 15:22:04 -04:00
Gitea Actions fc420fad72 chore(docs): regenerate manual and man page 2026-08-06 20:32:45 +00:00
rootiest dfdc1063ba Merge pull request 'docs(manual): format plugins and installation pages' (#100) from docs-format-plugins-installation into main
Generate documentation / build-docs (push) Successful in 3m32s
Reviewed-on: #100
2026-08-06 20:29:18 +00:00
rootiest 4ff120cc5d docs(manual): format plugins and installation pages 2026-08-06 16:28:13 -04:00
Gitea Actions 7c99b475e3 chore(docs): regenerate manual and man page 2026-08-06 20:14:19 +00:00
rootiest 262b53c6c4 Merge pull request 'docs: dynamic abbreviations with markdown tables' (#99) from feature/dynamic-abbreviations-docs into main
Generate documentation / build-docs (push) Successful in 3m30s
Reviewed-on: #99
2026-08-06 20:10:55 +00:00
rootiest 0ff6be3f81 Merge branch 'main' into feature/dynamic-abbreviations-docs 2026-08-06 20:10:18 +00:00
rootiest 86d20105e5 ci: move workflow to .github to increase hosting compatibility 2026-08-06 16:09:57 -04:00
rootiest 6790bf1430 ci: remove obsoleted docs-drift workflow 2026-08-06 16:09:28 -04:00
rootiest e76668d3b1 docs: fix abbreviations file ordering and capitalization for tests 2026-08-06 16:07:08 -04:00
rootiest 204b13781d docs: use indented text tables for abbreviations and strip CardGrid from concat 2026-08-06 16:00:48 -04:00
Gitea Actions 0b9cf5a928 chore(docs): regenerate manual and man page 2026-08-06 19:48:00 +00:00
rootiest 93831564a8 Merge pull request 'feat: implement __rand_string generator and update jobrunner backend' (#98) from feature/rand-string-generator into main
Generate documentation / build-docs (push) Successful in 3m44s
Offline docs drift reminder / remind (push) Successful in 15s
Reviewed-on: #98
2026-08-06 19:44:25 +00:00
rootiest 82d761b026 docs: restructure abbreviations into individual pages for sidebar 2026-08-06 15:38:15 -04:00
rootiest 742fd7941d docs: use markdown tables for abbreviations
Generates actual markdown tables instead of indented text blocks to ensure MDX/Starlight correctly renders abbreviations.
2026-08-06 15:04:06 -04:00
rootiest cb74cd84e2 fix: change jobrunner auto-naming to adjective-animal 2026-08-02 05:47:29 -04:00
rootiest 89fdfc8e72 refactor: use -n flag for explicit jobrunner names 2026-08-02 05:45:35 -04:00
rootiest 0e9c3b4b27 feat: implement jobrunner auto-naming fallback 2026-08-02 05:41:48 -04:00
rootiest d5535a38ad feat: add verb dictionary and preserve literal string casing in rand_string 2026-08-02 05:37:06 -04:00
rootiest 01553b71fd refactor: drop __ prefix and add -h flag to rand_string 2026-08-02 05:32:33 -04:00
rootiest ffff95f3b9 feat: implement __rand_string generator and update jobrunner to use tmux 2026-08-02 05:21:29 -04:00
rootiest 674a50ea05 feat(jobrunner): add named background job manager backed by GNU screen
Adds jobrunner (short alias jr) for running, listing, inspecting,
re-attaching to, and terminating detached background tasks. Unlike bkg
and detach, which discard output, a jobrunner job keeps a live terminal
that survives closing the shell and can be restored later with attach.

Includes the __jobrunner_sessions parser shared by the function and its
completions, dynamic job-name completions, and screen in the fish-deps
catalog.
2026-08-02 04:40:07 -04:00
Gitea Actions a2d52e1ec2 chore(docs): regenerate manual and man page 2026-07-28 07:37:49 +00:00
rootiest 84c6e9b79d Merge pull request 'fix(bindings): restore directory segment autosuggestion on ctrl-right' (#97) from fix-autosuggestion-ctrl-right into main
Generate documentation / build-docs (push) Successful in 2m59s
Reviewed-on: #97
2026-07-28 07:34:49 +00:00
rootiest 2d84bcdf7e docs(bindings): document Ctrl+Right autosuggestion behavior 2026-07-28 03:34:02 -04:00
rootiest 935ba904bd fix(bindings): restore directory segment autosuggestion on ctrl-right 2026-07-28 03:29:52 -04:00