A high-performance Neovim filetype mode that uses conceal and syntax highlighting to display terminal color codes.
terminal.lua is a Neovim plugin that creates a high-performance filetype mode for displaying terminal output. It processes ANSI color codes in text buffers and uses Neovim's conceal and syntax highlighting features to render colored text, making it easier to read logs, command output, or any text containing terminal escape sequences directly within the editor.
Neovim users who frequently work with terminal output, logs, or scripts that generate ANSI-colored text and want a native, efficient way to view them in the editor.
It offers a lightweight, performant alternative to external terminal emulators or custom highlighting scripts, leveraging Neovim's built-in capabilities for a seamless and integrated experience.
A high performance filetype mode for Neovim which leverages conceal and highlights your buffer with the correct color codes.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Optimized for speed, it efficiently processes and highlights ANSI color codes in buffers without significant overhead, as emphasized in the Key Features.
Leverages Neovim's native conceal feature to hide raw color codes, displaying only the colored text for a cleaner view, which is a core aspect of the plugin.
Correctly applies syntax highlighting based on embedded ANSI color codes, ensuring terminal output is rendered as intended, as stated in the Key Features.
Activated by simply setting the filetype to 'terminal', with an optional setup function for automatic highlighting, making it easy to integrate.
The plugin lacks support for underline, italic, and other ANSI code modes, which is explicitly admitted in the TODO list, limiting its utility for full terminal emulation.
Using conceal to hide color codes can cause the cursor to appear laggy when moving over hidden text, a known drawback noted in the README that affects user experience.