transition to mini-completion

This commit is contained in:
2026-07-03 14:41:01 +02:00
parent db120ff9e3
commit 1c2b5f8a0e
7 changed files with 35 additions and 60 deletions

View File

@@ -5,6 +5,8 @@ Inspirations:
- [nolan](https://github.com/Hrumble/sneaky-nvim-config)
- [mats](https://github.com/BeerB34r/dotfiles)
[Great guide on vim.pack](https://echasnovski.com/blog/2026-03-13-a-guide-to-vim-pack#delete)
# Neovim Notes
See custom keymaps with short descriptions with `<leader><leader>h`.
@@ -96,7 +98,6 @@ Useful LSP commands:
- `<leader>ca` show code actions
- `<leader>cf` apply quick fixes
- `<leader>cs` show source actions
- `<C-Space>` trigger completion
Diagnostics:

View File

@@ -30,6 +30,7 @@ o.expandtab = true -- Inserts spaces when indenting by default.
o.smartindent = true -- Adds indentation automatically on new lines.
o.swapfile = false -- Disables swapfile creation.
o.incsearch = true -- Updates search matches as you type.
o.completeopt = { "menuone", "noselect", "fuzzy", "nosort" } -- Enables fuzzy completion matching without preselecting or reordering candidates.
o.updatetime = 50 -- Reduces idle delay for swap and CursorHold events.
o.spelllang = { "en_us" } -- Uses US English for spell checking.
o.shell = "bash" -- Runs shell commands through bash.

View File

@@ -1,6 +1,5 @@
require("romanzy.plugins.rose-pine")
require("romanzy.plugins.mini")
require("romanzy.plugins.blink-cmp")
require("romanzy.plugins.lazygit")
require("romanzy.plugins.oil")
require("romanzy.plugins.telescope")

View File

@@ -1,39 +0,0 @@
vim.pack.add({ 'https://github.com/saghen/blink.lib', 'https://github.com/saghen/blink.cmp' })
local cmp = require('blink.cmp')
-- cmp.build():pwait()
cmp.setup({
-- 'default' (recommended) for mappings similar to built-in completions (C-y to accept)
-- 'super-tab' for mappings similar to vscode (tab to accept)
-- 'enter' for enter to accept
-- 'none' for no mappings
--
-- All presets have the following mappings:
-- 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 (if signature.enabled = true)
--
-- See :h blink-cmp-config-keymap for defining your own keymap
keymap = { preset = 'default' },
completion = {
documentation = { auto_show = false },
-- list = {
-- selection = {
-- preselect = false,
-- auto_insert = false,
-- },
-- },
},
-- (Default) list of enabled providers defined so that you can extend it
-- elsewhere in your config, without redefining it, due to `opts_extend`
sources = { default = { 'lsp', 'path', 'snippets', 'buffer' } },
-- (Default) Rust fuzzy matcher for typo resistance and significantly better performance
-- You may use a lua implementation instead by using `implementation = "lua"`
-- See the fuzzy documentation for more information
-- fuzzy = { implementation = "prefer_rust_with_warning" }
fuzzy = { implementation = "lua" }
})

View File

@@ -43,7 +43,7 @@ end
configure_diagnostics()
local capabilities = require("blink.cmp").get_lsp_capabilities()
local capabilities = require("mini.completion").get_lsp_capabilities()
local managed_servers = {
"bashls",
"clangd",

View File

@@ -7,6 +7,7 @@ vim.pack.add({
})
local clue = require("mini.clue")
local completion = require("mini.completion")
local icons = require("mini.icons")
local git = require("mini.git")
local diff = require("mini.diff")
@@ -17,15 +18,6 @@ local ai = require("mini.ai")
local notify = require("mini.notify")
local surround = require("mini.surround")
local function set_mini_diff_highlights()
vim.api.nvim_set_hl(0, "MiniDiffSignAdd", { fg = "#9ccf8d" })
vim.api.nvim_set_hl(0, "MiniDiffSignChange", { fg = "#f6c177" })
vim.api.nvim_set_hl(0, "MiniDiffSignDelete", { fg = "#eb6f92" })
vim.api.nvim_set_hl(0, "MiniDiffOverAdd", { fg = "#9ccf8d" })
vim.api.nvim_set_hl(0, "MiniDiffOverChange", { fg = "#f6c177" })
vim.api.nvim_set_hl(0, "MiniDiffOverDelete", { fg = "#eb6f92" })
end
clue.setup({
triggers = {
{ mode = "n", keys = "<leader>" },
@@ -47,14 +39,40 @@ clue.setup({
},
})
completion.setup({})
local function complete_accept_top()
if vim.fn.pumvisible() == 0 then
return "<C-y>"
end
if vim.fn.complete_info({ "selected" }).selected == -1 then
return "<C-n><C-y>"
end
return "<C-y>"
end
vim.keymap.set("i", "<C-y>", complete_accept_top, { expr = true })
icons.setup({})
git.setup({})
diff.setup({})
local function set_mini_diff_highlights()
vim.api.nvim_set_hl(0, "MiniDiffSignAdd", { fg = "#9ccf8d" })
vim.api.nvim_set_hl(0, "MiniDiffSignChange", { fg = "#f6c177" })
vim.api.nvim_set_hl(0, "MiniDiffSignDelete", { fg = "#eb6f92" })
vim.api.nvim_set_hl(0, "MiniDiffOverAdd", { fg = "#9ccf8d" })
vim.api.nvim_set_hl(0, "MiniDiffOverChange", { fg = "#f6c177" })
vim.api.nvim_set_hl(0, "MiniDiffOverDelete", { fg = "#eb6f92" })
end
set_mini_diff_highlights()
vim.api.nvim_create_autocmd("ColorScheme", {
callback = set_mini_diff_highlights,
})
statusline.setup({ use_icons = true })
hipatterns.setup({
highlighters = {
fixme = { pattern = "%f[%w]()FIXME()%f[%W]", group = "MiniHipatternsFixme" },
@@ -64,10 +82,13 @@ hipatterns.setup({
hex_color = hipatterns.gen_highlighter.hex_color(),
},
})
pairs.setup({
modes = { insert = true, command = true, terminal = false },
})
ai.setup({})
notify.setup({
lsp_progress = {
-- the message "lua_ls: processing completion..." and
@@ -75,6 +96,6 @@ notify.setup({
enable = true,
},
})
vim.notify = notify.make_notify()
surround.setup({})

View File

@@ -1,13 +1,5 @@
{
"plugins": {
"blink.cmp": {
"rev": "67c9c3f9e3121df32d0eee406a76087a9f0a62eb",
"src": "https://github.com/saghen/blink.cmp"
},
"blink.lib": {
"rev": "5876dd95deeb70aadbe9f1c0b7117a135061cdac",
"src": "https://github.com/saghen/blink.lib"
},
"codam-header.nvim": {
"rev": "a8fbd2a7003eecbf6e85693e85d7d4d464625193",
"src": "https://github.com/BeerB34r/codam-header.nvim"