Closed zhangzhen closed 4 months ago
Can you share your config?
Can you share your config?
Yes. I'm using LazyVim.
Here is the content of my elixir.lua plug:
return {
{
"elixir-tools/elixir-tools.nvim",
version = "*",
event = { "BufReadPre", "BufNewFile" },
config = function()
local elixir = require("elixir")
local elixirls = require("elixir.elixirls")
elixir.setup({
nextls = { enable = true },
credo = {},
elixirls = {
enable = true,
settings = elixirls.settings({
dialyzerEnabled = false,
enableTestLenses = false,
}),
on_attach = function(client, bufnr)
vim.keymap.set("n", "<space>fp", ":ElixirFromPipe<cr>", { buffer = true, noremap = true })
vim.keymap.set("n", "<space>tp", ":ElixirToPipe<cr>", { buffer = true, noremap = true })
vim.keymap.set("v", "<space>em", ":ElixirExpandMacro<cr>", { buffer = true, noremap = true })
end,
},
})
end,
dependencies = {
"nvim-lua/plenary.nvim",
},
},
}
Below is the content of my lazy.lua file:
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
-- bootstrap lazy.nvim
-- stylua: ignore
vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath })
end
vim.opt.rtp:prepend(vim.env.LAZY or lazypath)
require("lazy").setup({
spec = {
-- add LazyVim and import its plugins
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- import any extras modules here
-- { import = "lazyvim.plugins.extras.lang.typescript" },
-- { import = "lazyvim.plugins.extras.lang.json" },
-- { import = "lazyvim.plugins.extras.ui.mini-animate" },
{ import = "lazyvim.plugins.extras.lang.python" },
{ import = "lazyvim.plugins.extras.lang.tailwind" },
-- import copilot
{ import = "lazyvim.plugins.extras.coding.copilot" },
-- import/override with your plugins
{ import = "plugins" },
},
defaults = {
-- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
-- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
lazy = false,
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
-- have outdated releases, which may break your Neovim install.
version = false, -- always use the latest git commit
-- version = "*", -- try installing the latest stable version for plugins that support semver
},
install = { colorscheme = { "tokyonight", "habamax" } },
checker = { enabled = true }, -- automatically check for plugin updates
performance = {
rtp = {
-- disable some rtp plugins
disabled_plugins = {
"gzip",
-- "matchit",
-- "matchparen",
-- "netrwPlugin",
"tarPlugin",
"tohtml",
"tutor",
"zipPlugin",
},
},
},
})
Hmm, this is weird, i'm not sure exactly what is going on.
I see the same thing. For me this may happen due to my use of vim-obsession. When I start nvim, a number of buffers are opened in windows automatically, corresponding with my stored session. Maybe some race condition means that this triggers lots of NextLS processes to be launched? It doesn't happen when I start with a single file, then open more afterwards.
For now my ugly workaround is to run this to kill all the NextLS processes after launching nvim:
$ ps -fA | grep next_ls | grep stdio | awk -F' ' '{ print $2 }' | xargs kill
And then I :e
in one of the buffers to restart a single process.
This seems to be fixed for me in the latest version...
I'm using elixir-tools.nvim in neovim 0.9.1 on my macbook pro 13. The results of running LspInfo in a .ex buffer are shown in the following screenshot:
There are two active nextls clients. How can i remove one of them?
Regards, Zhen