udpates
This commit is contained in:
parent
9ca3c33cd2
commit
f703852dd5
13 changed files with 166 additions and 437 deletions
11
lua/plugins_disabled/README.md
Normal file
11
lua/plugins_disabled/README.md
Normal file
|
@ -0,0 +1,11 @@
|
|||
# Plugins to look into
|
||||
- https://github.com/lvimuser/lsp-inlayhints.nvim/tree/anticonceal
|
||||
- https://github.com/theHamsta/nvim-dap-virtual-text/tree/inline-text
|
||||
- https://github.com/andythigpen/nvim-coverage
|
||||
- https://github.com/lukas-reineke/indent-blankline.nvim
|
||||
- gitsigns?
|
||||
- https://github.com/folke/noice.nvim
|
||||
- others: https://nvimluau.dev/
|
||||
- https://github.com/numToStr/Comment.nvim
|
||||
- https://github.com/windwp/nvim-autopairs
|
||||
- https://github.com/lukas-reineke/indent-blankline.nvim
|
|
@ -1,136 +0,0 @@
|
|||
return {
|
||||
{
|
||||
"L3MON4D3/LuaSnip",
|
||||
dependencies = { "rafamadriz/friendly-snippets" },
|
||||
opts = {
|
||||
history = true,
|
||||
updateevents = "TextChanged,TextChangedI",
|
||||
opts = { store_selection_keys = "<C-x>" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
event = "InsertEnter",
|
||||
dependencies = {
|
||||
-- Snips
|
||||
{
|
||||
"windwp/nvim-autopairs",
|
||||
opts = {
|
||||
fast_wrap = {},
|
||||
disable_filetype = { "TelescopePrompt", "vim" },
|
||||
},
|
||||
config = function(_, opts)
|
||||
require("nvim-autopairs").setup(opts)
|
||||
local cmp_autopairs = require("nvim-autopairs.completion.cmp")
|
||||
require("cmp").event:on("confirm_done", cmp_autopairs.on_confirm_done())
|
||||
end,
|
||||
},
|
||||
{ "saadparwaiz1/cmp_luasnip" },
|
||||
-- { "hrsh7th/cmp-nvim-lua" },
|
||||
-- { "hrsh7th/cmp-nvim-lsp" },
|
||||
-- { "hrsh7th/cmp-vsnip" },
|
||||
{ "hrsh7th/cmp-buffer" },
|
||||
{ "hrsh7th/cmp-path" },
|
||||
-- { "hrsh7th/cmp-cmdline" },
|
||||
{ "hrsh7th/cmp-nvim-lsp" },
|
||||
},
|
||||
config = function()
|
||||
vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, { desc = "Go to previous diagnostic message" })
|
||||
vim.keymap.set("n", "]d", vim.diagnostic.goto_next, { desc = "Go to next diagnostic message" })
|
||||
|
||||
local cmp = require("cmp")
|
||||
local snip_status_ok, luasnip = pcall(require, "luasnip")
|
||||
local lspkind_status_ok, lspkind = pcall(require, "lspkind")
|
||||
if not snip_status_ok then
|
||||
return
|
||||
end
|
||||
|
||||
local border_opts = {
|
||||
border = "single",
|
||||
winhighlight = "Normal:Normal,FloatBorder:FloatBorder,CursorLine:Visual,Search:None",
|
||||
}
|
||||
|
||||
cmp.setup({
|
||||
enabled = function()
|
||||
local dap_prompt = vim.tbl_contains(
|
||||
{ "dap-repl", "dapui_watches", "dapui_hover" },
|
||||
vim.api.nvim_get_option_value("filetype", { buf = 0 })
|
||||
)
|
||||
if vim.api.nvim_get_option_value("buftype", { buf = 0 }) == "prompt" and not dap_prompt then
|
||||
return false
|
||||
end
|
||||
return vim.g.cmp_enabled
|
||||
end,
|
||||
window = {
|
||||
completion = cmp.config.window.bordered(border_opts),
|
||||
documentation = cmp.config.window.bordered(border_opts),
|
||||
},
|
||||
preselect = cmp.PreselectMode.None,
|
||||
formatting = {
|
||||
fields = { "kind", "abbr", "menu" },
|
||||
format = lspkind_status_ok and lspkind.cmp_format(utils.plugin_opts("lspkind.nvim")) or nil,
|
||||
},
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
luasnip.lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
duplicates = {
|
||||
nvim_lsp = 1,
|
||||
luasnip = 1,
|
||||
cmp_tabnine = 1,
|
||||
buffer = 1,
|
||||
path = 1,
|
||||
},
|
||||
confirm_opts = {
|
||||
behavior = cmp.ConfirmBehavior.Replace,
|
||||
select = false,
|
||||
},
|
||||
mapping = {
|
||||
["<Up>"] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Select }),
|
||||
["<Down>"] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Select }),
|
||||
["<C-p>"] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }),
|
||||
["<C-n>"] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }),
|
||||
["<C-k>"] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }),
|
||||
["<C-j>"] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }),
|
||||
["<C-u>"] = cmp.mapping(cmp.mapping.scroll_docs(-4), { "i", "c" }),
|
||||
["<C-d>"] = cmp.mapping(cmp.mapping.scroll_docs(4), { "i", "c" }),
|
||||
["<C-Space>"] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }),
|
||||
["<C-y>"] = cmp.config.disable,
|
||||
["<C-e>"] = cmp.mapping({ i = cmp.mapping.abort(), c = cmp.mapping.close() }),
|
||||
["<CR>"] = cmp.mapping.confirm({ select = false }),
|
||||
["<Tab>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
elseif luasnip.expand_or_jumpable() then
|
||||
luasnip.expand_or_jump()
|
||||
elseif has_words_before() then
|
||||
cmp.complete()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
["<S-Tab>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item()
|
||||
elseif luasnip.jumpable(-1) then
|
||||
luasnip.jump(-1)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
},
|
||||
sources = cmp.config.sources({
|
||||
{ name = "nvim_lsp", priority = 1000 },
|
||||
{ name = "luasnip", priority = 750 },
|
||||
{ name = "buffer", priority = 500 },
|
||||
{ name = "path", priority = 250 },
|
||||
}),
|
||||
})
|
||||
end,
|
||||
},
|
||||
{
|
||||
"folke/neodev.nvim",
|
||||
opts = {},
|
||||
},
|
||||
}
|
|
@ -1,180 +0,0 @@
|
|||
return {
|
||||
"VonHeikemen/lsp-zero.nvim",
|
||||
branch = "v2.x",
|
||||
dependencies = {
|
||||
-- LSP Support
|
||||
{ "neovim/nvim-lspconfig" },
|
||||
{
|
||||
"williamboman/mason.nvim",
|
||||
cmd = {
|
||||
"Mason",
|
||||
"MasonUpdate",
|
||||
"MasonInstall",
|
||||
"MasonInstallAll",
|
||||
"MasonUninstall",
|
||||
"MasonUninstallAll",
|
||||
"MasonLog",
|
||||
},
|
||||
build = ":MasonUpdate",
|
||||
event = "BufRead",
|
||||
},
|
||||
{ "williamboman/mason-lspconfig.nvim" },
|
||||
-- Autocompletion
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
event = "InsertEnter",
|
||||
dependencies = {
|
||||
-- Snips
|
||||
{
|
||||
"L3MON4D3/LuaSnip",
|
||||
dependencies = "rafamadriz/friendly-snippets",
|
||||
opts = {
|
||||
history = true,
|
||||
updateevents = "TextChanged,TextChangedI",
|
||||
-- config? -- https://github.com/NvChad/NvChad/blob/v2.0/lua/plugins/configs/others.lua#L25-L50
|
||||
},
|
||||
},
|
||||
{
|
||||
"windwp/nvim-autopairs",
|
||||
opts = {
|
||||
fast_wrap = {},
|
||||
disable_filetype = { "TelescopePrompt", "vim" },
|
||||
},
|
||||
config = function(_, opts)
|
||||
require("nvim-autopairs").setup(opts)
|
||||
-- setup cmp for autopairs
|
||||
local cmp_autopairs = require("nvim-autopairs.completion.cmp")
|
||||
require("cmp").event:on("confirm_done", cmp_autopairs.on_confirm_done())
|
||||
end,
|
||||
},
|
||||
{ "saadparwaiz1/cmp_luasnip" },
|
||||
{ "hrsh7th/cmp-nvim-lua" },
|
||||
{ "hrsh7th/cmp-nvim-lsp" },
|
||||
{ "hrsh7th/cmp-buffer" },
|
||||
{ "hrsh7th/cmp-path" },
|
||||
{ "hrsh7th/cmp-cmdline" },
|
||||
},
|
||||
},
|
||||
},
|
||||
config = function()
|
||||
local lsp = require("lsp-zero").preset({})
|
||||
local config = require("lspconfig")
|
||||
local util = require("lspconfig/util")
|
||||
|
||||
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||
capabilities = vim.tbl_deep_extend("keep", capabilities, vim.lsp.protocol.make_client_capabilities())
|
||||
capabilities.textDocument.completion.completionItem = {
|
||||
documentationFormat = { "markdown", "plaintext" },
|
||||
snippetSupport = true,
|
||||
preselectSupport = true,
|
||||
insertReplaceSupport = true,
|
||||
labelDetailsSupport = true,
|
||||
deprecatedSupport = true,
|
||||
commitCharactersSupport = true,
|
||||
tagSupport = { valueSet = { 1 } },
|
||||
resolveSupport = {
|
||||
properties = {
|
||||
"documentation",
|
||||
"detail",
|
||||
"additionalTextEdits",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
local on_attach = function(client, bufnr)
|
||||
client.server_capabilities.documentFormattingProvider = false
|
||||
client.server_capabilities.documentRangeFormattingProvider = false
|
||||
|
||||
lsp.default_keymaps({ buffer = bufnr })
|
||||
|
||||
local opts = { buffer = bufnr }
|
||||
local bind = function(map, cmd, mode)
|
||||
vim.keymap.set("n", map, cmd, opts)
|
||||
end
|
||||
|
||||
-- diagnostics
|
||||
bind("<leader>ld", "<cmd>lua vim.diagnostic.open_float()<CR>")
|
||||
bind("<leader>[d", "<cmd>lua vim.diagnostic.goto_prev()<CR>")
|
||||
bind("<leader>]d", "<cmd>lua vim.diagnostic.goto_next()<CR>")
|
||||
|
||||
bind("<leader>la", "<cmd>lua vim.lsp.buf.code_action()<CR>")
|
||||
end
|
||||
|
||||
lsp.on_attach(on_attach)
|
||||
local servers = {
|
||||
-- -- https://github.com/williamboman/mason-lspconfig.nvim#available-lsp-servers
|
||||
-- lua
|
||||
"lua_ls",
|
||||
-- rust
|
||||
"rust_analyzer",
|
||||
-- ts/js | web
|
||||
"tsserver",
|
||||
"html",
|
||||
"eslint",
|
||||
"cssls",
|
||||
"cssmodules_ls",
|
||||
|
||||
-- python
|
||||
"pyright",
|
||||
|
||||
-- docker
|
||||
"dockerls",
|
||||
"docker_compose_language_service",
|
||||
}
|
||||
lsp.ensure_installed(servers)
|
||||
|
||||
local default = require("util").spread({
|
||||
on_attach = on_attach,
|
||||
capabilities = capabilities,
|
||||
})
|
||||
|
||||
config.lua_ls.setup(lsp.nvim_lua_ls())
|
||||
|
||||
config.rust_analyzer.setup(default({}))
|
||||
|
||||
config.tsserver.setup(default({
|
||||
root_dir = util.root_pattern("tsconfig.json", ".git"),
|
||||
}))
|
||||
config.html.setup(default({}))
|
||||
config.eslint.setup(default({}))
|
||||
config.cssls.setup(default({}))
|
||||
config.cssmodules_ls.setup(default({}))
|
||||
|
||||
config.pyright.setup(default({}))
|
||||
|
||||
config.dockerls.setup(default({}))
|
||||
config.docker_compose_language_service.setup(default({}))
|
||||
|
||||
lsp.setup()
|
||||
|
||||
local cmp = require("cmp")
|
||||
local cmp_action = require("lsp-zero").cmp_action()
|
||||
|
||||
cmp.setup({
|
||||
window = {
|
||||
documentation = cmp.config.window.bordered(),
|
||||
},
|
||||
sources = {
|
||||
{ name = "nvim_lsp", priority = 1000 },
|
||||
{ name = "luasnip", priority = 750, keyword_length = 2 },
|
||||
{ name = "buffer", priority = 500, keyword_length = 3 },
|
||||
{ nane = "nvim_lua", print = 250, keyword_length = 3 },
|
||||
{ name = "path", priority = 150, keyword_length = 3 },
|
||||
-- { name = "cmdline", priority = 50, keyword_length = 5 },
|
||||
},
|
||||
mapping = {
|
||||
["<CR>"] = cmp.mapping.confirm({ select = false }),
|
||||
["<Tab>"] = cmp_action.tab_complete(),
|
||||
["<S-Tab>"] = cmp_action.select_prev_or_fallback(),
|
||||
-- Ctrl+Space to trigger completion menu
|
||||
["<C-Space>"] = cmp.mapping.complete(),
|
||||
|
||||
["<C-f>"] = cmp_action.luasnip_jump_forward(),
|
||||
["<C-b>"] = cmp_action.luasnip_jump_backward(),
|
||||
},
|
||||
})
|
||||
end,
|
||||
-- keys = {
|
||||
-- { "<leader>l", "<Nop>", desc = "LSP" },
|
||||
-- },
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue