A Lua-Neovim plugin for toggling and managing terminal windows with multiple buffer support.
nvim-terminal is a Lua plugin for Neovim that enables users to open, toggle, and manage terminal windows directly inside the editor. It solves the problem of context switching by providing quick access to shell commands and multiple terminal buffers without interrupting the coding workflow.
Neovim users who frequently use terminal commands within their editor and want a streamlined way to manage terminal windows without relying on external tools or complex configurations.
Developers choose nvim-terminal for its simplicity, customizable keybindings, and efficient handling of multiple terminal buffers, making it a lightweight alternative to built-in terminal management in Neovim.
A Lua-Neovim plugin that toggles a terminal
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Installs easily with a simple packer setup and requires minimal configuration, focusing on core terminal toggling and switching without bloat, as evidenced by the straightforward installation snippet.
Enables quick switching between up to five terminal buffers using dedicated keymaps like <leader>1-5, enhancing multitasking within Neovim without leaving the editor.
Offers extensive configuration options for window position, size, split behavior, and keybindings through the setup method, allowing users to tailor the terminal to their workflow.
Exposes global variables (NTGlobal) and objects for advanced scripting, as shown in the 'Add Keymaps Manually' section, enabling custom keymap setups and integration with Lua scripts.
Requires manually setting `vim.o.hidden = true` to reuse terminal buffers; without it, the plugin opens new terminals each time, which is not enforced and can lead to inefficiency if overlooked.
Supports only up to five terminals by default, which may be insufficient for complex workflows requiring more simultaneous sessions, and lacks easy extensibility beyond this limit.
Lacks built-in session persistence, job control, or integration with external tools like debuggers, making it less suitable for advanced terminal management compared to more comprehensive plugins.