3 .\" Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
5 .\" Permission to use, copy, modify, and distribute this software for any
6 .\" purpose with or without fee is hereby granted, provided that the above
7 .\" copyright notice and this permission notice appear in all copies.
9 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 .\" WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
14 .\" IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
15 .\" OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
22 .Nd terminal multiplexer
27 .Op Fl c Ar shell-command
29 .Op Fl L Ar socket-name
30 .Op Fl S Ar socket-path
31 .Op Ar command Op Ar flags
35 is a terminal multiplexer:
36 it enables a number of terminals to be created, accessed, and
37 controlled from a single screen.
39 may be detached from a screen
40 and continue running in the background,
41 then later reattached.
45 is started it creates a new
49 and displays it on screen.
50 A status line at the bottom of the screen
51 shows information on the current session
52 and is used to enter interactive commands.
54 A session is a single collection of
56 under the management of
58 Each session has one or more
60 A window occupies the entire screen
61 and may be split into rectangular panes,
62 each of which is a separate pseudo terminal
65 manual page documents the technical details of pseudo terminals).
68 instances may connect to the same session,
69 and any number of windows may be present in the same session.
70 Once all sessions are killed,
74 Each session is persistent and will survive accidental disconnection
77 connection timeout) or intentional detaching (with the
81 may be reattached using:
87 a session is displayed on screen by a
89 and all sessions are managed by a single
91 The server and each client are separate processes which communicate through a
95 The options are as follows:
96 .Bl -tag -width "XXXXXXXXXXXX"
100 to assume the terminal supports 256 colours.
104 but indicates that the terminal supports 88 colours.
105 .It Fl c Ar shell-command
108 using the default shell.
111 server will be started to retrieve the
114 This option is for compatibility with
118 is used as a login shell.
120 Specify an alternative configuration file.
123 loads the system configuration file from
125 if present, then looks for a user configuration file at
127 The configuration file is a set of
129 commands which are executed in sequence when the server is first started.
131 If a command in the configuration file fails,
133 will report an error and exit without executing further commands.
134 .It Fl L Ar socket-name
136 stores the server socket in a directory under
138 the default socket is named
140 This option allows a different socket name to be specified, allowing several
146 a full path is not necessary: the sockets are all created in the same
149 If the socket is accidentally removed, the
151 signal may be sent to the
153 server process to recreate it.
155 Behave as a login shell.
156 This flag currently has no effect and is for compatibility with other shells
157 when using tmux as a login shell.
161 server option to prevent the server sending various informational messages.
162 .It Fl S Ar socket-path
163 Specify a full alternative path to the server socket.
166 is specified, the default socket directory is not used and any
171 attempts to guess if the terminal is likely to support UTF-8 by checking the
177 environment variables to be set for the string "UTF-8".
178 This is not always correct: the
180 flag explicitly informs
182 that UTF-8 is supported.
184 If the server is started from a client passed
186 or where UTF-8 is detected, the
190 options are enabled in the global window and session options respectively.
192 Request verbose logging.
193 This option may be specified multiple times for increasing verbosity.
194 Log messages will be saved into
195 .Pa tmux-client-PID.log
197 .Pa tmux-server-PID.log
198 files in the current directory, where
200 is the PID of the server or client process.
201 .It Ar command Op Ar flags
202 This specifies one of a set of commands used to control
204 as described in the following sections.
205 If no commands are specified, the
211 may be controlled from an attached client by using a key combination of a
214 (Ctrl-b) by default, followed by a command key.
216 The default command key bindings are:
218 .Bl -tag -width "XXXXXXXXXX" -offset indent -compact
220 Send the prefix key (C-b) through to the application.
222 Rotate the panes in the current window forwards.
228 Break the current pane out of the window.
230 Split the current pane into two, top and bottom.
232 List all paste buffers.
234 Split the current pane into two, left and right.
236 Kill the current window.
238 Prompt for a window index to select.
240 Rename the current window.
242 Delete the most recently copied buffer of text.
244 Prompt for an index to move the current window.
246 Select windows 0 to 9.
252 Move to the previously active pane.
254 Choose which buffer to paste interactively from a list.
256 List all key bindings.
258 Choose a client to detach.
260 Enter copy mode to copy text or view the history.
262 Paste the most recently copied buffer of text.
266 Detach the current client.
268 Prompt to search for text in open windows.
270 Display some information about the current window.
272 Move to the previously selected window.
274 Change to the next window.
276 Select the next pane in the current window.
278 Change to the previous window.
280 Briefly display pane indexes.
282 Force redraw of the attached client.
284 Select a new session for the attached client interactively.
288 Choose the current window interactively.
290 Kill the current pane.
292 Swap the current pane with the previous pane.
294 Swap the current pane with the next pane.
296 Show previous messages from
300 Enter copy mode and scroll one page up.
303 Change to the pane above, below, to the left, or to the right of the current
306 Arrange panes in one of the five preset layouts: even-horizontal,
307 even-vertical, main-horizontal, main-vertical, or tiled.
309 Move to the next window with a bell or activity marker.
311 Rotate the panes in the current window backwards.
313 Move to the previous window with a bell or activity marker.
316 Resize the current pane in steps of one cell.
319 Resize the current pane in steps of five cells.
322 Key bindings may be changed with the
328 This section contains a list of the commands supported by
330 Most commands accept the optional
338 These specify the client, session, window or pane which a command should affect.
342 file to which the client is connected, for example either of
346 for the client attached to
348 If no client is specified, the current client is chosen, if possible, or an
350 Clients may be listed with the
355 is either the name of a session (as listed by the
357 command) or the name of a client with the same syntax as
359 in which case the session attached to the client is used.
360 When looking for the session name,
362 initially searches for an exact match; if none is found, the session names
363 are checked for any for which
365 is a prefix or for which it matches as an
368 If a single match is found, it is used as the target session; multiple matches
370 If a session is omitted, the current session is used if available; if no
371 current session is available, the most recently used is chosen.
374 specifies a window in the form
375 .Em session Ns \&: Ns Em window .
377 follows the same rules as for
381 is looked for in order: as a window index, for example mysession:1; as an exact
382 window name, such as mysession:mywindow; then as an
384 pattern or the start of a window name, such as mysession:mywin* or
386 An empty window name specifies the next unused index if appropriate (for
392 otherwise the current window in
395 The special character
397 uses the last (previously current) window, or
401 are the next window or the previous window by number.
402 When the argument does not contain a colon,
404 first attempts to parse it as window; if that fails, an attempt is made to
408 takes a similar form to
410 but with the optional addition of a period followed by a pane index, for
411 example: mysession:mywindow.1.
412 If the pane index is omitted, the currently active pane in the specified
414 If neither a colon nor period appears,
416 first attempts to use the argument as a pane index; if that fails, it is looked
423 indicate the next or previous pane index, respectively.
433 may be used instead of a pane index.
435 The special characters
439 may be followed by an offset, for example:
440 .Bd -literal -offset indent
444 When dealing with a session that doesn't contain sequential window indexes,
445 they will be correctly skipped.
451 These must be passed as a single item, which typically means quoting them, for
453 .Bd -literal -offset indent
454 new-window 'vi /etc/passwd'
461 command, passed with the command and arguments separately, for example:
462 .Bd -literal -offset indent
463 bind-key F1 set-window-option force-width 81
468 .Bd -literal -offset indent
469 $ tmux bind-key F1 set-window-option force-width 81
472 Multiple commands may be specified together as part of a
473 .Em command sequence .
474 Each command should be separated by spaces and a semicolon;
475 commands are executed sequentially from left to right.
476 A literal semicolon may be included by escaping it with a backslash (for
477 example, when specifying a command sequence to
483 .Bd -literal -offset indent
484 refresh-client -t/dev/ttyp2
486 rename-session -tfirst newname
488 set-window-option -t:0 monitor-activity on
490 new-window ; split-window -d
495 .Bd -literal -offset indent
496 $ tmux kill-window -t :1
498 $ tmux new-window \e; split-window -d
500 $ tmux new-session -d 'vi /etc/passwd' \e; split-window -d \e; attach
502 .Sh CLIENTS AND SESSIONS
505 server manages clients, sessions, windows and panes.
506 Clients are attached to sessions to interact with them, either
507 when they are created with the
509 command, or later with the
512 Each session has one of more windows
515 Windows may be linked to multiple sessions and are made up of one or
517 each of which contains a pseudo terminal.
518 Commands for creating, linking and otherwise manipulating windows
521 .Sx WINDOWS AND PANES
524 The following commands are available to manage clients and sessions:
526 .It Xo Ic attach-session
528 .Op Fl t Ar target-session
530 .D1 (alias: Ic attach )
533 create a new client in the current terminal and attach it to
535 If used from inside, switch the current client.
538 is specified, any other clients attached to the session are detached.
540 signifies the client is read-only (only keys bound to the
542 command have any effect)
544 If no server is started,
546 will attempt to start it; this will fail unless sessions are created in the
548 .It Ic detach-client Op Fl t Ar target-client
549 .D1 (alias: Ic detach )
550 Detach the current client if bound to a key, or the specified client with
552 .It Ic has-session Op Fl t Ar target-session
554 Report an error and exit with 1 if the specified session does not exist.
555 If it does exist, exit with 0.
559 server and clients and destroy all sessions.
560 .It Ic kill-session Op Fl t Ar target-session
561 Destroy the given session, closing any windows linked to it and no other
562 sessions, and detaching all clients attached to it.
565 List all clients attached to the server.
567 .D1 (alias: Ic lscm )
568 List the syntax of all commands supported by
572 List all sessions managed by the server.
573 .It Ic lock-client Op Fl t Ar target-client
574 .D1 (alias: Ic lockc )
580 .It Ic lock-session Op Fl t Ar target-session
581 .D1 (alias: Ic locks )
582 Lock all clients attached to
584 .It Xo Ic new-session
586 .Op Fl n Ar window-name
587 .Op Fl s Ar session-name
588 .Op Fl t Ar target-session
592 Create a new session with name
595 The new session is attached to the current terminal unless
601 are the name of and shell command to execute in the initial window.
603 If run from a terminal, any
605 special characters are saved and used for new windows in the new session.
609 is given, the new session is
613 This means they share the same set of windows - all windows from
615 are linked to the new session and any subsequent new windows or windows being
616 closed are applied to both sessions.
617 The current and previous window and any session options remain independent and
618 either session may be killed without affecting the other.
626 .It Ic refresh-client Op Fl t Ar target-client
627 .D1 (alias: Ic refresh )
628 Refresh the current client if bound to a key, or a single client if one is given
631 .It Xo Ic rename-session
632 .Op Fl t Ar target-session
635 .D1 (alias: Ic rename )
636 Rename the session to
638 .It Xo Ic show-messages
639 .Op Fl t Ar target-client
641 .D1 (alias: Ic showmsgs )
642 Any messages displayed on the status line are saved in a per-client message
643 log, up to a maximum of the limit set by the
645 session option for the session attached to that client.
646 This command displays the log for
648 .It Ic source-file Ar path
649 .D1 (alias: Ic source )
650 Execute commands from
653 .D1 (alias: Ic start )
656 server, if not already running, without creating any sessions.
657 .It Xo Ic suspend-client
658 .Op Fl c Ar target-client
660 .D1 (alias: Ic suspendc )
661 Suspend a client by sending
664 .It Xo Ic switch-client
666 .Op Fl c Ar target-client
667 .Op Fl t Ar target-session
669 .D1 (alias: Ic switchc )
670 Switch the current session for client
678 is used, the client is moved to the next or previous session respectively.
680 .Sh WINDOWS AND PANES
683 window may be in one of several modes.
684 The default permits direct access to the terminal attached to the window.
685 The other is copy mode, which permits a section of a window or its
686 history to be copied to a
688 for later insertion into another window.
689 This mode is entered with the
694 It is also entered when a command that produces output, such as
696 is executed from a key binding.
698 The keys available depend on whether emacs or vi mode is selected
702 The following keys are supported as appropriate for the mode:
703 .Bl -column "FunctionXXXXXXXXXXXXXXXXX" "viXXXXXXXXXX" "emacs" -offset indent
704 .It Sy "Function" Ta Sy "vi" Ta Sy "emacs"
705 .It Li "Back to indentation" Ta "^" Ta "M-m"
706 .It Li "Bottom of history" Ta "G" Ta "M-<"
707 .It Li "Clear selection" Ta "Escape" Ta "C-g"
708 .It Li "Copy selection" Ta "Enter" Ta "M-w"
709 .It Li "Cursor down" Ta "j" Ta "Down"
710 .It Li "Cursor left" Ta "h" Ta "Left"
711 .It Li "Cursor right" Ta "l" Ta "Right"
712 .It Li "Cursor to bottom line" Ta "L" Ta ""
713 .It Li "Cursor to middle line" Ta "M" Ta "M-r"
714 .It Li "Cursor to top line" Ta "H" Ta "M-R"
715 .It Li "Cursor up" Ta "k" Ta "Up"
716 .It Li "Delete entire line" Ta "d" Ta "C-u"
717 .It Li "Delete to end of line" Ta "D" Ta "C-k"
718 .It Li "End of line" Ta "$" Ta "C-e"
719 .It Li "Go to line" Ta ":" Ta "g"
720 .It Li "Half page down" Ta "C-d" Ta "M-Down"
721 .It Li "Half page up" Ta "C-u" Ta "M-Up"
722 .It Li "Jump forward" Ta "f" Ta "f"
723 .It Li "Jump backward" Ta "F" Ta "F"
724 .It Li "Jump again" Ta ";" Ta ";"
725 .It Li "Jump again in reverse" Ta "," Ta ","
726 .It Li "Next page" Ta "C-f" Ta "Page down"
727 .It Li "Next space" Ta "W" Ta ""
728 .It Li "Next space, end of word" Ta "E" Ta ""
729 .It Li "Next word" Ta "w" Ta ""
730 .It Li "Next word end" Ta "e" Ta "M-f"
731 .It Li "Paste buffer" Ta "p" Ta "C-y"
732 .It Li "Previous page" Ta "C-b" Ta "Page up"
733 .It Li "Previous word" Ta "b" Ta "M-b"
734 .It Li "Previous space" Ta "B" Ta ""
735 .It Li "Quit mode" Ta "q" Ta "Escape"
736 .It Li "Rectangle toggle" Ta "v" Ta "R"
737 .It Li "Scroll down" Ta "C-Down or C-e" Ta "C-Down"
738 .It Li "Scroll up" Ta "C-Up or C-y" Ta "C-Up"
739 .It Li "Search again" Ta "n" Ta "n"
740 .It Li "Search again in reverse" Ta "N" Ta "N"
741 .It Li "Search backward" Ta "?" Ta "C-r"
742 .It Li "Search forward" Ta "/" Ta "C-s"
743 .It Li "Start of line" Ta "0" Ta "C-a"
744 .It Li "Start selection" Ta "Space" Ta "C-Space"
745 .It Li "Top of history" Ta "g" Ta "M->"
746 .It Li "Transpose chars" Ta "" Ta "C-t"
749 The next and previous word keys use space and the
754 characters as word delimiters by default, but this can be adjusted by
758 Next word moves to the start of the next word, next word end to the end of the
759 next word and previous word to the start of the previous word.
760 The three next and previous space keys work similarly but use a space alone as
763 The jump commands enable quick movement within a line.
768 will move the cursor to the next
770 character on the current line.
773 will then jump to the next occurrence.
775 Commands in copy mode may be prefaced by an optional repeat count.
776 With vi key bindings, a prefix is entered using the number keys; with
777 emacs, the Alt (meta) key and a number begins prefix entry.
778 For example, to move the cursor forward by ten words, use
784 Mode key bindings are defined in a set of named tables:
788 for keys used when line editing at the command prompt;
792 for keys used when choosing from lists (such as produced by the
799 The tables may be viewed with the
801 command and keys modified or removed with
806 The paste buffer key pastes the first line from the top paste buffer on the
815 .Op Fl t Ar target-pane
820 option scrolls one page up.
823 Each window displayed by
825 may be split into one or more
827 each pane takes up a certain area of the display and is a separate terminal.
828 A window may be split into panes using the
831 Windows may be split horizontally (with the
834 Panes may be resized with the
842 by default), the current pane may be changed with the
848 commands may be used to swap panes without changing their position.
849 Panes are numbered beginning from zero in the order they are created.
854 These may be selected with the
856 command or cycled with
860 by default); once a layout is chosen, panes within it may be moved and resized
863 The following layouts are supported:
865 .It Ic even-horizontal
866 Panes are spread out evenly from left to right across the window.
868 Panes are spread evenly from top to bottom.
869 .It Ic main-horizontal
870 A large (main) pane is shown at the top of the window and the remaining panes
871 are spread from left to right in the leftover space at the bottom.
874 window option to specify the height of the top pane.
878 but the large pane is placed on the left and the others spread from top to
879 bottom along the right.
884 Panes are spread out as evenly as possible over the window in both rows and
890 may be used to apply a previously used layout - the
892 command displays the layout of each window in a form suitable for use with
895 .Bd -literal -offset indent
898 layout: bb62,159x48,0,0{79x48,0,0,79x48,80,0}
899 $ tmux select-layout bb62,159x48,0,0{79x48,0,0,79x48,80,0}
902 automatically adjusts the size of the layout for the current window size.
903 Note that a layout cannot be applied to a window with more panes than that
904 from which the layout was originally defined.
906 Commands related to windows and panes are as follows:
910 .Op Fl t Ar target-pane
912 .D1 (alias: Ic breakp )
915 off from its containing window to make it the only pane in a new window.
918 is given, the new window does not become the current window.
919 .It Xo Ic capture-pane
920 .Op Fl b Ar buffer-index
921 .Op Fl t Ar target-pane
923 .D1 (alias: Ic capturep )
924 Capture the contents of a pane to the specified buffer, or a new buffer if none
928 .Op Fl t Ar target-window
931 Put a window into client choice mode, allowing a client to be selected
932 interactively from a list.
933 After a client is chosen,
935 is replaced by the client
939 and the result executed as a command.
942 is not given, "detach-client -t '%%'" is used.
943 This command works only from inside
947 .Op Fl t Ar target-window
950 Put a window into session choice mode, where a session may be selected
951 interactively from a list.
954 is replaced by the session name in
956 and the result executed as a command.
959 is not given, "switch-client -t '%%'" is used.
960 This command works only from inside
964 .Op Fl t Ar target-window
967 Put a window into window choice mode, where a window may be chosen
968 interactively from a list.
969 After a window is selected,
971 is replaced by the session name and window index in
973 and the result executed as a command.
976 is not given, "select-window -t '%%'" is used.
977 This command works only from inside
979 .It Ic display-panes Op Fl t Ar target-client
980 .D1 (alias: Ic displayp)
981 Display a visible indicator of each pane shown by
984 .Ic display-panes-time ,
985 .Ic display-panes-colour ,
987 .Ic display-panes-active-colour
989 While the indicator is on screen, a pane may be selected with the
994 .It Xo Ic find-window
995 .Op Fl t Ar target-window
998 .D1 (alias: Ic findw )
1003 in window names, titles, and visible content (but not history).
1004 If only one window is matched, it'll be automatically selected, otherwise a
1005 choice list is shown.
1006 This command only works from inside
1012 .Fl p Ar percentage Oc
1013 .Op Fl s Ar src-pane
1014 .Op Fl t Ar dst-pane
1016 .D1 (alias: Ic joinp )
1019 but instead of splitting
1021 and creating a new pane, split it and move
1024 This can be used to reverse
1028 .Op Fl t Ar target-pane
1030 .D1 (alias: Ic killp )
1031 Destroy the given pane.
1032 If no panes remain in the containing window, it is also destroyed.
1035 option kills all but the pane given with
1037 .It Ic kill-window Op Fl t Ar target-window
1038 .D1 (alias: Ic killw )
1039 Kill the current window or the window at
1041 removing it from any sessions to which it is linked.
1042 .It Ic last-pane Op Fl t Ar target-window
1043 .D1 (alias: Ic lastp )
1044 Select the last (previously selected) pane.
1045 .It Ic last-window Op Fl t Ar target-session
1046 .D1 (alias: Ic last )
1047 Select the last (previously selected) window.
1050 is specified, select the last window of the current session.
1051 .It Xo Ic link-window
1053 .Op Fl s Ar src-window
1054 .Op Fl t Ar dst-window
1056 .D1 (alias: Ic linkw )
1063 is specified and no such window exists, the
1070 exists, it is killed, otherwise an error is generated.
1073 is given, the newly linked window is not selected.
1074 .It Ic list-panes Op Fl t Ar target-window
1075 .D1 (alias: Ic lsp )
1076 List the panes in the current window or in
1078 .It Ic list-windows Op Fl t Ar target-session
1079 .D1 (alias: Ic lsw )
1080 List windows in the current session or in
1081 .Ar target-session .
1082 .It Xo Ic move-window
1084 .Op Fl s Ar src-window
1085 .Op Fl t Ar dst-window
1087 .D1 (alias: Ic movew )
1090 except the window at
1094 .It Xo Ic new-window
1096 .Op Fl n Ar window-name
1097 .Op Fl t Ar target-window
1098 .Op Ar shell-command
1100 .D1 (alias: Ic neww )
1101 Create a new window.
1104 the new window is inserted at the next index up from the specified
1106 moving windows up if necessary,
1109 is the new window location.
1113 is given, the session does not make the new window the current window.
1115 represents the window to be created; if the target already exists an error is
1118 flag is used, in which case it is destroyed.
1120 is the command to execute.
1123 is not specified, the value of the
1127 When the shell command completes, the window closes.
1130 option to change this behaviour.
1134 environment variable must be set to
1136 for all programs running
1139 New windows will automatically have
1141 added to their environment, but care must be taken not to reset this in shell
1143 .It Ic next-layout Op Fl t Ar target-window
1144 .D1 (alias: Ic nextl )
1145 Move a window to the next layout and rearrange the panes to fit.
1146 .It Xo Ic next-window
1148 .Op Fl t Ar target-session
1150 .D1 (alias: Ic next )
1151 Move to the next window in the session.
1154 is used, move to the next window with a bell, activity or content alert.
1157 .Op Fl t Ar target-pane
1158 .Op Ar shell-command
1160 .D1 (alias: Ic pipep )
1161 Pipe any output sent by the program in
1164 A pane may only be piped to one command at a time, any existing pipe is
1170 string may contain the special character sequences supported by the
1175 is given, the current pipe (if any) is closed.
1179 option only opens a new pipe if no previous pipe exists, allowing a pipe to
1180 be toggled with a single key, for example:
1181 .Bd -literal -offset indent
1182 bind-key C-p pipe-pane -o 'cat >>~/output.#I-#P'
1184 .It Xo Ic previous-layout
1185 .Op Fl t Ar target-window
1187 .D1 (alias: Ic prevl )
1188 Move to the previous layout in the session.
1189 .It Xo Ic previous-window
1191 .Op Fl t Ar target-session
1193 .D1 (alias: Ic prev )
1194 Move to the previous window in the session.
1197 move to the previous window with a bell, activity or content alert.
1198 .It Xo Ic rename-window
1199 .Op Fl t Ar target-window
1202 .D1 (alias: Ic renamew )
1203 Rename the current window, or the window at
1207 .It Xo Ic resize-pane
1209 .Op Fl t Ar target-pane
1212 .D1 (alias: Ic resizep )
1213 Resize a pane, upward with
1215 (the default), downward with
1219 and to the right with
1223 is given in lines or cells (the default is 1).
1224 .It Xo Ic respawn-window
1226 .Op Fl t Ar target-window
1227 .Op Ar shell-command
1229 .D1 (alias: Ic respawnw )
1230 Reactivate a window in which the command has exited (see the
1235 is not given, the command used when the window was created is executed.
1236 The window must be already inactive, unless
1238 is given, in which case any existing command is killed.
1239 .It Xo Ic rotate-window
1241 .Op Fl t Ar target-window
1243 .D1 (alias: Ic rotatew )
1244 Rotate the positions of the panes within a window, either upward (numerically
1247 or downward (numerically higher).
1248 .It Xo Ic select-layout
1249 .Op Fl t Ar target-window
1252 .D1 (alias: Ic selectl )
1253 Choose a specific layout for a window.
1256 is not given, the last preset layout used (if any) is reapplied.
1257 .It Xo Ic select-pane
1259 .Op Fl t Ar target-pane
1261 .D1 (alias: Ic selectp )
1264 the active pane in window
1272 is used, respectively the pane below, to the left, to the right, or above the
1273 target pane is used.
1274 .It Ic select-window Op Fl t Ar target-window
1275 .D1 (alias: Ic selectw )
1276 Select the window at
1278 .It Xo Ic split-window
1282 .Fl p Ar percentage Oc
1283 .Op Fl t Ar target-pane
1284 .Op Ar shell-command
1286 .D1 (alias: Ic splitw )
1287 Create a new pane by splitting
1290 does a horizontal split and
1292 a vertical split; if neither is specified,
1299 options specify the size of the new pane in lines (for vertical split) or in
1300 cells (for horizontal split), or as a percentage, respectively.
1301 All other options have the same meaning as for the
1306 .Op Fl s Ar src-pane
1307 .Op Fl t Ar dst-pane
1309 .D1 (alias: Ic swapp )
1313 is used and no source pane is specified with
1316 is swapped with the previous pane (before it numerically);
1318 swaps with the next pane (after it numerically).
1322 not to change the active pane.
1323 .It Xo Ic swap-window
1325 .Op Fl s Ar src-window
1326 .Op Fl t Ar dst-window
1328 .D1 (alias: Ic swapw )
1331 except the source and destination windows are swapped.
1332 It is an error if no window exists at
1334 .It Xo Ic unlink-window
1336 .Op Fl t Ar target-window
1338 .D1 (alias: Ic unlinkw )
1343 is given, a window may be unlinked only if it is linked to multiple sessions -
1344 windows may not be linked to no sessions;
1347 is specified and the window is linked to only one session, it is unlinked and
1352 allows a command to be bound to most keys, with or without a prefix key.
1353 When specifying keys, most represent themselves (for example
1357 Ctrl keys may be prefixed with
1363 In addition, the following special key names are accepted:
1388 Note that to bind the
1392 keys, quotation marks are necessary, for example:
1393 .Bd -literal -offset indent
1394 bind-key '"' split-window
1395 bind-key "'" new-window
1398 Commands related to key bindings are as follows:
1402 .Op Fl t Ar key-table
1403 .Ar key Ar command Op Ar arguments
1405 .D1 (alias: Ic bind )
1412 the primary key bindings are modified (those normally activated with the prefix
1413 key); in this case, if
1415 is specified, it is not necessary to use the prefix key,
1422 flag indicates this key may repeat, see the
1432 the binding for command mode with
1434 or for normal mode without.
1435 To view the default bindings and possible commands, see the
1438 .It Ic list-keys Op Fl t Ar key-table
1439 .D1 (alias: Ic lsk )
1440 List all key bindings.
1443 the primary key bindings - those executed when preceded by the prefix key -
1445 Keys bound without the prefix key (see
1455 are listed; this may be one of:
1464 .Op Fl t Ar target-pane
1467 .D1 (alias: Ic send )
1468 Send a key or keys to a window.
1471 is the name of the key (such as
1475 ) to send; if the string is not recognised as a key, it is sent as a series of
1477 All arguments are sent sequentially from first to last.
1478 .It Ic send-prefix Op Fl t Ar target-pane
1479 Send the prefix key to a window as if it was pressed.
1480 If multiple prefix keys are configured, only the first is sent.
1481 .It Xo Ic unbind-key
1483 .Op Fl t Ar key-table
1486 .D1 (alias: Ic unbind )
1487 Unbind the command bound to
1491 the primary key bindings are modified; in this case, if
1493 is specified, the command bound to
1495 without a prefix (if any) is removed.
1503 is unbound: the binding for command mode with
1505 or for normal mode without.
1508 The appearance and behaviour of
1510 may be modified by changing the value of various options.
1511 There are three types of option:
1512 .Em server options ,
1515 .Em window options .
1519 server has a set of global options which do not apply to any particular
1521 These are altered with the
1524 command, or displayed with the
1529 In addition, each individual session may have a set of session options, and
1530 there is a separate set of global session options.
1531 Sessions which do not have a particular option configured inherit the value
1532 from the global session options.
1533 Session options are set or unset with the
1535 command and may be listed with the
1538 The available server and session options are listed under the
1542 Similarly, a set of window options is attached to each window, and there is
1543 a set of global window options from which any unset options are inherited.
1544 Window options are altered with the
1545 .Ic set-window-option
1546 command and can be listed with the
1547 .Ic show-window-options
1549 All window options are documented with the
1550 .Ic set-window-option
1553 Commands which set options are as follows:
1555 .It Xo Ic set-option
1557 .Op Fl t Ar target-session | Ar target-window
1560 .D1 (alias: Ic set )
1561 Set a window option with
1564 .Ic set-window-option
1566 a server option with
1568 otherwise a session option.
1572 is specified, the global session or window option is set.
1575 and if the option expects a string,
1577 is appended to the existing setting.
1580 flag unsets an option, so a session inherits the option from the global
1582 It is not possible to unset a global option.
1584 Available window options are listed under
1585 .Ic set-window-option .
1587 Available server options are:
1590 Set the time in milliseconds for which
1592 waits after an escape is input to determine if it is part of a function or meta
1594 The default is 500 milliseconds.
1595 .It Ic exit-unattached
1596 If enabled, the server will exit when there are no attached clients, rather
1597 than when there are no attached sessions.
1599 Enable or disable the display of various informational messages (see also the
1604 Available session options are:
1606 .It Ic base-index Ar index
1607 Set the base index from which an unused index should be searched when a new
1609 The default is zero.
1610 .It Xo Ic bell-action
1611 .Op Ic any | none | current
1613 Set action on window bell.
1615 means a bell in any window linked to a session causes a bell in the current
1616 window of that session,
1618 means all bells are ignored and
1620 means only bell in windows other than the current window are ignored.
1621 .It Ic buffer-limit Ar number
1622 Set the number of buffers kept for each session; as new buffers are added to
1623 the top of the stack, old ones are removed from the bottom if necessary to
1624 maintain this maximum length.
1625 .It Ic default-command Ar shell-command
1626 Set the command used for new windows (if not specified when the window is
1632 The default is an empty string, which instructs
1634 to create a login shell using the value of the
1637 .It Ic default-shell Ar path
1638 Specify the default shell.
1639 This is used as the login shell for new windows when the
1641 option is set to empty, and must be the full path of the executable.
1644 tries to set a default value from the first suitable of the
1646 environment variable, the shell returned by
1650 This option should be configured when
1652 is used as a login shell.
1653 .It Ic default-path Ar path
1654 Set the default working directory for processes created from keys, or
1655 interactively from the prompt.
1656 The default is empty, which means to use the working directory of the shell
1657 from which the server was started if it is available or the user's home if not.
1658 .It Ic default-terminal Ar terminal
1659 Set the default terminal for new windows created in this session - the
1660 default value of the
1662 environment variable.
1665 to work correctly, this
1669 or a derivative of it.
1670 .It Ic destroy-unattached
1671 If enabled and the session is no longer attached to any clients, it is
1673 .It Ic detach-on-destroy
1674 If on (the default), the client is detached when the session it is attached to
1676 If off, the client is switched to the most recently active of the remaining
1678 .It Ic display-panes-active-colour Ar colour
1679 Set the colour used by the
1681 command to show the indicator for the active pane.
1682 .It Ic display-panes-colour Ar colour
1683 Set the colour used by the
1685 command to show the indicators for inactive panes.
1686 .It Ic display-panes-time Ar time
1687 Set the time in milliseconds for which the indicators shown by the
1690 .It Ic display-time Ar time
1691 Set the amount of time for which status line messages and other on-screen
1692 indicators are displayed.
1695 .It Ic history-limit Ar lines
1696 Set the maximum number of lines held in window history.
1697 This setting applies only to new windows - existing window histories are not
1698 resized and retain the limit at the point they were created.
1699 .It Ic lock-after-time Ar number
1700 Lock the session (like the
1704 seconds of inactivity, or the entire server (all sessions) if the
1707 The default is not to lock (set to 0).
1708 .It Ic lock-command Ar shell-command
1709 Command to run when locking each client.
1710 The default is to run
1714 .It Xo Ic lock-server
1720 instead of each session locking individually as each has been
1722 .Ic lock-after-time ,
1723 the entire server will lock after
1725 sessions would have locked.
1726 This has no effect as a session option; it must be set as a global option.
1727 .It Ic message-attr Ar attributes
1728 Set status line message attributes, where
1732 or a comma-delimited list of one or more of:
1743 .It Ic message-bg Ar colour
1744 Set status line message background colour, where
1758 from the 256-colour palette, or
1760 .It Ic message-fg Ar colour
1761 Set status line message foreground colour.
1762 .It Ic message-limit Ar number
1763 Set the number of error or information messages to save in the message log for
1766 .It Xo Ic mouse-select-pane
1771 captures the mouse and when a window is split into multiple panes the mouse may
1772 be used to select the current pane.
1773 The mouse click is also passed through to the application as normal.
1774 .It Ic pane-border-fg Ar colour
1775 .It Ic pane-border-bg Ar colour
1776 Set the pane border colour for panes aside from the active pane.
1777 .It Ic pane-active-border-fg Ar colour
1778 .It Ic pane-active-border-bg Ar colour
1779 Set the pane border colour for the currently active pane.
1780 .It Ic prefix Ar keys
1781 Set the keys accepted as a prefix key.
1783 is a comma-separated list of key names, each of which individually behave as
1785 .It Ic repeat-time Ar time
1786 Allow multiple commands to be entered without pressing the prefix-key again
1789 milliseconds (the default is 500).
1790 Whether a key repeats may be set when it is bound using the
1794 Repeat is enabled for the default keys bound to the
1797 .It Xo Ic set-remain-on-exit
1802 window option for any windows first created in this session.
1803 When this option is true, windows in which the running program has
1804 exited do not close, instead remaining open but inactivate.
1807 command to reactivate such a window, or the
1809 command to destroy it.
1810 .It Xo Ic set-titles
1813 Attempt to set the window title using the \ee]2;...\e007 xterm code if
1814 the terminal appears to be an xterm.
1815 This option is off by default.
1817 will only attempt to set the window title if the STY environment
1819 .It Ic set-titles-string Ar string
1820 String used to set the window title if
1823 Character sequences are replaced as for the
1829 Show or hide the status line.
1830 .It Ic status-attr Ar attributes
1831 Set status line attributes.
1832 .It Ic status-bg Ar colour
1833 Set status line background colour.
1834 .It Ic status-fg Ar colour
1835 Set status line foreground colour.
1836 .It Ic status-interval Ar interval
1837 Update the status bar every
1840 By default, updates will occur every 15 seconds.
1841 A setting of zero disables redrawing at interval.
1842 .It Xo Ic status-justify
1843 .Op Ic left | centre | right
1845 Set the position of the window list component of the status line: left, centre
1847 .It Xo Ic status-keys
1850 Use vi or emacs-style
1851 key bindings in the status line, for example at the command prompt.
1853 .It Ic status-left Ar string
1856 to the left of the status bar.
1858 will be passed through
1861 By default, the session name is shown.
1863 may contain any of the following special character sequences:
1864 .Bl -column "Character pair" "Replaced with" -offset indent
1865 .It Sy "Character pair" Ta Sy "Replaced with"
1866 .It Li "#(shell-command)" Ta "First line of the command's output"
1867 .It Li "#[attributes]" Ta "Colour or attribute change"
1868 .It Li "#H" Ta "Hostname of local host"
1869 .It Li "#F" Ta "Current window flag"
1870 .It Li "#I" Ta "Current window index"
1871 .It Li "#P" Ta "Current pane index"
1872 .It Li "#S" Ta "Session name"
1873 .It Li "#T" Ta "Current window title"
1874 .It Li "#W" Ta "Current window name"
1875 .It Li "##" Ta "A literal" Ql #
1878 The #(shell-command) form executes
1880 and inserts the first line of its output.
1881 Note that shell commands are only executed once at the interval specified by
1884 option: if the status line is redrawn in the meantime, the previous result is
1886 Shell commands are executed with the
1888 global environment set (see the
1892 The window title (#T) is the title set by the program running within the window
1893 using the OSC title setting sequence, for example:
1894 .Bd -literal -offset indent
1895 $ printf '\e033]2;My Title\e033\e\e'
1898 When a window is first created, its title is the hostname.
1900 #[attributes] allows a comma-separated list of attributes to be specified,
1903 to set the foreground colour,
1905 to set the background colour, the name of one of the attributes (listed under
1908 option) to turn an attribute on, or an attribute prefixed with
1910 to turn one off, for example
1913 .Bd -literal -offset indent
1914 #(sysctl vm.loadavg)
1915 #[fg=yellow,bold]#(apm -l)%%#[default] [#S]
1918 Where appropriate, special character sequences may be prefixed with a number to
1919 specify the maximum length, for example
1922 By default, UTF-8 in
1924 is not interpreted, to enable UTF-8, use the
1927 .It Ic status-left-attr Ar attributes
1928 Set the attribute of the left part of the status line.
1929 .It Ic status-left-fg Ar colour
1930 Set the foreground colour of the left part of the status line.
1931 .It Ic status-left-bg Ar colour
1932 Set the background colour of the left part of the status line.
1933 .It Ic status-left-length Ar length
1936 of the left component of the status bar.
1938 .It Ic status-right Ar string
1941 to the right of the status bar.
1942 By default, the current window title in double quotes, the date and the time
1949 character pairs are replaced, and UTF-8 is dependent on the
1952 .It Ic status-right-attr Ar attributes
1953 Set the attribute of the right part of the status line.
1954 .It Ic status-right-fg Ar colour
1955 Set the foreground colour of the right part of the status line.
1956 .It Ic status-right-bg Ar colour
1957 Set the background colour of the right part of the status line.
1958 .It Ic status-right-length Ar length
1961 of the right component of the status bar.
1964 .It Xo Ic status-utf8
1969 to treat top-bit-set characters in the
1973 strings as UTF-8; notably, this is important for wide characters.
1974 This option defaults to off.
1975 .It Ic terminal-overrides Ar string
1976 Contains a list of entries which override terminal descriptions read using
1979 is a comma-separated list of items each a colon-separated string made up of a
1980 terminal type pattern (matched using
1986 For example, to set the
1991 for all terminal types and the
1997 terminal type, the option could be set to the string:
1998 .Bd -literal -offset indent
1999 "*:clear=\ee[H\ee[2J,rxvt:dch1=\ee[P"
2002 The terminal entry value is passed through
2004 before interpretation.
2005 The default value forcibly corrects the
2007 entry for terminals which support 88 or 256 colours:
2008 .Bd -literal -offset indent
2009 "*88col*:colors=88,*256col*:colors=256"
2011 .It Ic update-environment Ar variables
2012 Set a space-separated string containing a list of environment variables to be
2013 copied into the session environment when a new session is created or an
2014 existing session is attached.
2015 Any variables that do not exist in the source environment are set to be
2016 removed from the session environment (as if
2022 "DISPLAY WINDOWID SSH_ASKPASS SSH_AUTH_SOCK SSH_AGENT_PID SSH_CONNECTION".
2023 .It Xo Ic visual-activity
2026 If on, display a status line message when activity occurs in a window
2028 .Ic monitor-activity
2029 window option is enabled.
2030 .It Xo Ic visual-bell
2033 If this option is on, a message is shown on a bell instead of it being passed
2034 through to the terminal (which normally makes a sound).
2038 .It Xo Ic visual-content
2042 .Ic visual-activity ,
2043 display a message when content is present in a window
2046 window option is enabled.
2048 .It Xo Ic set-window-option
2050 .Op Fl t Ar target-window
2053 .D1 (alias: Ic setw )
2054 Set a window option.
2060 flags work similarly to the
2064 Supported window options are:
2066 .Bl -tag -width Ds -compact
2067 .It Xo Ic aggressive-resize
2070 Aggressively resize the chosen window.
2073 will resize the window to the size of the smallest session for which it is the
2074 current window, rather than the smallest session to which it is attached.
2075 The window may resize when the current window is changed on another sessions;
2076 this option is good for full-screen programs which support
2078 and poor for interactive programs such as shells.
2080 .It Xo Ic automatic-rename
2083 Control automatic window renaming.
2084 When this setting is enabled,
2086 will attempt - on supported platforms - to rename the window to reflect the
2087 command currently running in it.
2088 This flag is automatically disabled for an individual window when a name
2089 is specified at creation with
2095 It may be switched off globally with:
2096 .Bd -literal -offset indent
2097 set-window-option -g automatic-rename off
2100 .It Ic clock-mode-colour Ar colour
2103 .It Xo Ic clock-mode-style
2106 Set clock hour format.
2108 .It Ic force-height Ar height
2109 .It Ic force-width Ar width
2112 from resizing a window to greater than
2116 A value of zero restores the default unlimited setting.
2118 .It Ic main-pane-width Ar width
2119 .It Ic main-pane-height Ar height
2120 Set the width or height of the main (left or top) pane in the
2126 .It Ic mode-attr Ar attributes
2127 Set window modes attributes.
2129 .It Ic mode-bg Ar colour
2130 Set window modes background colour.
2132 .It Ic mode-fg Ar colour
2133 Set window modes foreground colour.
2138 Use vi or emacs-style key bindings in copy and choice modes.
2139 Key bindings default to emacs.
2141 .It Xo Ic mode-mouse
2144 Mouse state in modes.
2145 If on, the mouse may be used to copy a selection by dragging in copy mode, or
2146 to select an option in choice mode.
2148 .It Xo Ic monitor-activity
2151 Monitor for activity in the window.
2152 Windows with activity are highlighted in the status line.
2154 .It Ic monitor-content Ar match-string
2155 Monitor content in the window.
2160 appears in the window, it is highlighted in the status line.
2162 .It Xo Ic remain-on-exit
2165 A window with this flag set is not destroyed when the program running in it
2167 The window may be reactivated with the
2171 .It Xo Ic synchronize-panes
2174 Duplicate input to any pane to all other panes in the same window (only
2175 for panes that are not in any special mode).
2177 .It Xo Ic alternate-screen
2180 This option configures whether programs running inside
2182 may use the terminal alternate screen feature, which allows the
2187 capabilities to be issued to preserve the existing window content on start and
2195 to expect UTF-8 sequences to appear in this window.
2197 .It Ic window-status-attr Ar attributes
2198 Set status line attributes for a single window.
2200 .It Ic window-status-bg Ar colour
2201 Set status line background colour for a single window.
2203 .It Ic window-status-fg Ar colour
2204 Set status line foreground colour for a single window.
2206 .It Ic window-status-format Ar string
2207 Set the format in which the window is displayed in the status line window list.
2210 option for details of special character sequences available.
2214 .It Ic window-status-alert-attr Ar attributes
2215 Set status line attributes for windows which have an alert (bell, activity
2218 .It Ic window-status-alert-bg Ar colour
2219 Set status line background colour for windows with an alert.
2221 .It Ic window-status-alert-fg Ar colour
2222 Set status line foreground colour for windows with an alert.
2224 .It Ic window-status-current-attr Ar attributes
2225 Set status line attributes for the currently active window.
2227 .It Ic window-status-current-bg Ar colour
2228 Set status line background colour for the currently active window.
2230 .It Ic window-status-current-fg Ar colour
2231 Set status line foreground colour for the currently active window.
2233 .It Ic window-status-current-format Ar string
2235 .Ar window-status-format ,
2236 but is the format used when the window is the current window.
2238 .It Ic word-separators Ar string
2239 Sets the window's conception of what characters are considered word
2240 separators, for the purposes of the next and previous word commands in
2245 .It Xo Ic xterm-keys
2248 If this option is set,
2252 function key sequences; these have a number included to indicate modifiers such
2253 as Shift, Alt or Ctrl.
2256 .It Xo Ic show-options
2258 .Op Fl t Ar target-session | Ar target-window
2260 .D1 (alias: Ic show )
2261 Show the window options with
2264 .Ic show-window-options ) ,
2265 the server options with
2267 otherwise the session options for
2268 .Ar target session .
2269 Global session or window options are listed if
2272 .It Xo Ic show-window-options
2274 .Op Fl t Ar target-window
2276 .D1 (alias: Ic showw )
2277 List the window options for
2279 or the global window options if
2284 When the server is started,
2286 copies the environment into the
2287 .Em global environment ;
2288 in addition, each session has a
2289 .Em session environment .
2290 When a window is created, the session and global environments are merged with
2291 the session environment overriding any variable present in both.
2292 This is the initial environment passed to the new process.
2295 .Ic update-environment
2296 session option may be used to update the session environment from the client
2297 when a new session is created or an old reattached.
2299 also initialises the
2301 variable with some internal information to allow commands to be executed
2302 from inside, and the
2304 variable with the correct terminal setting of
2307 Commands to alter and view the environment are:
2309 .It Xo Ic set-environment
2311 .Op Fl t Ar target-session
2312 .Ar name Op Ar value
2314 .D1 (alias: Ic setenv )
2315 Set or unset an environment variable.
2318 is used, the change is made in the global environment; otherwise, it is applied
2319 to the session environment for
2320 .Ar target-session .
2323 flag unsets a variable.
2325 indicates the variable is to be removed from the environment before starting a
2327 .It Xo Ic show-environment
2329 .Op Fl t Ar target-session
2331 .D1 (alias: Ic showenv )
2332 Display the environment for
2334 or the global environment with
2336 Variables removed from the environment are prefixed with
2341 includes an optional status line which is displayed in the bottom line of each
2343 By default, the status line is enabled (it may be disabled with the
2345 session option) and contains, from left-to-right: the name of the current
2346 session in square brackets; the window list; the current window title in double
2347 quotes; and the time and date.
2349 The status line is made of three parts: configurable left and right sections
2350 (which may contain dynamic content such as the time or output from a shell
2353 .Ic status-left-length ,
2356 .Ic status-right-length
2357 options below), and a central window list.
2358 By default, the window list shows the index, name and (if any) flag of the
2359 windows present in the current session in ascending numerical order.
2360 It may be customised with the
2361 .Ar window-status-format
2363 .Ar window-status-current-format
2365 The flag is one of the following symbols appended to the window name:
2366 .Bl -column "Symbol" "Meaning" -offset indent
2367 .It Sy "Symbol" Ta Sy "Meaning"
2368 .It Li "*" Ta "Denotes the current window."
2369 .It Li "-" Ta "Marks the last window (previously selected)."
2370 .It Li "#" Ta "Window is monitored and activity has been detected."
2371 .It Li "!" Ta "A bell has occurred in the window."
2372 .It Li "+" Ta "Window is monitored for content and it has appeared."
2375 The # symbol relates to the
2376 .Ic monitor-activity
2380 The window name is printed in inverted colours if an alert (bell, activity or
2381 content) is present.
2383 The colour and attributes of the status line may be configured, the entire
2384 status line using the
2389 session options and individual windows using the
2390 .Ic window-status-attr ,
2391 .Ic window-status-fg
2393 .Ic window-status-bg
2396 The status line is automatically refreshed at interval if it has changed, the
2397 interval may be controlled with the
2401 Commands related to the status line are as follows:
2403 .It Xo Ic command-prompt
2405 .Op Fl t Ar target-client
2408 Open the command prompt in a client.
2409 This may be used from inside
2411 to execute commands interactively.
2414 is specified, it is used as the command.
2419 is a comma-separated list of prompts which are displayed in order; otherwise
2420 a single prompt is displayed, constructed from
2422 if it is present, or
2425 Before the command is executed, the first occurrence of the string
2427 and all occurrences of
2429 are replaced by the response to the first prompt, the second
2433 are replaced with the response to the second prompt, and so on for further
2435 Up to nine prompt responses may be replaced
2441 .It Xo Ic confirm-before
2442 .Op Fl t Ar target-client
2445 .D1 (alias: Ic confirm )
2446 Ask for confirmation before executing
2448 This command works only from inside
2450 .It Xo Ic display-message
2452 .Op Fl t Ar target-client
2455 .D1 (alias: Ic display )
2459 is given, the output is printed to stdout, otherwise it is displayed in the
2466 with the exception that #() are not handled.
2470 maintains a stack of
2473 Up to the value of the
2475 option are kept; when a new buffer is added, the buffer at the bottom of the
2477 Buffers may be added using
2481 command, and pasted into a window using the
2485 A configurable history buffer is also maintained for each window.
2486 By default, up to 2000 lines are kept; this can be altered with the
2492 The buffer commands are as follows:
2496 .Op Fl t Ar target-window
2499 Put a window into buffer choice mode, where a buffer may be chosen
2500 interactively from a list.
2501 After a buffer is selected,
2503 is replaced by the buffer index in
2505 and the result executed as a command.
2508 is not given, "paste-buffer -b '%%'" is used.
2509 This command works only from inside
2511 .It Ic clear-history Op Fl t Ar target-pane
2512 .D1 (alias: Ic clearhist )
2513 Remove and free the history for the specified pane.
2514 .It Xo Ic copy-buffer
2515 .Op Fl a Ar src-index
2516 .Op Fl b Ar dst-index
2517 .Op Fl s Ar src-session
2518 .Op Fl t Ar dst-session
2520 .D1 (alias: Ic copyb )
2521 Copy a session paste buffer to another session.
2522 If no sessions are specified, the current one is used instead.
2523 .It Xo Ic delete-buffer
2524 .Op Fl b Ar buffer-index
2525 .Op Fl t Ar target-session
2527 .D1 (alias: Ic deleteb )
2528 Delete the buffer at
2530 or the top buffer if not specified.
2531 .It Ic list-buffers Op Fl t Ar target-session
2532 .D1 (alias: Ic lsb )
2533 List the buffers in the given session.
2534 .It Xo Ic load-buffer
2535 .Op Fl b Ar buffer-index
2536 .Op Fl t Ar target-session
2539 .D1 (alias: Ic loadb )
2540 Load the contents of the specified paste buffer from
2542 .It Xo Ic paste-buffer
2544 .Op Fl b Ar buffer-index
2545 .Op Fl s Ar separator
2546 .Op Fl t Ar target-pane
2548 .D1 (alias: Ic pasteb )
2549 Insert the contents of a paste buffer into the specified pane.
2550 If not specified, paste into the current one.
2553 also delete the paste buffer from the stack.
2554 When output, any linefeed (LF) characters in the paste buffer are replaced with
2555 a separator, by default carriage return (CR).
2556 A custom separator may be specified using the
2561 flag means to do no replacement (equivalent to a separator of LF).
2562 .It Xo Ic save-buffer
2564 .Op Fl b Ar buffer-index
2565 .Op Fl t Ar target-session
2568 .D1 (alias: Ic saveb )
2569 Save the contents of the specified paste buffer to
2573 option appends to rather than overwriting the file.
2574 .It Xo Ic set-buffer
2575 .Op Fl b Ar buffer-index
2576 .Op Fl t Ar target-session
2579 .D1 (alias: Ic setb )
2580 Set the contents of the specified buffer to
2582 .It Xo Ic show-buffer
2583 .Op Fl b Ar buffer-index
2584 .Op Fl t Ar target-session
2586 .D1 (alias: Ic showb )
2587 Display the contents of the specified buffer.
2591 Miscellaneous commands are as follows:
2593 .It Ic clock-mode Op Fl t Ar target-pane
2594 Display a large clock.
2595 .It Ic if-shell Ar shell-command command
2603 .D1 (alias: Ic lock )
2604 Lock each client individually by running the command specified by the
2607 .It Ic run-shell Ar shell-command
2608 .D1 (alias: Ic run )
2611 in the background without creating a window.
2612 After it finishes, any output to stdout is displayed in copy mode.
2613 If the command doesn't return success, the exit status is also displayed.
2615 .D1 (alias: Ic info )
2616 Show server information and terminal details.
2619 .Bl -tag -width "/etc/tmux.confXXX" -compact
2624 .It Pa /etc/tmux.conf
2625 System-wide configuration file.
2633 .Dl $ tmux new-session vi
2635 Most commands have a shorter form, known as an alias.
2636 For new-session, this is
2641 Alternatively, the shortest unambiguous form of a command is accepted.
2642 If there are several options, they are listed:
2643 .Bd -literal -offset indent
2645 ambiguous command: n, could be: new-session, new-window, next-window
2648 Within an active session, a new window may be created by typing
2658 Windows may be navigated with:
2660 (to select window 0),
2662 (to select window 1), and so on;
2664 to select the next window; and
2666 to select the previous window.
2668 A session may be detached using
2670 (or by an external event such as
2672 disconnection) and reattached with:
2674 .Dl $ tmux attach-session
2678 lists the current key bindings in the current window; up and down may be used
2679 to navigate the list or
2683 Commands to be run when the
2685 server is started may be placed in the
2688 Common examples include:
2690 Changing the default prefix key:
2691 .Bd -literal -offset indent
2692 set-option -g prefix C-a
2694 bind-key C-a send-prefix
2697 Turning the status line off, or changing its colour:
2698 .Bd -literal -offset indent
2699 set-option -g status off
2700 set-option -g status-bg blue
2703 Setting other options, such as the default command,
2704 or locking after 30 minutes of inactivity:
2705 .Bd -literal -offset indent
2706 set-option -g default-command "exec /bin/ksh"
2707 set-option -g lock-after-time 1800
2710 Creating new key bindings:
2711 .Bd -literal -offset indent
2712 bind-key b set-option status
2713 bind-key / command-prompt "split-window 'exec man %%'"
2714 bind-key S command-prompt "new-window -n %1 'ssh %1'"
2719 .An Nicholas Marriott Aq nicm@users.sourceforge.net