Tmux 3.5 has been recently released, bringing several updates and improvements over its previous version, 3.4. This new release primarily focuses on enhanced key handling, user interface tweaks, and better compatibility with various terminal environments.
However, before moving to the novelties in the new version, let’s briefly explain what tmux is for those who aren’t familiar. To put it simply, self-described as a terminal multiplexer, tmux is a tool that allows users to manage multiple terminal sessions within a single window.
Imagine splitting your terminal into various panes, each with a separate session, and having the flexibility to detach or reconnect later. This is especially useful for developers, system administrators, and anyone needing to keep track of multiple processes simultaneously. Now, let’s dive into the latest release.
Tmux 3.5: Key Improvements
The most striking change in tmux 3.5 is a revamped extended keys support. The key handling has been substantially updated to match the behavior of xterm more closely, supporting both mode 1 and mode 2.
This results in tmux always requesting mode 2 from the parent terminal, leading to more consistent key mapping behavior. Additionally, there’s a new option called extended-keys-format, which helps control the format similar to xterm’s formatOtherKeys.
Another improvement involves overlays, such as popups and menus, which now clear automatically when entering a command prompt, reducing visual clutter and providing a smoother user experience. Thereโs also a new “copy-mode -d” flag, which allows users to scroll a page down if already in copy mode, aligning with the behavior of the existing “-e” flag.
Moreover, tmux 3.5 also adds the ability to display hyperlinks in copy mode, providing a more interactive experience when dealing with links in the terminal. Furthermore, two new formats, search_count, and search_count_partial, have been introduced for copy mode to manage searches better.
An interesting addition is mirrored versions of the main-horizontal and main-vertical layouts, which allow users to place the main pane on the bottom or right instead of the usual top or left, thus adding more flexibility for users to tailor their workspace to their preferences.
Regarding mouse handling, mouse move keys are now ignored unless explicitly requested by the application, and clicking on the status line no longer resets the mouse pane. These adjustments improve the overall usability of mouse interactions within tmux. But that’s not all.
The tmux 3.5 terminal multiplexer also introduces several other performance and stability improvements. For example, the REP command now works with Unicode characters, and new workarounds are available for some Linux console bugs with bright colors.
Another notable addition is the command-error hook, which triggers whenever a command fails, allowing users to have more control and awareness of errors within their session. The new “allow-set-title” option can also be used to forbid applications from changing the pane title, ensuring a more consistent environment.
Lastly, tmux 3.5 brings improved handling for mouse up events to avoid ignoring multiple released buttons, prevents crashes during pane focusing, and ensures more reliable selection when deleting buffers. The escape-time has also been reduced to 10 milliseconds by default, providing a snappier response when using tmux shortcuts.
For more information, the changelog provides a detailed overview of all changes.