diff --git a/tmux.conf b/tmux.conf index a6df90e..f6e9b30 100644 --- a/tmux.conf +++ b/tmux.conf @@ -35,9 +35,10 @@ bind-key a if -F '#{pane_synchronized}' \ set-window-option pane-active-border-style fg=colour02; \ set-window-option pane-border-style fg=colour02' -# Bind "z" & "e" repeatable keys to switch panes and zoom in. Just zomming in is rebinded to "Z" +# Rebind zoom/unzoom current pane from 'z' to 'Z' and make it repeatable unbind-key z -bind-key Z resize-pane -Z +bind-key -r Z resize-pane -Z +# Bind 'e' and 'z' as repeatable keys to switch pane and zoom on it bind-key -r e select-pane -t .+1 \; resize-pane -Z bind-key -r z select-pane -t .-1 \; resize-pane -Z @@ -83,6 +84,13 @@ set-option -g message-style bg=colour04,fg=colour08 # ----- Windows ----- +# Rebind 'n' and 'p' as repeatable keys to switch windows +bind-key -r n select-window -t:+1 +bind-key -r p select-window -t:-1 + +# open a fzf popup windows changer +bind-key C-k display-popup -E "tmux list-windows | sed -E 's/:.*$//' | grep -v \"^$(tmux display-message -p '#I')\$\" | fzf --reverse | xargs tmux select-window -t" + # open a fzf popup session changer bind-key C-j display-popup -E "tmux list-sessions | sed -E 's/:.*$//' | grep -v \"^$(tmux display-message -p '#S')\$\" | fzf --reverse | xargs tmux switch-client -t"