diff options
| author | Igor Soarez <igor@soarez.org> | 2026-10-19 16:19:10 +0300 |
|---|---|---|
| committer | Igor Soarez <igor@soarez.org> | 2026-10-19 16:19:10 +0300 |
| commit | 3bace4ac392fb914263377369383f5ac23111c61 (patch) | |
| tree | 6dbd48104e158cb7af6aebe774440181eb44eb09 /README.md | |
| parent | ab33633ceb9e4bea3e292b2371241797d1587d02 (diff) | |
wait for tmux at startup, force utf-8 for tmux clients, add launchd packaging
running under launchd, the tmux client defaults to the c locale, which
makes tmux mangle tab-separated -f output into underscores, so every
pane parsed as one field and the watcher silently saw nothing; invoke
tmux with -u so format output is locale-independent. drop the startup
fail-fast: the watcher now waits for a tmux server and attaches when one
appears, which is the right shape for a login agent. ship the launchd
plist under packaging/launchd.
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 19 |
1 files changed, 16 insertions, 3 deletions
@@ -56,6 +56,19 @@ screens such as Claude's transcript never change state. ## Status -Early scaffold. Roadmap: menu bar UI (Swift shell over the daemon), tmux -control-mode event source instead of polling, configurable notification -policy. +Early scaffold. Roadmap: menu bar UI (Swift shell over the daemon), configurable +notification policy. + +### Running as a login agent (launchd) + +`packaging/launchd/dev.dingger.dingger.plist` runs `dingger watch` at login +with auto-restart; adjust the user path, then: + +```bash +launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/dev.dingger.dingger.plist +``` + +dingger does not require tmux to be running first — it waits for a server and +attaches when one appears. All tmux invocations use `-u` (forced UTF-8): under +launchd's C locale, tmux mangles tab-separated `-F` output into underscores, +which would silently hide every pane. |
