diff options
Diffstat (limited to 'scripts/window_renum')
-rwxr-xr-x | scripts/window_renum | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/window_renum b/scripts/window_renum new file mode 100755 index 0000000..ef0a87f --- /dev/null +++ b/scripts/window_renum @@ -0,0 +1,23 @@ +#!/usr/bin/env bash +# vim: set filetype=sh +# +# Author: Unknown +# Date: 2016-11-09 +# +# Description: Renumber tmux windows (1, 3, 4, 6) -> (1, 2, 3, 4) + +for session in $(tmux ls | awk -F: '{print $1}') ; do + active_window=$(tmux lsw -t ${session} | awk -F: '/\(active\)$/ {print $1}') + inum=1 + for window in $(tmux lsw -t ${session} | awk -F: '{print $1}') ;do + if [ ${window} -gt ${inum} ] ;then + echo "${session}:${window} -> ${session}:${inum}" + tmux movew -d -s ${session}:${window} -t ${session}:${inum} + fi + if [ ${window} = ${active_window} ] ;then + new_active_window=${inum} + fi + inum=$((${inum}+1)) + done + tmux select-window -t ${session}:${new_active_window} +done |