diff options
Diffstat (limited to 'tmux')
-rwxr-xr-x | tmux/.local/bin/tmux-sessions | 5 | ||||
-rwxr-xr-x | tmux/.local/bin/tmux-ssh | 14 |
2 files changed, 4 insertions, 15 deletions
diff --git a/tmux/.local/bin/tmux-sessions b/tmux/.local/bin/tmux-sessions index c4a7202..8cfd517 100755 --- a/tmux/.local/bin/tmux-sessions +++ b/tmux/.local/bin/tmux-sessions @@ -1,10 +1,11 @@ #!/bin/sh if [ "$#" -eq 0 ]; then + ATTACHED=$(tmux display -p '#S' 2>/dev/null) + # shellcheck disable=2016,2046 set -- $( - tmux list-sessions -F '#{session_last_attached}0:#{session_name}' 2>/dev/null | - sort -t':' -r -k1 | cut -d':' -f2 | sed "/^$(tmux display-message -p '#S')$/d" | + sshr -t -L "default" --exclude="$ATTACHED" | fzf-tmux "$FZF_TMUX_OPTS" -- --select-1 --exit-0 --preview-window=right,80% --preview='tmux capture-pane -ep -t {}' \ --bind 'ctrl-q:execute(tmux kill-session -t{})+reload(tmux list-sessions -F "#{session_name}" 2>/dev/null | sed "/$(tmux display-message -p "#S")/d" )' diff --git a/tmux/.local/bin/tmux-ssh b/tmux/.local/bin/tmux-ssh index e812fdd..a1d0f9b 100755 --- a/tmux/.local/bin/tmux-ssh +++ b/tmux/.local/bin/tmux-ssh @@ -1,15 +1,9 @@ #!/bin/sh -TMUX_SSH_HISTFILE="$XDG_STATE_HOME/tmux_ssh_history" - -write_hist() { - sed -i -e "/^$1\$/d" -e "\$a$1" "$TMUX_SSH_HISTFILE" || - echo "$1" >"$TMUX_SSH_HISTFILE" -} +HOST=$(tmux display -p '#h' 2>/dev/null) if [ "$#" -eq 0 ]; then ATTACHED=$(tmux display -p '#{?#{m:*ssh,#{socket_path}},#S,#{host}}' 2>/dev/null) - HOST=$(tmux display -p '#h' 2>/dev/null) set -- "$( sshr --all --exclude="$ATTACHED" | @@ -38,9 +32,3 @@ else tmux detach -E "tmux -L ssh attach -t $target" || exit 0 fi fi - -if [ "$ATTACHED" = "$HOST" ] && ! grep -q "$HOST" "$TMUX_SSH_HISTFILE"; then - write_hist "$HOST" -fi - -write_hist "$target" |