diff --git a/.config/nvim/ftplugin/java.lua b/.config/nvim/ftplugin/java.lua new file mode 100644 index 00000000..4d6f305c --- /dev/null +++ b/.config/nvim/ftplugin/java.lua @@ -0,0 +1,18 @@ +local mylsp = require("lsp") +local capabilities = mylsp.capabilities +local on_attach = mylsp.on_attach + +-- Java +local config = { + on_attach = on_attach, + capabilities = capabilities, + cmd = { + -- https://github.com/NixOS/nixpkgs/issues/232822#issuecomment-1564243667 + -- `-data` argument is necessary + "jdtls", + "-data", + vim.fn.expand("~/.cache/jdtls") .. vim.fn.expand("%:p:h"), + }, + root_dir = vim.fs.dirname(vim.fs.find({ "gradlew", ".git", "mvnw" }, { upward = true })[1]), +} +require("jdtls").start_or_attach(config) diff --git a/.config/nvim/plugin/lsp.lua b/.config/nvim/plugin/lsp.lua index 44fbe8ef..7f68d3df 100644 --- a/.config/nvim/plugin/lsp.lua +++ b/.config/nvim/plugin/lsp.lua @@ -120,26 +120,3 @@ for name, config in pairs(servers) do end, } end - ------------------------- --- Standalone plugins -- ------------------------- --- Java -local config = { - on_attach = mylsp.on_attach, - capabilities = mylsp.capabilities, - cmd = { - -- https://github.com/NixOS/nixpkgs/issues/232822#issuecomment-1564243667 - -- `-data` argument is necessary - "jdtls", - "-data", - vim.fn.expand("~/.cache/jdtls") .. vim.fn.expand("%:p:h"), - }, - root_dir = vim.fs.dirname(vim.fs.find({ "gradlew", ".git", "mvnw" }, { upward = true })[1]), -} -local jdtls_group = vim.api.nvim_create_augroup("jdtls", { clear = true }) -vim.api.nvim_create_autocmd("FileType", { - pattern = { "java" }, - callback = function() require("jdtls").start_or_attach(config) end, - group = jdtls_group, -})