Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tmux/tmux
tmux source code
https://github.com/tmux/tmux
Last synced: 6 days ago
JSON representation
tmux source code
- Host: GitHub
- URL: https://github.com/tmux/tmux
- Owner: tmux
- License: other
- Created: 2015-06-03T23:32:55.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2025-01-12T16:02:52.000Z (7 days ago)
- Last Synced: 2025-01-13T11:53:02.932Z (6 days ago)
- Language: C
- Homepage:
- Size: 16.8 MB
- Stars: 36,071
- Watchers: 435
- Forks: 2,151
- Open Issues: 53
-
Metadata Files:
- Readme: .github/README.md
- Changelog: CHANGES
- Contributing: .github/CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: COPYING
Awesome Lists containing this project
- awesome-notes - tmux
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/tmux/tmux - Terminal multiplexer (Jump To / **Command Line Tools**)
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/tmux/tmux - Terminal multiplexer (Jump To / **Command Line Tools**)
- fucking-Awesome-Linux-Software - ![Open-Source Software - It lets you switch easily between several programs in one terminal, detach them (they keep running in the background) and reattach them to a different terminal. And do a lot more. (Command Line Utilities / Tools)
- awesome-pose - tmux
- vim-keybindings-everywhere-the-ultimate-list - tmux - the terminal multiplexer, superseding GNU Screen. (Terminal Emulators)
- awesome-starred - tmux - tmux source code (C)
- links - tmux - A terminal multiplexer, more user-friendly than screen. (Command Line Tools)
- awesometools - tmux - tmux/tmux: tmux source code (For Developers / Utilities)
- awesome-devtools - Tmux - A very useful terminal multiplexer to multitask as well as improve productivity. ![ossoft][oss] 🌟 (Command line - Linux / Learning resources)
- awesome-list - tmux - 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. (Linux / JavaScript)
- Awesome-Linux-Software - ![Open-Source Software - It lets you switch easily between several programs in one terminal, detach them (they keep running in the background) and reattach them to a different terminal. And do a lot more. (Command Line Utilities / Tools)
- awesome-institutional-hpc - tmux - Terminal multiplexers, which allow running multiple sessions and detatching and reattaching to terminal sessions (Fancy shell sessions)
- awesome-linux-ricing - tmux
- awesome-alternatives-in-rust - tmux
- starred-awesome - tmux - tmux source code (C)
- awesome-inspiration - tmux
README
# 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, macOS and Solaris.
## Dependencies
tmux depends on [libevent](https://libevent.org) 2.x, available from [this
page](https://github.com/libevent/libevent/releases/latest).It also depends on [ncurses](https://www.gnu.org/software/ncurses/), available
from [this page](https://invisible-mirror.net/archives/ncurses/).To build tmux, a C compiler (for example gcc or clang), make, pkg-config and a
suitable yacc (yacc or bison) are needed.## Installation
### Binary packages
Some platforms provide binary packages for tmux, although these are sometimes
out of date. Examples are listed on
[this page](https://github.com/tmux/tmux/wiki/Installing).### From release tarball
To build and install tmux from a release tarball, use:
~~~bash
./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.For more detailed instructions on building and installing tmux, see
[this page](https://github.com/tmux/tmux/wiki/Installing).### From version control
To get and build the latest from version control - note that this requires
`autoconf`, `automake` and `pkg-config`:~~~bash
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:Or open a GitHub issue or pull request. **Please read [this
document](CONTRIBUTING.md) before opening an issue.**There is [a list of suggestions for contributions](https://github.com/tmux/tmux/wiki/Contributing).
Please feel free to ask on the mailing list if you're thinking of working on something or need
further information.## Documentation
For documentation on using tmux, see the tmux.1 manpage. View it from the
source tree with:~~~bash
nroff -mdoc tmux.1|less
~~~A small example configuration is in `example_tmux.conf`.
And a bash(1) completion file at:
https://github.com/imomaliev/tmux-bash-completion
For debugging, run tmux with `-v` or `-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: