aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tmux/.local/bin/tmux-sessions
blob: ac44580aa6cbe673a24b67cfed8fe5366093d6ad (plain)
1
2
3
4
5
6
7
8
9
10
#!/usr/bin/env bash

[[ -n "$TMUX" ]] && change="switch-client" || change="attach-session"

# shellcheck disable=2016
session=$(tmux list-sessions -F '#{session_last_attached}:#{session_name}' 2>/dev/null |
	sort -r | cut -d':' -f2 | sed "/$(tmux list-panes -F '#S')/d" |
	fzf-tmux -p -- --preview-window=right,80% --preview='tmux capture-pane -ep -t {}' \
		--bind 'ctrl-d:execute(tmux kill-session -t{})+reload(tmux list-sessions -F "#{session_name}" 2>/dev/null | sed "/$(tmux list-panes -F "#S")/d" )') &&
	tmux $change -t "$session" || exit 0