A Neovim plugin that enables Vim keybindings for editing commands directly in the built-in terminal.
term-edit.nvim is a Neovim plugin that brings Vim's modal editing keybindings to the built-in terminal. It allows users to edit command lines using familiar Vim motions like `h`, `j`, `k`, `l` and operators such as `d`, `c`, and `p`, eliminating the need to switch between different editing modes when working in the terminal. This solves the problem of inefficient command-line editing by extending Vim's powerful editing capabilities directly to shell interactions.
Neovim users who frequently use the built-in terminal and want to maintain their Vim editing workflow without reaching for arrow keys or switching modes. It's particularly valuable for developers, system administrators, and power users who edit complex commands regularly.
Developers choose term-edit.nvim because it seamlessly integrates Vim's efficient modal editing into terminal usage, reducing context switching and increasing productivity. Its unique selling point is providing full Vim keybinding support specifically for Neovim's terminal, with customizable mappings and intelligent prompt detection that works with various shells like bash, zsh, and PowerShell.
Vim Keybindings in Neovim's Built-in 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.
Extends Vim's modal editing to the terminal with motions like 'h', 'j', 'k', 'l' and operators such as 'd' and 'c', eliminating the need to switch modes for command-line editing.
Allows customizing keybindings via the mapping option and adjusting feedkeys_delay for shell responsiveness, as detailed in the setup configuration.
Supports visual selection and editing of command text, mirroring buffer behavior for complex command modifications.
Uses Lua patterns to detect the end of shell prompts, ensuring accurate command editing start points, though it requires manual setup.
Struggles with shells like PowerShell and zsh where arrow keys trigger completions, leading to unreliable behavior and potential command disruptions, as noted in limitations.
Can cause terminal beeps and requires manual tuning of feedkeys_delay for slow shells, adding overhead and potential latency to interactions.
Users must manually configure the prompt_end pattern, which can be error-prone and shell-specific, with no default provided.