About

tmux 3: Productive Mouse-Free Development

Your mouse is slowing you down. You’re juggling multiple terminal windows, development tools, or shell sessions, and the context switching is eating away at your productivity. Take control of your environment with tmux, a keyboard-driven terminal multiplexer that you can tailor to your workflow. With this updated third edition for tmux 3, you’ll customize, script, and leverage tmux’s unique abilities to craft a productive terminal environment that lets you keep your fingers on your keyboard’s home row.

You have a database console, web server, background job service, front-end build tools, a test runner, and maybe a terminal-based text editor running simultaneously, often each in its own terminal window. Switching between these tools takes up valuable time and breaks your concentration. With tmux you can improve your productivity and regain your focus, all without ever touching your mouse.

Use tmux to manage multiple terminal sessions in a single window, manage and run programs side by side in panes, and create the perfect development environment with custom scripts so that when you’re ready to work, your programs are waiting for you. Manipulate text with tmux’s buffers as you move text around freely between applications. Collaborate with others remotely and integrate more advanced features into your workflow as you manage multiple sessions, add custom scripts to the status line, and hook into life cycle events. Whether you’re an application developer or a system administrator, you’ll find techniques to help you take control of your terminal.

This fully revised third edition includes updated configuration commands, a revised method for pair programming, and hands-on examples of new features like custom popups and event hooks that let you add even more automation to your workflow.

What You Need This book is written for tmux 3.4 or higher. You’ll need a Mac or Linux machine, or a machine running Windows with the Windows Subsystem for Linux installed. You’ll also need some experience running shell commands.