A Neovim plugin that integrates tmux for seamless pane navigation, resizing, and clipboard synchronization.
tmux.nvim is a Neovim plugin that provides deep integration with tmux, enabling seamless navigation, resizing, and clipboard synchronization between Neovim splits and tmux panes. It solves the problem of disjointed workflows in terminal-based development by allowing developers to control tmux directly from Neovim.
Developers who use both Neovim and tmux in their terminal workflow and want a unified, keyboard-driven interface for managing panes and clipboard across both tools.
It offers a more integrated and efficient alternative to manually switching between Neovim and tmux, with secure clipboard synchronization and customizable keybindings that mimic native tmux behavior.
tmux integration for nvim features pane movement and resizing from within nvim.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Enables unified movement between Neovim splits and tmux panes with consistent keybindings like Ctrl-h/j/k/l, eliminating context switches as demonstrated in the navigation video.
Syncs Neovim registers with tmux buffers directly via tmux API, avoiding insecure temporary files and allowing cross-instance copy-paste without external tools.
Offers extensive options to enable/disable features, customize keybindings, and ignore specific tmux buffers, with detailed Lua-based configuration defaults.
Supports simultaneous resizing of Neovim and tmux panes with Alt-keybindings and pane swapping from Neovim, enhancing workflow efficiency with minimal overhead.
The maintainer explicitly states no longer using tmux and will only merge PRs, not implement fixes or features, which risks long-term stability and updates.
Requires precise matching of keybindings in both Neovim and tmux.conf files, with lengthy scripts needed for navigation, resizing, and swapping, increasing setup errors.
On really slow machines, clipboard synchronization can cause minimal input lag when syncing registers, as admitted in the README under copy sync downsides.
Battle tested only with tmux 3.2a and Neovim >= 0.5, with no guarantees for newer or older versions, potentially leading to breakages in diverse environments.