fix(config): split tricks.fish overrides-tricks into manpager/bang sites

overrides-tricks conflated two distinct C3 concerns under one shared site
(overrides/environment), so __fish_config_op_overrides_key_bindings off
left tricks.fish's bang-bang bindings active while abbr.fish/puffer.fish/
config.fish's equivalent sites correctly disabled -- a half-dismantled
bang-bang system per docs/manual's own atomic-gating claim. Split into
tricks-manpager (overrides/environment, matches PAGER/EDITOR/CDPATH) and
tricks-bang (overrides/key-bindings, matches abbr.fish/puffer.fish/
config.fish's bang-related sites, per
docs/manual/08-components-reference/03-c3-key-and-environment-overrides.md).

Also fixes stale prose in config.fish's top-of-file comment: the guard
signature is now <identity> [<site>], not <category>.
This commit is contained in:
2026-08-18 02:56:35 -04:00
parent 207540c093
commit db21efee0c
3 changed files with 8 additions and 5 deletions
+3 -1
View File
@@ -62,7 +62,8 @@ set -g __fish_config_op_registry_keys \
tmux-logging: \
top: \
tricks:aliases-tricks \
tricks:overrides-tricks \
tricks:tricks-bang \
tricks:tricks-manpager \
upgrade: \
wakatime:wakatime-autoexec \
wakatime:wakatime-hook \
@@ -127,6 +128,7 @@ set -g __fish_config_op_registry_values \
"logging/multiplexer-capture" \
"aliases/monitor" \
"aliases/filesystem" \
"overrides/key-bindings" \
"overrides/environment" \
"integrations/pkg-upgrade" \
"autoexec/telemetry" \
+4 -3
View File
@@ -9,7 +9,8 @@
# COMPONENT
# site aliases-tricks: aliases/filesystem
# site overrides-tricks: overrides/environment
# site tricks-manpager: overrides/environment
# site tricks-bang: overrides/key-bindings
## Environment setup
# Apply .profile: use this to put fish compatible .profile stuff in
@@ -28,7 +29,7 @@ end
# Format man pages using bat (only if bat is installed)
# Overriding $MANPAGER is opinionated (C3 overrides)
if type -q bat; and __fish_config_op_enabled (status basename) overrides-tricks
if type -q bat; and __fish_config_op_enabled (status basename) tricks-manpager
set -gx MANROFFOPT -c
set -gx MANPAGER "sh -c 'col -bx | bat -l man -p'"
end
@@ -41,7 +42,7 @@ set -gx __done_notification_urgency_level low
# Functions needed for !! and !$ https://github.com/oh-my-fish/plugin-bang-bang
# The bang-bang system is opinionated (C3 overrides) and is gated atomically
# here, in conf.d/abbr.fish, conf.d/puffer.fish, and functions/expand_*.fish.
if __fish_config_op_enabled (status basename) overrides-tricks
if __fish_config_op_enabled (status basename) tricks-bang
function __history_previous_command
switch (commandline -t)
case "!"
+1 -1
View File
@@ -7,7 +7,7 @@
# ───────────────────── Opinionated component guards ─────────────────────
# Opinionated components (AGENTS.md Task #3) are wrapped in
# __fish_config_op_enabled <category> guards throughout this file and conf.d/.
# __fish_config_op_enabled <identity> [<site>] guards throughout this file and conf.d/.
# The helper always evaluates the master switch __fish_config_opinionated
# first (falsy disables everything), then the per-category opt-out variable:
# __fish_config_op_aliases C1 — command shadows / flag injection