A high-performance, feature-rich autocompletion engine for Neovim with SQLite caching, concurrent scheduling, and extensive language support.
coq.nvim is a fast and powerful autocompletion plugin for Neovim designed to provide real-time suggestions on every keystroke. It integrates multiple sources like LSP, snippets, Treesitter, and CTags, prioritizing speed through native C optimizations and SQLite caching. This makes it a comprehensive solution for developers seeking a responsive and intelligent coding assistant.
Neovim users, particularly developers who prioritize speed and a feature-rich autocompletion experience, including those working with multiple languages and complex projects requiring LSP, snippet, and context-aware completions.
Developers choose coq.nvim for its unparalleled speed, achieved through native C B-trees and SQLite VM interrupts, and its extensive feature set including over 9,000 built-in snippets, fuzzy search with error correction, and real-time performance statistics. It offers a seamless, non-intrusive autocompletion experience that integrates deeply with the Neovim ecosystem.
Fast as FUCK nvim completion. SQLite, concurrent scheduler, hundreds of hours of optimization.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses native C B-trees and SQLite VM interrupts to deliver results on every keystroke without throttling, as highlighted in the PERFORMANCE.md.
Features typo-resistant search with recency and proximity bonuses, plus error correction like 'cour' -> 'colour_space', detailed in FUZZY.md.
Supports incremental completion, client-side caching, multi-server completions, and snippet expansion, requiring only two lines of change for LSP setup.
Includes over 9,000 built-in snippets with a live REPL for custom snippet creation, covering 99% of LSP grammar and 95% of Vim grammar.
Treesitter source is slow and crash-prone in Neovim 0.5, limited to parsing near the cursor and idle events, making it unreliable for large files.
Tabnine integration is disabled by default due to high CPU usage, and the author considers removing it, citing issues from Tabnine's bug tracker.
Requires installing and configuring multiple separate plugins (coq_nvim, coq.artifacts, coq.thirdparty) and manual LSP setup with coq.lsp_ensure_capabilities.