Closed
Description
Contributing guidelines
- I have read CONTRIBUTING.md
- I have read CODE_OF_CONDUCT.md
Module(s)
mini.completion
Description
Hi! I really like this plugin.
It is simple and effective.
It's fast and has everything I need except for one thing:
- lsp snippets completion.
If cssls or cssmodules_ls is active, the server snippets it delivers expand but do
not stop at the placeholder.
RecApp-2023-01-11-10.20.54.mp4
This is my minimal config:
local install_path = vim.fn.stdpath('data') .. '/site/pack/paqs/start/paq-nvim'
if vim.fn.empty(vim.fn.glob(install_path)) > 0 then
vim.fn.system({'git', 'clone', '--depth=1', 'https://github.com/savq/paq-nvim.git', install_path})
end
require('paq')({
'savq/paq-nvim',
'echasnovski/mini.completion',
'neovim/nvim-lspconfig',
'williamboman/mason.nvim',
})
-- completion
require('mini.completion').setup({
lsp_completion = {
source_func = 'omnifunc',
auto_setup = false,
},
})
vim.keymap.set('i', '<Tab>', [[pumvisible() ? "\<C-n>" : "\<Tab>"]], { remap = true, expr = true })
vim.keymap.set('i', '<S-Tab>', [[pumvisible() ? "\<C-p>" : "\<S-Tab>"]], { remap = true, expr = true })
-- lsp
local lspconfig = require('lspconfig')
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true
local on_attach = function(_, bufnr)
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.MiniCompletion.completefunc_lsp')
end
require('mason').setup()
local servers = { 'tsserver', 'cssls', 'cssmodules_ls', 'html' }
for _, lsp in ipairs(servers) do
lspconfig[lsp].setup({
on_attach = on_attach,
capabilities = capabilities,
init_options = { usePlaceholders = true },
})
end
Without mini.completion using omnifunc <C-x><C-o>
and this setting: vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc")
it works.
My request is if you can help me achieve this result with mini completion plugin.
Thank you very much for your beautiful work.