aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tmux/.local/bin/tmux-tree
diff options
context:
space:
mode:
Diffstat (limited to 'tmux/.local/bin/tmux-tree')
-rwxr-xr-xtmux/.local/bin/tmux-tree16
1 files changed, 16 insertions, 0 deletions
diff --git a/tmux/.local/bin/tmux-tree b/tmux/.local/bin/tmux-tree
new file mode 100755
index 0000000..d60bb44
--- /dev/null
+++ b/tmux/.local/bin/tmux-tree
@@ -0,0 +1,16 @@
+#!/usr/bin/env bash
+
+tmux ls -F'#{session_id}' | while read -r s; do
+ S=$(tmux ls -F'#{session_id}#{session_name}: #{T:tree_mode_format}' | grep ^"$s")
+ session_info=${S##$s}
+ session_name=$(echo "$session_info" | cut -d ':' -f 1)
+ if [[ -n "$1" ]] && [[ "$1" == "$session_name" ]]; then
+ echo -e "\033[1;34m$session_info\033[0m"
+ else
+ echo -e "\033[1m$session_info\033[0m"
+ fi
+ tmux lsw -t"$s" -F'#{window_id}' | while read -r w; do
+ W=$(tmux lsw -t"$s" -F'#{window_id}#{T:tree_mode_format}' | grep ^"$w")
+ echo " ﬌ ${W##$w}"
+ done
+done