Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Clone of the tmux Git repository. The master branch contains the latest unreleased code. There are topic branches which may be subject to rebasing, so don't base changes off them. DO NOT SEND me pull-requests, send patches to tmux-users mailing list instead.
C Groff PostScript Other
Branch: master
Failed to load latest commit information.
compat Fix a warning, from Kosta Zertsekel.
examples Handle \ at EOL from Daniel Hahler.
logo Add tmux logo, createed by Jason Long.
presentations Add a couple of presentations I wrote a few years ago. One for the il…
tools Remove old tools.
.gitignore Ignore .dirstamp files
.mailmap Spaces -> tabs.
.travis.yml TRAVIS-CI: correct path to configure
CHANGES No $Id$.
COPYING Add a COPYING file, suggested by Dagobert Michelsen.
FAQ Note version this happened.
Makefile.am Add _LINUX_SOURCE_COMPAT on AIX.
README README: Clarify SYNCING is under the ISC
SYNCING SYNCING: Few tweaks
TODO It isn't supposed to...
arguments.c Check for flock in libbsd for AIX, and remove some getopt.h includes.…
array.h $Id$ -> $OpenBSD$.
attributes.c No need for $Id$ now.
autogen.sh Remove $Id$.
cfg.c Merge branch 'obsd-master'
client.c Merge branch 'obsd-master'
cmd-attach-session.c Make session_update_activity more useful and use it in more places.
cmd-bind-key.c Support for multiple key tables to commands to be bound to sequences of
cmd-break-pane.c Change break-pane to take target and source panes (-t and -s) in line
cmd-capture-pane.c Move input parser structs into input.c (removing fairly useless
cmd-choose-buffer.c Rewrite of the target resolution internals to be simpler and more
cmd-choose-client.c Rewrite of the target resolution internals to be simpler and more
cmd-choose-tree.c Rewrite of the target resolution internals to be simpler and more
cmd-clear-history.c Come out of copy mode when history is cleared.
cmd-command-prompt.c Rewrite of tmux mouse support which was a mess. Instead of having
cmd-confirm-before.c Change deref to the more sensible unref, and add a couple I missed be…
cmd-copy-mode.c Bind mouse dragging so that it is passed through to applications if they
cmd-delete-buffer.c No need for $Id$ now.
cmd-detach-client.c Convert clients list into a TAILQ.
cmd-display-message.c Rewrite of the target resolution internals to be simpler and more
cmd-display-panes.c No need for $Id$ now.
cmd-find-window.c Use a TAILQ not array for find-window.
cmd-find.c Merge branch 'obsd-master'
cmd-if-shell.c Set working directory for run-shell and if-shell.
cmd-join-pane.c Merge branch 'obsd-master'
cmd-kill-pane.c No need for $Id$ now.
cmd-kill-server.c No need for $Id$ now.
cmd-kill-session.c No need for $Id$ now.
cmd-kill-window.c Add a format window_linked which is 1 if a window has been linked
cmd-list-buffers.c Wrap all the individual format_* calls in a single format_defaults
cmd-list-clients.c Convert clients list into a TAILQ.
cmd-list-keys.c Support for multiple key tables to commands to be bound to sequences of
cmd-list-panes.c Wrap all the individual format_* calls in a single format_defaults
cmd-list-sessions.c Wrap all the individual format_* calls in a single format_defaults
cmd-list-windows.c Wrap all the individual format_* calls in a single format_defaults
cmd-list.c No need for $Id$ now.
cmd-load-buffer.c Change deref to the more sensible unref, and add a couple I missed be…
cmd-lock-server.c No need for $Id$ now.
cmd-move-window.c Move the shuffle code from new-window -a into a function and add a -a
cmd-new-session.c Make session_update_activity more useful and use it in more places.
cmd-new-window.c Move the shuffle code from new-window -a into a function and add a -a
cmd-paste-buffer.c Merge branch 'obsd-master'
cmd-pipe-pane.c No paths.h on Solaris.
cmd-queue.c Break cmdq_continue inner loop into a helper function.
cmd-refresh-client.c Move the jobs output cache into the formats code so that #() work more
cmd-rename-session.c No need for $Id$ now.
cmd-rename-window.c No need for $Id$ now.
cmd-resize-pane.c Rewrite of tmux mouse support which was a mess. Instead of having
cmd-respawn-pane.c Fix some format specifier nits, from Ben Boeckel.
cmd-respawn-window.c No need for $Id$ now.
cmd-rotate-window.c No need for $Id$ now.
cmd-run-shell.c Set working directory for run-shell and if-shell.
cmd-save-buffer.c Merge branch 'obsd-master'
cmd-select-layout.c Add select-layout -o to undo the last layout change (apply the previo…
cmd-select-pane.c Add support for a single "marked pane". There is one marked pane in the
cmd-select-window.c No need for $Id$ now.
cmd-send-keys.c Move input parser structs into input.c (removing fairly useless
cmd-set-buffer.c No need for $Id$ now.
cmd-set-environment.c No need for $Id$ now.
cmd-set-option.c Per-session timers for locking, and remove the global one-second timer.
cmd-show-environment.c Add a -s flag to show-environment to output Bourne shell commands a la
cmd-show-messages.c Merge branch 'obsd-master'
cmd-show-options.c No need for $Id$ now.
cmd-source-file.c No need for $Id$ now.
cmd-split-window.c Merge branch 'obsd-master'
cmd-string.c No need for $Id$ now.
cmd-swap-pane.c Add support for a single "marked pane". There is one marked pane in the
cmd-swap-window.c Add support for a single "marked pane". There is one marked pane in the
cmd-switch-client.c Make session_update_activity more useful and use it in more places.
cmd-unbind-key.c Support for multiple key tables to commands to be bound to sequences of
cmd-wait-for.c No need for $Id$ now.
cmd.c Merge branch 'obsd-master'
colour.c Use ints for the calculations rather than u_char, they could end up
compat.h Update imsg*.[ch] from OpenBSD, including bzero->memset.
configure.ac Check for flock in libbsd for AIX, and remove some getopt.h includes.…
control-notify.c Convert clients list into a TAILQ.
control.c Rewrite of tmux mouse support which was a mess. Instead of having
environ.c Simplify environ_push so it doesn't need the ARRAY_* functions.
format.c Merge branch 'obsd-master'
grid-cell.c Rather than having two grids for each pane, one for ASCII and one for
grid-view.c Revert to r1.16 since this is still clearly broken and I can't see how
grid.c In grid_duplicate_lines, if the line is empty (cellsize == 0) then clear
input-keys.c Merge branch 'obsd-master'
input.c Only do the automatic-rename dance if the pane has changed (seen output,
job.c Merge branch 'obsd-master'
key-bindings.c Make it so that if a window or session target is prefixed with an =,
key-string.c Rewrite of tmux mouse support which was a mess. Instead of having
layout-custom.c Always format real layout even when zoomed.
layout-set.c No need for $Id$ now.
layout.c Rewrite of tmux mouse support which was a mess. Instead of having
log.c Merge branch 'obsd-master'
mdoc2man.awk Generate tmux.1 using mdoc2man.awk on Solaris, issue brought up and c…
mode-key.c mode_key_entry can go into mode-key.c; also a few spaces->tabs.
names.c Check changed flag after restarting timer.
notify.c Merge branch 'obsd-master'
options-table.c Merge branch 'obsd-master'
options.c When given an invalid style, don't set the option to the default. Fix
osdep-aix.c Implement osdep_get_name and osdep_get_cwd for AIX, from J Raynor.
osdep-cygwin.c Need param.h, from Ismail Donmez.
osdep-darwin.c No need for $Id$ now.
osdep-dragonfly.c No need for $Id$ now.
osdep-freebsd.c No need for $Id$ now.
osdep-hpux.c No need for $Id$ now.
osdep-linux.c No need for $Id$ now.
osdep-netbsd.c No need for $Id$ now.
osdep-openbsd.c Merge branch 'obsd-master'
osdep-sunos.c No need for $Id$ now.
osdep-unknown.c No need for $Id$ now.
paste.c Merge branch 'obsd-master'
resize.c Convert clients list into a TAILQ.
screen-redraw.c Add support for a single "marked pane". There is one marked pane in the
screen-write.c Revert to marking lines as wrapped on newlines, fixes problems with
screen.c Merge branch 'obsd-master'
server-client.c Merge branch 'obsd-master'
server-fn.c Merge branch 'obsd-master'
server-window.c Error messages should not have a trailing period.
server.c Merge branch 'obsd-master'
session.c Merge branch 'obsd-master'
signal.c No need for $Id$ now.
status.c Run status update on a per-client timer at status-interval.
style.c Style spacing nits.
tmux.1 Merge branch 'obsd-master'
tmux.c Merge branch 'obsd-master'
tmux.h Merge branch 'obsd-master'
tty-acs.c No need for $Id$ now.
tty-keys.c Do not use the key variable uninitialized (in a debug log statement),
tty-term.c Merge branch 'obsd-master'
tty.c Fix line endings.
utf8.c Merge branch 'obsd-master'
window-choose.c Give clock mode its own timer.
window-clock.c Give clock mode its own timer.
window-copy.c Give clock mode its own timer.
window.c Merge branch 'obsd-master'
xmalloc.c No need for $Id$ now.
xterm-keys.c No need for $Id$ now.

README

Welcome to tmux!

tmux is a "terminal multiplexer", it enables a number of terminals (or windows)
to be accessed and controlled from a single terminal. tmux is intended to be a
simple, modern, BSD-licensed alternative to programs such as GNU screen.

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

tmux depends on libevent 2.x. Download it from:

	http://www.monkey.org/~provos/libevent/

To build tmux from a release tarball, do:

	$ ./configure && make
	$ sudo make install

To get and build the latest from version control:

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

For more information see http://git-scm.com. Patches should be sent by email to
the mailing list at tmux-users@googlegroups.com.

For documentation on using tmux, see the tmux.1 manpage. It can be viewed from
the source tree with:

	$ nroff -mdoc tmux.1|less

Some common questions are answered in the FAQ file and a more extensive (but
slightly out of date) guide is available in the OpenBSD FAQ at
http://www.openbsd.org/faq/faq7.html#tmux. A rough todo list is in the TODO
file and some example configurations and a Vim syntax file are in the examples
directory.

For debugging, running tmux with -v or -vv will generate server and client log
files in the current directory.

tmux mailing lists are available. For general discussion and bug reports:

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

And for Git commit emails:

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

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

	tmux-users@googlegroups.com

This file and the CHANGES, FAQ, SYNCING and TODO files are licensed under
the ISC license. Files under examples/ remain copyright their authors unless
otherwise stated in the file but permission has been received to distribute
them with tmux. All other files have a license and copyright notice at their
start.

-- Nicholas Marriott <nicholas.marriott@gmail.com>
Something went wrong with that request. Please try again.