vim.g.man_hardwrap = 1
vim.env.MANWIDTH = 80
+-- TODO: also try noinsert
+opt.completeopt = "menu,menuone,noselect"
+
-- Some settings taken from LazyVim's default options
opt.pumblend = 10 -- Popup blend
opt.pumheight = 10 -- Maximum number of entries in a popup
keys = function()
return {}
end,
+ opts = {
+ store_selection_keys = "<Tab>",
+ },
},
-- auto completion
local cmp = require("cmp")
local luasnip = require("luasnip")
+ local upstream_format = opts.formatting.format
+ opts.formatting.format = function(entry, vim_item)
+ vim_item = upstream_format(entry, vim_item)
+ local menu = {
+ nvim_lsp = "[lsp]",
+ luasnip = "[snip]",
+ buffer = "[buf]",
+ path = "[path]",
+ }
+ vim_item.menu = menu[entry.source.name]
+ return vim_item
+ end
+
opts.completion = vim.tbl_extend("force", opts.completion, {
completeopt = "menu,menuone,noselect",
})
- --TODO: review if I want to keep any of LazyVim's mappings
- opts.mapping = vim.tbl_extend("force", opts.mapping, {
+ -- TODO: review if I want to keep any of LazyVim's mappings
+ opts.mapping = cmp.mapping.preset.insert({
+ -- lazyvims
+ ["<C-n>"] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }),
+ ["<C-p>"] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }),
+ ["<C-b>"] = cmp.mapping.scroll_docs(-4),
+ ["<C-f>"] = cmp.mapping.scroll_docs(4),
+ ["<C-e>"] = cmp.mapping.abort(),
+ ["<C-Space>"] = cmp.mapping.complete(),
+ -- mine
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()