Overview
Blink.cmp is a modern completion plugin with native snippet support, fuzzy matching, and intelligent source prioritization. Configuration file:lua/plugins/completions.lua:2
Dependencies
folke/lazydev.nvim- Lua development completionnvim-mini/mini.nvim- Mini.nvim utilities
Keymap configuration
Navigation keymaps
Navigation keymaps
Appearance settings
Visual configuration
Visual configuration
Completion behavior
Auto-brackets
Auto-brackets
Automatically inserts brackets
() when completing functions and methods.When you complete a function like
myFunction, it will automatically insert myFunction() with the cursor positioned inside the parentheses.Completion menu
Completion menu
Menu columns
The completion menu displays four columns:- kind_icon - Icon representing the completion type (function, variable, etc.)
- label + label_description - The completion text and additional context
- kind - Type name (Function, Variable, etc.)
- source_name - Source provider (LSP, Buffer, etc.)
Ghost text
Ghost text
Documentation window
Documentation window
Automatically shows documentation for the selected item.
Delay in milliseconds before showing documentation.
Enables syntax highlighting in documentation using Tree-sitter.
Border style for the documentation window.
Shows a scrollbar in the documentation window.
Trigger settings
Trigger settings
Disables prefetching completions when entering insert mode for better performance.
Shows completions while navigating snippet placeholders.
Disables showing completions when backspacing in a keyword.
List behavior
List behavior
Command-line completion
Cmdline settings
Cmdline settings
Disabled because
mini.cmdline is used instead, which provides better previews.The configuration uses
mini.cmdline for command-line completion with enhanced preview capabilities.Completion sources
Default sources
Default sources
The following sources are enabled by default (in priority order):
- lazydev - Lua development for Neovim config (score offset: +100)
- lsp - Language Server Protocol completions
- path - File system path completions
- snippets - Code snippets
- buffer - Words from open buffers
Filetype-specific sources
Filetype-specific sources
Source providers
Source providers
LazyDev provider for Lua development with +100 score offset (highest priority).Module:
lazydev.integrations.blinkDatabase completion via vim-dadbod integration.Module:
vim_dadbod_completion.blinkSnippet provider that searches
~/.config/nvim/after/snippets for custom snippets.LSP provider with special configuration for markdown_oxide.Custom keyword pattern for Markdown:
[\(\k\| \\/\|#\)\+]Requires at least 2 characters before showing cmdline completions.
Fuzzy matching
Implementation
Implementation
Uses Rust-based fuzzy matching for better performance, with a warning if the binary isn’t available.
The Rust implementation provides significantly faster fuzzy matching, especially for large completion lists.
Signature help
Function signatures
Function signatures
Version
The configuration uses version1.* of Blink.cmp, which ensures compatibility with the 1.x release series while receiving bug fixes and minor updates.
Blink.cmp integrates seamlessly with LSP servers configured in
lua/plugins/lsp/init.lua and automatically merges LSP capabilities.