11

I know I can swap windows using swap-window -d *source* -t *dest*, but I'd like to be able to swap the current window with the window to the left/right (effectively, 'move' a window left and right through the list). In particular, I want to map this command to a shortcut in my tmux.conf. I think I could do this if there was a way to reference the current window number in the tmux.conf file and do something like this:

swap-window -t *cur_window -1*

Is this possible?

2 Answers 2

8

The tmux manpage describes the target-window syntax accepted by swap-window’s -s and -t options. Specifically, you can use + and - to refer to the next and previous window numbers.

Thus, you might bind < and > to move windows left and right like this:

bind-key < swap-window -t -
bind-key > swap-window -t +
2
  • 1
    The latest version of tmux 3.3 has now by default the keybind Ctrl+B, Shit+, (or Ctrl+B, <) to open a menu to swap window left/right.
    – user
    Feb 19, 2021 at 13:58
  • There is also an opportunity to set swap-window ... -d to keep your current window focused (i. e. viewport moves with the window).
    – intelfx
    Apr 7 at 13:15
7

Chris's answer is great!

Just some improve:

bind-key -r < swap-window -t -
bind-key -r > swap-window -t +

Flag -r indicates this key may repeat. This is may more convenient.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .