12

Where can I find a list of all tmux options? I know of tmux list-keys -t <table> which shows you various keybindings and their commands, but I'm looking for a comprehensive list of all possible tmux commands.

Jeff Schaller
  • 67,283
  • 35
  • 116
  • 255

6 Answers6

8

I have memorized tmux list-keys | less and tmux show -gw | less (I also check just -g, -w, and -s when I think I'm missing something).

That usually gives me anything I need to know, or set. I use man tmux then /OPTIONS for more.

Also remember that any command you would issue to Ctrl+b, : can also be passed to the tmux cli/cmd though tab-completion is a trick to set up there.

1

Running man tmux in the terminal displays the manual which has all available options. There are also online versions of the manual (e.g. http://manpages.ubuntu.com/manpages/vivid/en/man1/tmux.1.html)

Wwolfe
  • 44
  • 1
    The following online man page has been linked from the official page: http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man1/tmux.1?query=tmux&sec=1 – phk Oct 29 '15 at 21:36
  • That doesn't seem to include everything. For example begin-selection can't be found in the manpages. – danihodovic Oct 29 '15 at 21:45
  • @phk Thanks- I didn't go to the official tmux page, I just googled. I ran diff between the Ubuntu man and the OpenBSD man and can't see any differences – Wwolfe Oct 29 '15 at 22:26
  • @dani-h I've been looking for references to begin-selection and have only found 2 apart from the source code (http://unix.stackexchange.com/a/36896/109534) and (https://gist.github.com/snuggs/800936), so the source code is probably the way to go. – Wwolfe Oct 29 '15 at 22:29
  • man does not work if tmux was installed through conda. – Vovin May 23 '22 at 12:56
1

In case there is no formal documentation I found some of it in the source code. https://github.com/ThomasAdam/tmux/blob/master/mode-key.c for mode mappings

1

To list the options you can use

tmux show -A

(show is an alias for the longer show-options).

The -A option will show all the options in effect (with inherited options marked with an asterisk). You can also use -g (to show the global options), -p (for pane options), -w (window options) or -s (for session options).

zrajm
  • 894
0

options-table.c at source

  • This file has a tables with all the server, session and window * options. These tables are the master copy of the options with their real * (user-visible) types, range limits and default values.
0

Extract them from manpage

function tmux__list_options {
  local range
  case $1 in
    -s)
      range='/^ {5}Available server options/,/^ {5}Available session options/p'
      ;;
    -e)
      range='/^ {5}Available session options/,/^ {5}Available window options/p'
      ;;
    -w)
      range='/^ {5}Available window options/,/^ {5}Available pane options/p'
      ;;
    -p)
      range='/^ {5}Available pane options/,/^[A-Z]/p'
      ;;
    *)
      range='/^ {5}Available server options/,/^[A-Z]/p'
      ;;
  esac
  man -P cat tmux | sed -En "$range" | grep -E --color=never '^ {5}[a-z]'
}