mirror of
https://github.com/mqttr/dotfiles.git
synced 2025-12-15 20:35:50 -06:00
86 lines
3.3 KiB
Lua
86 lines
3.3 KiB
Lua
return {
|
|
'saghen/blink.cmp',
|
|
event = 'VimEnter',
|
|
version = '1.*',
|
|
dependencies = {
|
|
-- Snippet Engine
|
|
{
|
|
'L3MON4D3/LuaSnip',
|
|
version = '2.*',
|
|
build = (function()
|
|
-- Build Step is needed for regex support in snippets.
|
|
-- This step is not supported in many windows environments.
|
|
-- Remove the below condition to re-enable on windows.
|
|
if vim.fn.has 'win32' == 1 or vim.fn.executable 'make' == 0 then
|
|
return
|
|
end
|
|
return 'make install_jsregexp'
|
|
end)(),
|
|
dependencies = {
|
|
-- `friendly-snippets` contains a variety of premade snippets.
|
|
-- See the README about individual language/framework/plugin snippets:
|
|
-- https://github.com/rafamadriz/friendly-snippets
|
|
-- {
|
|
-- 'rafamadriz/friendly-snippets',
|
|
-- config = function()
|
|
-- require('luasnip.loaders.from_vscode').lazy_load()
|
|
-- end,
|
|
-- },
|
|
},
|
|
opts = {},
|
|
},
|
|
'folke/lazydev.nvim',
|
|
},
|
|
--- @module 'blink.cmp'
|
|
--- @type blink.cmp.Config
|
|
opts = {
|
|
keymap = {
|
|
-- All presets have the following mappings:
|
|
-- <tab>/<s-tab>: move to right/left of your snippet expansion
|
|
-- <c-space>: Open menu or open docs if already open
|
|
-- <c-n>/<c-p> or <up>/<down>: Select next/previous item
|
|
-- <c-e>: Hide menu
|
|
-- <c-k>: Toggle signature help
|
|
--
|
|
-- See :h blink-cmp-config-keymap for defining your own keymap
|
|
preset = 'super-tab',
|
|
},
|
|
appearance = { nerd_font_variant = 'mono' },
|
|
completion = {
|
|
menu = {
|
|
-- min_width = 30,
|
|
-- max_width = 50,
|
|
-- max_height = 20,
|
|
border = 'rounded', -- Rounded corners for a fancy look
|
|
winblend = 10, -- Slight transparency for a modern look
|
|
winhighlight = 'Normal:BlinkCmpMenu,FloatBorder:BlinkCmpMenuBorder,CursorLine:BlinkCmpMenuSelection,Search:None',
|
|
scrolloff = 2,
|
|
},
|
|
documentation = {
|
|
-- By default, you may press `<c-space>` to show the documentation.
|
|
auto_show = true,
|
|
auto_show_delay_ms = 200,
|
|
window = {
|
|
border = 'rounded',
|
|
winblend = 10,
|
|
winhighlight = 'Normal:BlinkCmpDoc,FloatBorder:BlinkCmpDocBorder,CursorLine:BlinkCmpDocCursorLine,Search:None',
|
|
},
|
|
},
|
|
ghost_text = { enabled = true },
|
|
accept = { auto_brackets = { enabled = true } },
|
|
},
|
|
|
|
sources = {
|
|
default = { 'lsp', 'path', 'snippets', 'lazydev' },
|
|
providers = {
|
|
lazydev = { module = 'lazydev.integrations.blink', score_offset = 100 },
|
|
},
|
|
},
|
|
snippets = { preset = 'luasnip' },
|
|
-- See :h blink-cmp-config-fuzzy for more information
|
|
fuzzy = { implementation = 'prefer_rust_with_warning' },
|
|
-- Shows a signature help window while you type arguments for a function
|
|
signature = { enabled = true }
|
|
},
|
|
}
|