refactor(config): migrate multi-category files and config.fish to named sites

Adds multi-site `# COMPONENT` headers and converts every guard call site in
conf.d/tricks.fish, conf.d/abbr.fish, functions/smart_exit.fish,
conf.d/yay-wrapper.fish, conf.d/paru-wrapper.fish, conf.d/wakatime.fish,
conf.d/first_run.fish, and config.fish (9 sites across 3 categories) to the
self-identifying `(status current-function|basename) <site>` calling
convention. Regenerates conf.d/__fish_config_op_registry.fish.
This commit is contained in:
2026-08-18 02:39:47 -04:00
parent c3a2e35465
commit 6b2d3bf491
9 changed files with 111 additions and 26 deletions
+6 -2
View File
@@ -7,6 +7,10 @@
#
# Runs exactly once on the first interactive fish session after install.
# To reset for testing, run: set -Ue __fish_config_first_run_complete
#
# COMPONENT
# site first-run-greeting: greeting/first-run
# site first-run-bootstrap: autoexec/plugin-management
# Exit early in non-interactive shells (scripts, completions, subshells)
if not status is-interactive
@@ -36,7 +40,7 @@ end
# Printing a first-run welcome banner is opinionated (C6 greeting). The
# first-run state variable is already set unconditionally above, so
# disabling the greeting never re-triggers this file.
if __fish_config_op_enabled __fish_config_op_greeting
if __fish_config_op_enabled (status basename) first-run-greeting
echo ""
echo " Welcome to your fish shell configuration!"
echo " Run 'help config' for offline documentation."
@@ -48,7 +52,7 @@ end
# Startup side-effects below (Fisher curl, fisher update, theme apply) are
# opinionated (C2 auto-execution). The first-run state variable is already
# set above either way, so disabling auto-exec never re-triggers this file.
if not __fish_config_op_enabled __fish_config_op_autoexec
if not __fish_config_op_enabled (status basename) first-run-bootstrap
return
end