diff --git a/docs/fish-config.1 b/docs/fish-config.1 index 32cf455..301f063 100644 --- a/docs/fish-config.1 +++ b/docs/fish-config.1 @@ -96,6 +96,7 @@ conf.d/ first_run.fish One-time init: Fisher bootstrap, theme, welcome key_bindings.fish Custom key bindings and Vi mode logging-events.fish C5 --on-variable event handlers; syncs logging state at startup + kitty-watcher-reminder.fish C5 per-session reminder to set up the Kitty watcher paru-wrapper.fish Auto-generates \[ti]/.local/bin/paru logging wrapper puffer.fish !! / !$ / ./ expansion (bundled from nickeb96/puffer-fish) tmux-logging.fish C5 starts tmux pipe-pane capture when fish runs inside tmux @@ -1769,6 +1770,32 @@ replay \[dq]source \[ti]/.bashrc\[dq] replay \[dq]export FOO=bar\[dq] \f[R] .fi +.SS kitty-logging +.IP +.nf +\f[C] +Synopsis: kitty-logging [install|uninstall|status|dismiss] [-h] + +Manages the Kitty scrollback watcher that powers C5 logging. Ships a +canonical, version-marked watcher and installs it into the Kitty config +directory, wiring it into kitty.conf through a sentinel-marked managed +block. Commenting out any conflicting watcher line avoids double-capture. + +Commands: + install Copy/refresh the watcher and add the managed block + uninstall Remove the managed block and the watcher file + status Show wiring, installed watcher version, and C5 state + dismiss Stop the per-session setup reminder + +Runtime capture stays governed by the C5 .logging_disabled sentinel, so +disabling __fish_config_op_logging makes the watcher inert without +uninstalling. Install affects new Kitty windows only. + +Example: + kitty-logging install + kitty-logging status +\f[R] +.fi .SS tmux-clean .IP .nf @@ -2184,6 +2211,15 @@ Because the capture happens at exit, toggling __fish_config_op_logging takes effect on the next exit with no restart or sentinel coordination needed \[em] the C5 guard is re-checked when the handler fires. .PP +The Kitty watcher is managed by the kitty-logging command: it installs a +version-marked watcher (fish-config-watcher.py) into the Kitty config +directory and wires it into kitty.conf via a managed block. +Inside Kitty, a non-blocking per-session reminder points first-time +users at \f[V]kitty-logging install\f[R] until they install or run +\f[V]kitty-logging dismiss\f[R]. +Install affects new Kitty windows only; runtime disable is still handled +by the .logging_disabled sentinel. +.PP Logging coordination via sentinel file .PP C5 uses a sentinel file to synchronize state between the shell and diff --git a/docs/html/11-7-customization.html b/docs/html/11-7-customization.html index 50ed2f1..64881fc 100644 --- a/docs/html/11-7-customization.html +++ b/docs/html/11-7-customization.html @@ -727,6 +727,14 @@ and then prunes old zellij_*.log files the same way. Because the capture happens at exit, toggling __fish_config_op_logging takes effect on the next exit with no restart or sentinel coordination needed — the C5 guard is re-checked when the handler fires.
+The Kitty watcher is managed by the kitty-logging command: it
+installs a version-marked watcher (fish-config-watcher.py) into the
+Kitty config directory and wires it into kitty.conf via a managed block.
+Inside Kitty, a non-blocking per-session reminder points first-time
+users at kitty-logging install until they install or run
+kitty-logging dismiss. Install affects new Kitty windows
+only; runtime disable is still handled by the .logging_disabled
+sentinel.
Logging coordination via sentinel file
C5 uses a sentinel file to synchronize state between the shell and out-of-process components (the Kitty watcher and all running diff --git a/docs/html/3-description.html b/docs/html/3-description.html index 2649fdb..441bfd9 100644 --- a/docs/html/3-description.html +++ b/docs/html/3-description.html @@ -526,6 +526,7 @@ conf.d/ first_run.fish One-time init: Fisher bootstrap, theme, welcome key_bindings.fish Custom key bindings and Vi mode logging-events.fish C5 --on-variable event handlers; syncs logging state at startup + kitty-watcher-reminder.fish C5 per-session reminder to set up the Kitty watcher paru-wrapper.fish Auto-generates ~/.local/bin/paru logging wrapper puffer.fish !! / !$ / ./ expansion (bundled from nickeb96/puffer-fish) tmux-logging.fish C5 starts tmux pipe-pane capture when fish runs inside tmux diff --git a/docs/html/9-5-functions-reference.html b/docs/html/9-5-functions-reference.html index 9faab59..39fbf22 100644 --- a/docs/html/9-5-functions-reference.html +++ b/docs/html/9-5-functions-reference.html @@ -1174,17 +1174,38 @@ Fish session. Useful for sourcing Bash scripts. replay "source ~/.bashrc" replay "export FOO=bar" -
Synopsis: kitty-logging [install|uninstall|status|dismiss] [-h]
+
+Manages the Kitty scrollback watcher that powers C5 logging. Ships a
+canonical, version-marked watcher and installs it into the Kitty config
+directory, wiring it into kitty.conf through a sentinel-marked managed
+block. Commenting out any conflicting watcher line avoids double-capture.
+
+Commands:
+ install Copy/refresh the watcher and add the managed block
+ uninstall Remove the managed block and the watcher file
+ status Show wiring, installed watcher version, and C5 state
+ dismiss Stop the per-session setup reminder
+
+Runtime capture stays governed by the C5 .logging_disabled sentinel, so
+disabling __fish_config_op_logging makes the watcher inert without
+uninstalling. Install affects new Kitty windows only.
+
+Example:
+ kitty-logging install
+ kitty-logging status
+Synopsis: tmux-clean
Kills all detached (unattached) tmux sessions, leaving attached ones
running.
-Synopsis: wake-lock <command> [args...]
Runs a command under systemd-inhibit, preventing the system from going
idle or sleeping until the command completes.
wake-lock rsync -avz src/ dest/
-Synopsis: zellij [args...]
Launches zellij with the Catppuccin Mocha theme applied.