Go to file
Nicholas Marriott 0bdbf47ef9 Add a client flag 'active-pane' which stores the active pane in the client and
allows it to be changed independently from the real active pane stored in the
window. This is can be used with session groups which allow an independent
current window (although it would be nice to have a flag for this too and
remove session groups). The client active pane is only really useful
interactively, many things (hooks, window-style, zooming) still use the window
active pane.
2020-05-14 11:18:19 +01:00
.github Need musl-gcc for static also. 2020-05-03 12:37:38 +01:00
compat Missing headers from compat/asprintf.c, from cyyever at outlook dot com. 2019-09-08 21:29:22 +01:00
logo Add tmux logo, createed by Jason Long. 2015-04-28 13:46:47 +01:00
presentations Add a couple of presentations I wrote a few years ago. One for the ill-fated 2015-06-04 08:23:40 +01:00
regress Update capture-pane test, from Johannes Altmanninger. 2020-03-26 10:16:05 +00:00
tools Fix gseq use in RGB colour script. 2019-04-28 22:16:34 +01:00
.gitignore Add yacc(1) bits. 2019-05-23 13:04:41 +01:00
.mailmap Add to .mailmap. 2016-07-19 10:42:44 +01:00
.travis.yml Add musl builds. 2020-05-03 12:33:47 +01:00
alerts.c Support embedded styles in the display-message message, GitHub issue 2206. 2020-05-11 09:18:35 +01:00
arguments.c Add formats for after hook command arguments. 2020-05-05 06:19:29 +01:00
attributes.c Add an attribute for ACS. 2020-04-23 07:15:17 +01:00
autogen.sh Bump automake and autoconf versions. 2017-03-22 08:45:53 +00:00
cfg.c Build list of paths and weed out duplicates before loading configs. 2020-04-23 17:56:45 +01:00
CHANGES Add to CHANGES. 2020-05-10 17:06:31 +01:00
client.c Merge branch 'obsd-master' 2020-05-13 01:05:04 +01:00
cmd-attach-session.c Change the existing client flags for control mode to apply for any client, use 2020-05-05 15:42:20 +01:00
cmd-bind-key.c Make struct cmd local to cmd.c and move it out of tmux.h. 2020-04-13 08:26:27 +00:00
cmd-break-pane.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
cmd-capture-pane.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-choose-tree.c Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
cmd-command-prompt.c Expand target from client and use it to expand the prompt. 2020-05-14 10:35:26 +01:00
cmd-confirm-before.c Expand target from client and use it to expand the prompt. 2020-05-14 10:35:26 +01:00
cmd-copy-mode.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-detach-client.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-display-menu.c Add 'e' key in buffer mode to open the buffer in an editor. 2020-05-01 09:02:44 +01:00
cmd-display-message.c Support embedded styles in the display-message message, GitHub issue 2206. 2020-05-11 09:18:35 +01:00
cmd-display-panes.c Do not hoke into struct window_pane from the tty code and instead set 2020-05-01 17:01:36 +01:00
cmd-find-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-find.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
cmd-if-shell.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-join-pane.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
cmd-kill-pane.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
cmd-kill-server.c Make struct cmd local to cmd.c and move it out of tmux.h. 2020-04-13 08:26:27 +00:00
cmd-kill-session.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-kill-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-buffers.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-clients.c Change the existing client flags for control mode to apply for any client, use 2020-05-05 15:42:20 +01:00
cmd-list-keys.c Include key bindings in customize mode. 2020-05-12 08:57:55 +01:00
cmd-list-panes.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-sessions.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-windows.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-load-buffer.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-lock-server.c Missed a few warnings in previous. 2020-04-13 20:54:15 +00:00
cmd-move-window.c Improve join-pane, move-pane and break-pane: 2020-04-22 21:15:33 +00:00
cmd-new-session.c Change the existing client flags for control mode to apply for any client, use 2020-05-05 15:42:20 +01:00
cmd-new-window.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-parse.y Add helpers for the simple case of parse string and add to command queue. 2020-04-13 18:59:41 +00:00
cmd-paste-buffer.c Merge branch 'obsd-master' 2020-04-13 14:01:45 +01:00
cmd-pipe-pane.c Merge branch 'obsd-master' 2020-04-14 00:01:41 +01:00
cmd-queue.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
cmd-refresh-client.c Change the existing client flags for control mode to apply for any client, use 2020-05-05 15:42:20 +01:00
cmd-rename-session.c Instead of forbidding invalid session names, sanitize them. 2020-04-24 16:40:10 +01:00
cmd-rename-window.c Need to redraw borders now when some things change. Also change default so that 2020-04-29 08:55:21 +01:00
cmd-resize-pane.c Need to redraw borders now when some things change. Also change default so that 2020-04-29 08:55:21 +01:00
cmd-resize-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-respawn-pane.c Need to redraw borders now when some things change. Also change default so that 2020-04-29 08:55:21 +01:00
cmd-respawn-window.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-rotate-window.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-run-shell.c Initialize return code in case something mysterious happens. 2020-05-09 16:08:13 +01:00
cmd-save-buffer.c Merge branch 'obsd-master' 2020-04-14 00:01:41 +01:00
cmd-select-layout.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-select-pane.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
cmd-select-window.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-send-keys.c Send keys when they are complete not before (!= vs ==). 2020-04-14 13:22:05 +00:00
cmd-set-buffer.c Make struct cmd local to cmd.c and move it out of tmux.h. 2020-04-13 08:26:27 +00:00
cmd-set-environment.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-set-option.c Remove unused variables. 2020-05-09 14:38:00 +01:00
cmd-show-environment.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-show-messages.c Change message log to be per server rather than per client and include every 2020-05-06 13:43:22 +01:00
cmd-show-options.c Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
cmd-source-file.c Merge branch 'obsd-master' 2020-04-13 14:01:45 +01:00
cmd-split-window.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
cmd-swap-pane.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
cmd-swap-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-switch-client.c Change the existing client flags for control mode to apply for any client, use 2020-05-05 15:42:20 +01:00
cmd-unbind-key.c Make struct cmd local to cmd.c and move it out of tmux.h. 2020-04-13 08:26:27 +00:00
cmd-wait-for.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd.c Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
colour.c Add support for underscore colours with Setulc capability, mostly from 2019-06-27 15:17:41 +00:00
compat.h Solaris at least does not have _PATH_VI. 2020-05-01 09:11:56 +01:00
configure.ac Do not remove the automatic-rename option from the global set, only from 2020-04-30 15:20:08 +01:00
control-notify.c Terminate the output buffer for control mode output - it is now used as 2020-03-17 16:14:51 +00:00
control.c Add helpers for the simple case of parse string and add to command queue. 2020-04-13 18:59:41 +00:00
COPYING There is no examples directory anymore. 2019-03-26 15:10:05 +00:00
environ.c Export TERM_PROGRAM and TERM_PROGRAM_VERSION like various other terminals. 2020-05-05 06:31:14 +01:00
example_tmux.conf -attr -> -style. 2019-05-06 21:57:32 +01:00
file.c Portable does not need sys/queue.h. 2020-05-03 10:49:16 +01:00
format-draw.c Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
format.c Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
grid-view.c grid_view_delete_cells does need to clear, GitHub issue 1871. 2019-08-16 08:52:25 +00:00
grid.c Store and restore cursor position when copy mode is resized, from Anindya 2020-05-05 10:20:57 +01:00
input-keys.c Merge branch 'obsd-master' 2020-04-07 16:01:29 +01:00
input.c Do not hoke into struct window_pane from the tty code and instead set 2020-05-01 17:01:36 +01:00
job.c Add 'e' key in buffer mode to open the buffer in an editor. 2020-05-01 09:02:44 +01:00
key-bindings.c Add -Z to customize-mode binding. 2020-05-13 20:58:42 +01:00
key-string.c Some unnecessary assignments and unused variables. 2020-04-09 13:52:31 +00:00
layout-custom.c Make a best effort to set xpixel and ypixel for each pane and add 2019-11-28 09:45:15 +00:00
layout-set.c Change so main-pane-width and height can be given as a percentage. 2020-04-22 06:57:13 +00:00
layout.c Simplify code to work out if an extra line is needed in the cell. 2019-07-15 18:43:32 +00:00
log.c Merge branch 'obsd-master' 2019-09-25 00:01:25 +01:00
Makefile.am Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
mdoc2man.awk Generate tmux.1 using mdoc2man.awk on Solaris, issue brought up and changes 2013-04-16 11:33:53 +01:00
menu.c Turn off cursor in menus again. 2020-05-04 17:37:03 +01:00
mode-tree.c Expand target from client and use it to expand the prompt. 2020-05-14 10:35:26 +01:00
names.c Need to redraw borders now when some things change. Also change default so that 2020-04-29 08:55:21 +01:00
notify.c Merge branch 'obsd-master' 2020-04-14 08:01:33 +01:00
options-table.c Add a mark in copy mode. Set with set-mark command (bound to 'X') by default 2020-05-13 06:29:57 +01:00
options.c Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
osdep-aix.c Update my email address. 2016-01-19 18:07:25 +00:00
osdep-cygwin.c Update my email address. 2016-01-19 18:07:25 +00:00
osdep-darwin.c Nope, OS X kqueue is still broken... 2020-04-22 12:18:11 +01:00
osdep-dragonfly.c Update my email address. 2016-01-19 18:07:25 +00:00
osdep-freebsd.c Fixes for GNU/kFreeBSD from James Clarke. 2018-11-21 08:50:22 +00:00
osdep-hpux.c Update my email address. 2016-01-19 18:07:25 +00:00
osdep-linux.c Remove EVENT_* variables from environment after initializing libevent so they 2018-03-21 08:15:15 +00:00
osdep-netbsd.c Use KERN_PROC_CWD on NetBSD, from Leonardo Taccari. 2019-06-20 06:57:37 +01:00
osdep-openbsd.c Merge branch 'obsd-master' 2016-10-12 09:45:49 +01:00
osdep-sunos.c Some __unused. 2017-03-21 19:27:18 +00:00
osdep-unknown.c Update my email address. 2016-01-19 18:07:25 +00:00
paste.c Use VIS_CSTYLE for paste buffers also. 2020-05-01 17:59:13 +01:00
popup.c Move editor stuff to common code in popup.c. 2020-05-13 06:58:07 +01:00
proc.c Add a -D flag to ask tmux not to daemonize, useful both for running a debugger 2020-05-10 16:52:46 +01:00
README cc, make, libevent, ncurses are dependencies for all builds so no need to list 2019-07-17 08:57:22 +01:00
README.ja Japanese README from Kohei Takada. 2018-07-04 10:47:14 +01:00
regsub.c Some minor style nits. 2020-04-09 14:23:34 +00:00
resize.c Change the existing client flags for control mode to apply for any client, use 2020-05-05 15:42:20 +01:00
screen-redraw.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
screen-write.c Wrap all lines in customize mode, not just the description. 2020-05-09 15:29:14 +01:00
screen.c Store and restore cursor position when copy mode is resized, from Anindya 2020-05-05 10:20:57 +01:00
server-client.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
server-fn.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
server.c Add a -D flag to ask tmux not to daemonize, useful both for running a debugger 2020-05-10 16:52:46 +01:00
session.c Instead of forbidding invalid session names, sanitize them. 2020-04-24 16:40:10 +01:00
spawn.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
status.c Expand target from client and use it to expand the prompt. 2020-05-14 10:35:26 +01:00
style.c Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
SYNCING Update release text. 2017-05-29 08:40:33 +01:00
tmux.1 Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
tmux.c Add a -D flag to ask tmux not to daemonize, useful both for running a debugger 2020-05-10 16:52:46 +01:00
tmux.h Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
tty-acs.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
tty-features.c CUD is not a requirement and tweak some comments. 2020-04-24 16:47:38 +01:00
tty-keys.c Wrap a line. 2020-05-05 12:39:20 +01:00
tty-term.c CUD is not a requirement and tweak some comments. 2020-04-24 16:47:38 +01:00
tty.c Add a client flag 'active-pane' which stores the active pane in the client and 2020-05-14 11:18:19 +01:00
utf8.c Merge branch 'obsd-master' 2019-11-25 16:01:27 +00:00
window-buffer.c Move editor stuff to common code in popup.c. 2020-05-13 06:58:07 +01:00
window-client.c Add a customize mode where options may be browsed and changed, includes adding 2020-05-08 19:10:09 +01:00
window-clock.c Do not hoke into struct window_pane from the tty code and instead set 2020-05-01 17:01:36 +01:00
window-copy.c Add a mark in copy mode. Set with set-mark command (bound to 'X') by default 2020-05-13 06:29:57 +01:00
window-customize.c Expand target from client and use it to expand the prompt. 2020-05-14 10:35:26 +01:00
window-tree.c Expand target from client and use it to expand the prompt. 2020-05-14 10:35:26 +01:00
window.c Do not hoke into struct window_pane from the tty code and instead set 2020-05-01 17:01:36 +01:00
xmalloc.c Add xrecallocarray. 2019-11-28 09:51:58 +00:00
xmalloc.h Merge branch 'obsd-master' 2019-11-28 12:18:41 +00:00
xterm-keys.c Up to now, tmux sees \033\033[OA as M-Up and since we turned on 2017-05-07 21:25:59 +00:00

Welcome to tmux!

tmux is a terminal multiplexer: it enables a number of terminals to be created,
accessed, and controlled from a single screen. tmux may be detached from a
screen and continue running in the background, then later reattached.

This release runs on OpenBSD, FreeBSD, NetBSD, Linux, OS X and Solaris.

* Dependencies

tmux depends on libevent 2.x, available from:

	https://github.com/libevent/libevent/releases/latest

It also depends on ncurses, available from:

	https://invisible-mirror.net/archives/ncurses/

* Installation

To build and install tmux from a release tarball, use:

	$ ./configure && make
	$ sudo make install

tmux can use the utempter library to update utmp(5), if it is installed - run
configure with --enable-utempter to enable this.

To get and build the latest from version control - note that this requires
autoconf, automake and pkg-config:

	$ git clone https://github.com/tmux/tmux.git
	$ cd tmux
	$ sh autogen.sh
	$ ./configure && make

* Contributing

Bug reports, feature suggestions and especially code contributions are most
welcome. Please send by email to:

	tmux-users@googlegroups.com

Or open a GitHub issue or pull request.

* Documentation

For documentation on using tmux, see the tmux.1 manpage. View it from the
source tree with:

	$ nroff -mdoc tmux.1|less

A small example configuration is in example_tmux.conf.

A bash(1) completion file is at:

	https://github.com/imomaliev/tmux-bash-completion

For debugging, run tmux with -v and -vv to generate server and client log files
in the current directory.

* Support

The tmux mailing list for general discussion and bug reports is:

	https://groups.google.com/forum/#!forum/tmux-users

Subscribe by sending an email to:

	tmux-users+subscribe@googlegroups.com

* License

This file and the CHANGES files are licensed under the ISC license. All other
files have a license and copyright notice at their start.