Ship herdr alongside tmux (#6406)
* Ship herdr with a config that mirrors our tmux setup Installs herdr through the mise shim, ships the matching config as an Omarchy default, and adds the usual refresh/restart pair. The keybindings map tmux sessions to workspaces, windows to tabs, and keep both the prefix and direct bindings from config/tmux/tmux.conf. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * Add herdr versions of the tmux dev layout functions hdl, hds, hdlm, and hsl drive herdr through its socket API instead of tmux. hsl tiles into a real grid since herdr has no select-layout tiled. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * Namespace the herdr layout helpers so they stay out of the shell Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * Create hdlm's tabs in its own workspace instead of the focused one herdr tab create follows the focused workspace without --workspace, so switching workspaces while hdlm loops scatters the new tabs. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * Lay hsl's grid out in visual order Splitting the first column repeatedly inserted each new column between it and the previous one, so uneven counts put the spare row in a middle column instead of the last. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * Report herdr config reload failures instead of swallowing them Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * Hide herdr's pane scrollbars to match tmux Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * Escape queued herdr layout commands * Install herdr from the omarchy-herdr package instead of mise * Use native herdr resize keybindings for tmux-style pane resizing * Rename the omarchy-herdr package to herdr --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
19572a13c7
commit
dd61d4a75b
@@ -0,0 +1,19 @@
|
||||
echo "Install herdr from the Omarchy package repo and seed its config"
|
||||
|
||||
# The package was briefly published as omarchy-herdr; herdr replaces it
|
||||
omarchy-pkg-drop omarchy-herdr
|
||||
omarchy-pkg-add herdr
|
||||
|
||||
# An earlier revision of this migration installed herdr through mise. Drop that
|
||||
# install so a stale client can't shadow the packaged /usr/bin/herdr with an
|
||||
# older wire protocol.
|
||||
rm -f "$HOME/.local/bin/herdr"
|
||||
if mise ls herdr 2>/dev/null | grep -q herdr; then
|
||||
mise unuse -g herdr &>/dev/null || true
|
||||
mise uninstall -a herdr &>/dev/null || true
|
||||
fi
|
||||
rm -rf "$HOME/.local/share/mise/installs/herdr" "$HOME/.local/share/mise/shims/herdr"
|
||||
|
||||
# Only seed. A user who already has a herdr config keeps it; omarchy-refresh-herdr
|
||||
# is the explicit way to take the shipped defaults.
|
||||
[[ -f "$HOME/.config/herdr/config.toml" ]] || omarchy-refresh-config herdr/config.toml
|
||||
Reference in New Issue
Block a user