Dotfiles/site-modules/core/files/bin/tmux-switch-pane
Ade Attwood 6b8cc6b420 feat(tmux): add popup window switcher
This is a script that will popup a window with a list of windows in a
fzf promp. When selected the window will be focused. If the window is in
another session the session will also be switched and the window focused
2022-12-22 19:56:02 +00:00

18 lines
591 B
Bash
Executable file

#!/bin/bash
#
# Script taken from
# https://gist.github.com/thugcee/41d1ba786fa5e66167ed6ee45e4f6346
# customizable
LIST_DATA="#{window_name} #{session_name} #{pane_current_command}"
FZF_COMMAND="fzf-tmux -p --delimiter=: --with-nth 4 --color=hl:2"
# do not change
TARGET_SPEC="#{session_name}:#{window_id}:#{pane_id}:"
# select pane
LINE=$(tmux list-panes -a -F "$TARGET_SPEC $LIST_DATA" | $FZF_COMMAND) || exit 0
# split the result
args=(${LINE//:/ })
# activate session/window/pane
tmux select-pane -t ${args[2]} && tmux select-window -t ${args[1]} && tmux switch-client -t ${args[0]}