moved to nvim-cmp, replaced coq
This commit is contained in:
parent
9b4772487b
commit
1491a28c3f
|
|
@ -36,21 +36,151 @@ return {
|
|||
--
|
||||
-- Autocompletion
|
||||
--
|
||||
{
|
||||
--[[ {
|
||||
'ms-jpq/coq.artifacts',
|
||||
branch = 'artifacts'
|
||||
}, ]]--
|
||||
-- {
|
||||
-- 'ms-jpq/coq_nvim',
|
||||
-- dependencies = { 'ms-jpq/coq.artifacts' },
|
||||
-- branch = 'coq',
|
||||
-- build = ':COQdeps',
|
||||
-- event = { "BufEnter" },
|
||||
-- config = function()
|
||||
-- vim.cmd([[autocmd VimEnter * COQnow -s]])
|
||||
-- end
|
||||
-- },
|
||||
{
|
||||
"garymjr/nvim-snippets",
|
||||
dependencies = { "rafamadriz/friendly-snippets" },
|
||||
opts = {
|
||||
friendly_snippets = true,
|
||||
},
|
||||
keys = {
|
||||
{
|
||||
"<Tab>",
|
||||
function()
|
||||
if vim.snippet.active({ direction = 1 }) then
|
||||
vim.schedule(function() vim.snippet.jump(1) end)
|
||||
return
|
||||
end
|
||||
return "<Tab>"
|
||||
end,
|
||||
expr = true,
|
||||
silent = true,
|
||||
mode = "i",
|
||||
},
|
||||
{
|
||||
'ms-jpq/coq_nvim',
|
||||
dependencies = { 'ms-jpq/coq.artifacts' },
|
||||
branch = 'coq',
|
||||
build = ':COQdeps',
|
||||
event = { "BufEnter" },
|
||||
config = function()
|
||||
vim.cmd([[autocmd VimEnter * COQnow -s]])
|
||||
"<Tab>",
|
||||
function()
|
||||
if vim.snippet.active({ direction = 1 }) then
|
||||
vim.schedule(function() vim.snippet.jump(1) end)
|
||||
return
|
||||
end
|
||||
end,
|
||||
expr = true,
|
||||
silent = true,
|
||||
mode = "s",
|
||||
},
|
||||
{
|
||||
"<S-Tab>",
|
||||
function()
|
||||
if vim.snippet.active({ direction = -1 }) then
|
||||
vim.schedule(function() vim.snippet.jump(-1) end)
|
||||
return
|
||||
end
|
||||
return "<S-Tab>"
|
||||
end,
|
||||
expr = true,
|
||||
silent = true,
|
||||
mode = { "i", "s" },
|
||||
},
|
||||
},
|
||||
},
|
||||
-- {
|
||||
-- "tzachar/cmp-ai",
|
||||
-- dependencies = "nvim-lua/plenary.nvim",
|
||||
-- config = function()
|
||||
-- local cmp_ai = require("cmp_ai.config")
|
||||
--
|
||||
-- cmp_ai:setup({
|
||||
-- max_lines = 1000,
|
||||
-- provider = "Ollama", -- Change to 'Ollama', 'HF', etc. as needed
|
||||
-- provider_options = {
|
||||
-- model = "qwen2.5-coder:latest",
|
||||
-- },
|
||||
-- notify = true,
|
||||
-- run_on_every_keystroke = true,
|
||||
-- })
|
||||
-- end,
|
||||
-- },
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
event = { "InsertEnter", "CmdlineEnter" },
|
||||
dependencies = {
|
||||
"hrsh7th/cmp-buffer",
|
||||
"hrsh7th/cmp-path",
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"hrsh7th/cmp-nvim-lsp-signature-help",
|
||||
"hrsh7th/cmp-nvim-lsp-document-symbol",
|
||||
"hrsh7th/cmp-cmdline",
|
||||
"amarz45/nvim-cmp-fonts",
|
||||
-- "tzachar/cmp-ai",
|
||||
"garymjr/nvim-snippets", -- Ensure the snippet source is loaded
|
||||
},
|
||||
config = function()
|
||||
local cmp = require("cmp")
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
-- Use native neovim snippets
|
||||
vim.snippet.expand(args.body)
|
||||
end,
|
||||
},
|
||||
window = {
|
||||
completion = cmp.config.window.bordered(),
|
||||
documentation = cmp.config.window.bordered(),
|
||||
},
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
["<C-b>"] = cmp.mapping.scroll_docs(-4),
|
||||
["<C-f>"] = cmp.mapping.scroll_docs(4),
|
||||
["<C-Space>"] = cmp.mapping.complete(),
|
||||
["<C-e>"] = cmp.mapping.abort(),
|
||||
["<CR>"] = cmp.mapping.confirm({ select = true }),
|
||||
}),
|
||||
sources = cmp.config.sources({
|
||||
{ name = "nvim_lsp" },
|
||||
{ name = "snippets" }, -- This comes from nvim-snippets
|
||||
{ name = "nvim_lsp_signature_help" },
|
||||
{ name = "cmp_ai" },
|
||||
}, {
|
||||
{ name = "buffer" },
|
||||
{ name = "path" },
|
||||
{ name = "fonts", option = { space_filter = "-" } },
|
||||
}),
|
||||
})
|
||||
|
||||
-- ... (Keep cmdline setup as before) ...
|
||||
cmp.setup.cmdline({ "/", "?" }, {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = {
|
||||
{ name = "nvim_lsp_document_symbol" },
|
||||
{ name = "buffer" },
|
||||
},
|
||||
})
|
||||
|
||||
cmp.setup.cmdline(":", {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = cmp.config.sources({
|
||||
{ name = "path" },
|
||||
}, {
|
||||
{ name = "cmdline" },
|
||||
}),
|
||||
matching = { disallow_symbol_nonprefix_matching = false },
|
||||
})
|
||||
end,
|
||||
},
|
||||
--
|
||||
-- Language Configurations
|
||||
--
|
||||
|
|
@ -99,6 +229,80 @@ return {
|
|||
-- Language Server
|
||||
--
|
||||
|
||||
-- Language Server Installer
|
||||
{
|
||||
'mason-org/mason.nvim',
|
||||
lazy = false,
|
||||
cmd = {
|
||||
"Mason",
|
||||
"MasonInstall",
|
||||
"MasonUpdate",
|
||||
|
||||
},
|
||||
opts = {
|
||||
ui = {
|
||||
icons = {
|
||||
package_installed = "i",
|
||||
package_pending = "p",
|
||||
package_uninstalled = "u"
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
--[[{
|
||||
'huggingface/llm.nvim',
|
||||
opts = {
|
||||
model = 'deepseek-coder-v2',
|
||||
backend = 'ollama',
|
||||
url = 'http://localhost:11434',
|
||||
tokens_to_clear = {"<|endoftext|>", "```", "python", "lua"},
|
||||
lsp = {
|
||||
bin_path = vim.api.nvim_call_function("stdpath", { "data" }) .. "/mason/bin/llm-ls",
|
||||
},
|
||||
context_window = 10240,
|
||||
enable_suggestions_on_startup = true,
|
||||
},
|
||||
},
|
||||
{
|
||||
'jacob411/Ollama-Copilot',
|
||||
ft = {'python', 'lua', 'go', "markdown"},
|
||||
opts = {
|
||||
model_name = "qwen2.5-coder:latest",
|
||||
filetypes = {'python', 'lua','vim', "markdown"},
|
||||
ollama_model_opts = {
|
||||
num_predict = 40,
|
||||
temperature = 0.1,
|
||||
},
|
||||
}
|
||||
},]]--
|
||||
{
|
||||
'mason-org/mason-lspconfig.nvim',
|
||||
dependencies = {
|
||||
'mason-org/mason.nvim',
|
||||
-- 'ms-jpq/coq_nvim',
|
||||
-- 'nanotee/nvim-lsp-basics',
|
||||
-- 'neovim/nvim-lspconfig',
|
||||
-- 'huggingface/llm.nvim',
|
||||
-- 'stevearc/aerial.nvim',
|
||||
},
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"bashls",
|
||||
"clangd",
|
||||
"gopls",
|
||||
"html",
|
||||
"jsonls",
|
||||
"lua_ls",
|
||||
"omnisharp",
|
||||
"phpactor",
|
||||
"pyright",
|
||||
"sqls",
|
||||
"texlab",
|
||||
"ts_ls"
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
-- Show Code Outline/Symbols tree window
|
||||
{
|
||||
'stevearc/aerial.nvim',
|
||||
|
|
@ -126,73 +330,31 @@ return {
|
|||
}
|
||||
},
|
||||
|
||||
-- Language Server Installer
|
||||
{
|
||||
'williamboman/mason.nvim',
|
||||
lazy = false,
|
||||
cmd = {
|
||||
"Mason",
|
||||
"MasonInstall",
|
||||
"MasonUpdate",
|
||||
|
||||
-- Show code diagnostics in a separate buffer window
|
||||
{
|
||||
'folke/trouble.nvim',
|
||||
opts = {},
|
||||
|
||||
cmd = {
|
||||
"Trouble",
|
||||
},
|
||||
opts = {
|
||||
ui = {
|
||||
icons = {
|
||||
package_installed = "i",
|
||||
package_pending = "p",
|
||||
package_uninstalled = "u"
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
keys = {
|
||||
{'<Leader>t', ':Trouble diagnostics toggle<CR>'},
|
||||
}
|
||||
},
|
||||
{
|
||||
'neovim/nvim-lspconfig',
|
||||
config = function()
|
||||
-- disable inline error messages
|
||||
vim.diagnostic.config({ virtual_text = false })
|
||||
end
|
||||
},
|
||||
--[[{
|
||||
'huggingface/llm.nvim',
|
||||
opts = {
|
||||
model = 'deepseek-coder-v2',
|
||||
backend = 'ollama',
|
||||
url = 'http://localhost:11434',
|
||||
tokens_to_clear = {"<|endoftext|>", "```", "python", "lua"},
|
||||
lsp = {
|
||||
bin_path = vim.api.nvim_call_function("stdpath", { "data" }) .. "/mason/bin/llm-ls",
|
||||
},
|
||||
context_window = 10240,
|
||||
enable_suggestions_on_startup = true,
|
||||
},
|
||||
},]]--
|
||||
{
|
||||
'mason-org/mason-lspconfig.nvim',
|
||||
dependencies = {
|
||||
'williamboman/mason.nvim',
|
||||
'ms-jpq/coq_nvim',
|
||||
'nanotee/nvim-lsp-basics',
|
||||
'neovim/nvim-lspconfig',
|
||||
-- 'huggingface/llm.nvim',
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"hrsh7th/cmp-nvim-lsp-document-symbol",
|
||||
"hrsh7th/cmp-nvim-lsp-signature-help",
|
||||
'folke/trouble.nvim',
|
||||
'mason-org/mason-lspconfig.nvim',
|
||||
'mason-org/mason.nvim',
|
||||
'stevearc/aerial.nvim',
|
||||
},
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"bashls",
|
||||
"clangd",
|
||||
"gopls",
|
||||
"html",
|
||||
"jsonls",
|
||||
"lua_ls",
|
||||
"omnisharp",
|
||||
"phpactor",
|
||||
"pyright",
|
||||
"sqls",
|
||||
"texlab",
|
||||
"ts_ls"
|
||||
},
|
||||
},
|
||||
ft = {
|
||||
"bash",
|
||||
"c",
|
||||
|
|
@ -212,47 +374,16 @@ return {
|
|||
"typescript",
|
||||
"typescriptreact",
|
||||
},
|
||||
--[[ config = function()
|
||||
vim.lsp.config('*', require('coq').lsp_ensure_capabilities {
|
||||
on_attach = function(client, bufnr)
|
||||
local basics = require('lsp_basics')
|
||||
basics.make_lsp_commands(client, bufnr)
|
||||
basics.make_lsp_mappings(client, bufnr)
|
||||
end
|
||||
config = function()
|
||||
-- disable inline error messages
|
||||
vim.diagnostic.config({ virtual_text = false })
|
||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
|
||||
vim.lsp.config('*', {
|
||||
capabilities = capabilities,
|
||||
})
|
||||
end, ]]--
|
||||
|
||||
-- config = function()
|
||||
-- local masonlsp = require 'mason-lspconfig'
|
||||
-- --[[
|
||||
-- masonlsp.setup
|
||||
-- --]]
|
||||
-- masonlsp.setup_handlers {
|
||||
-- function(server_name)
|
||||
-- require('lspconfig')[server_name].setup(require('coq').lsp_ensure_capabilities {
|
||||
-- on_attach = function(client, bufnr)
|
||||
-- local basics = require('lsp_basics')
|
||||
-- basics.make_lsp_commands(client, bufnr)
|
||||
-- basics.make_lsp_mappings(client, bufnr)
|
||||
-- end
|
||||
-- })
|
||||
-- end
|
||||
-- }
|
||||
-- end,
|
||||
},
|
||||
|
||||
-- Show code diagnostics in a separate buffer window
|
||||
{
|
||||
'folke/trouble.nvim',
|
||||
opts = {},
|
||||
|
||||
cmd = {
|
||||
"Trouble",
|
||||
},
|
||||
|
||||
keys = {
|
||||
{'<Leader>t', ':Trouble diagnostics toggle<CR>'},
|
||||
}
|
||||
end
|
||||
},
|
||||
--
|
||||
-- Markdown Live Preview
|
||||
|
|
|
|||
Loading…
Reference in New Issue