Go to file
Nicholas Marriott 57fe03dc5a Move lazy resize from the pane to the window, there is no point in resizing the
window unless it is the current window, and if we do and don't resize the pane
until later there are problems if the size changes from A to B then back to A.
2020-05-16 14:57:36 +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 Tweak CHANGES. 2020-05-14 14:07:26 +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 Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +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 Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +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 On select-window, make this client the latest client for the window. 2020-05-15 22:52:55 +01:00
cmd-send-keys.c Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +01: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-16 09:12:44 +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 imsg.h needs uio.h, pointed out by deraadt 2020-05-08 14:15:11 +00:00
format-draw.c Add an option to set the pane border lines style from a choice of single lines 2020-05-14 16:49:08 +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 Add screen write flags instead of individual bits and fix line length 2020-05-14 13:18:05 +01:00
input-keys.c If the application has not requested extended keys, then C-1 sends 1 not 2020-05-16 07:39:22 +01:00
input.c List needs to be sorted. 2020-05-15 19:17:56 +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 Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +01:00
key-string.c Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +01: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 xterm-keys has been on by default for 5 years and all other modern terminals 2020-05-15 10:31:54 +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 Mask off flags bits in menu keys. 2020-05-15 16:17:20 +01:00
mode-tree.c Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +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 terminal feature for enable/disable extended keys (supported by xterm and 2020-05-15 16:15:24 +01:00
options.c Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +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 Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +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 Move lazy resize from the pane to the window, there is no point in resizing the 2020-05-16 14:57:36 +01:00
screen-redraw.c Draw outside correctly with pane numbers. 2020-05-14 16:58:14 +01:00
screen-write.c Add screen write flags instead of individual bits and fix line length 2020-05-14 13:18:05 +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 Move lazy resize from the pane to the window, there is no point in resizing the 2020-05-16 14:57:36 +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 xterm-keys has been on by default for 5 years and all other modern terminals 2020-05-15 10:31:54 +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 Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +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 terminal feature for enable/disable extended keys (supported by xterm and 2020-05-15 16:15:24 +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 Move lazy resize from the pane to the window, there is no point in resizing the 2020-05-16 14:57:36 +01:00
tty-acs.c Add an option to set the pane border lines style from a choice of single lines 2020-05-14 16:49:08 +01:00
tty-features.c Add a terminal feature for enable/disable extended keys (supported by xterm and 2020-05-15 16:15:24 +01:00
tty-keys.c XTerm not xterm. 2020-05-15 19:10:06 +01:00
tty-term.c Add a terminal feature for enable/disable extended keys (supported by xterm and 2020-05-15 16:15:24 +01:00
tty.c Need to update features after all the sequences come in. 2020-05-16 07:32:46 +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 Separate key flags and modifiers, log key flags, make the "xterm" flag more 2020-05-15 12:16:41 +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 Move lazy resize from the pane to the window, there is no point in resizing the 2020-05-16 14:57: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

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.