From a8468f340237965a7474c1e658411b4f7f519b8e Mon Sep 17 00:00:00 2001 From: Rootiest Date: Tue, 18 Aug 2026 18:12:41 -0400 Subject: [PATCH] docs(manual): document sub-categories in customization, reference index, and troubleshooting Sub-categories were previously undocumented outside README and the per-category reference pages. Add a paragraph to 07-customization.md (the canonical opinionated-components page) explaining the sub-category cascade, a short note to the 08-components-reference index pointing readers at each category's sub-category list, and a troubleshooting note that __fish_config_op__ variables follow the same check/reset pattern as category variables. --- docs/manual/07-customization.md | 13 +++++++++++++ docs/manual/08-components-reference/index.md | 4 ++++ docs/manual/12-troubleshooting.md | 7 +++++++ 3 files changed, 24 insertions(+) diff --git a/docs/manual/07-customization.md b/docs/manual/07-customization.md index 3e9d162..81f2049 100644 --- a/docs/manual/07-customization.md +++ b/docs/manual/07-customization.md @@ -145,6 +145,19 @@ NOTE: - Disabled integration commands (spwin, tab, split, hist, logs, upgrade) print an error naming the variable that disabled them. - On CachyOS, the distro fish config's own aliases, history override, and bang-bang bindings are stripped per category as well. +### Sub-categories + +Each of the six categories further sub-divides into two to six +sub-categories, each with its own `__fish_config_op__` +variable (e.g. `__fish_config_op_aliases_filesystem`). These follow the +exact same truthy/falsy/unset cascade one level deeper: an explicit +sub-category value overrides the master switch and the parent category's +setting, and an unset sub-category inherits from its parent category (which +in turn inherits from `__fish_config_opinionated`). Run config-settings and +press Enter on a category row to browse and toggle its sub-categories +interactively. See [Components Reference](/08-components-reference/) for the +full sub-category breakdown of every category. + ## Prompt and Theme diff --git a/docs/manual/08-components-reference/index.md b/docs/manual/08-components-reference/index.md index 44969b1..a433194 100644 --- a/docs/manual/08-components-reference/index.md +++ b/docs/manual/08-components-reference/index.md @@ -19,6 +19,10 @@ category variable. C5 [Logging and Capture](/08-components-reference/05-c5-logging-and-capture/) — Session logs, command duration C6 [Greeting & First-Run UI](/08-components-reference/06-c6-greeting-and-first-run-ui/) — Custom startup banner +Each category further sub-divides into two to six sub-categories (24 in +total) with their own `__fish_config_op__` toggles +-- see that category's page for its sub-category list. + ## Per-function overrides: `C0`/`always` Every guarded function or file can also carry a reserved `always/on` or diff --git a/docs/manual/12-troubleshooting.md b/docs/manual/12-troubleshooting.md index 166fec2..a823530 100644 --- a/docs/manual/12-troubleshooting.md +++ b/docs/manual/12-troubleshooting.md @@ -237,6 +237,13 @@ Re-enable everything: set -Ue __fish_config_opinionated +Each category also has two to six sub-categories (e.g. +`__fish_config_op_aliases_filesystem`) that can be checked, disabled, or +reset the same way — `set -U __fish_config_op__ off` +and `set -Ue __fish_config_op__` work identically to +the category-level recipes above, just one level more granular. See +[Components Reference](/08-components-reference/) for the full list. + For an interactive alternative to setting these variables by hand, run `config-settings`. ---