enc: migrate java from nvim-jdtls to lsp jdtls

This commit is contained in:
asep.komarudin 2024-06-25 16:58:01 +07:00
parent 4bd718cab7
commit 2d1579c969
6 changed files with 200 additions and 191 deletions

View file

@ -65,7 +65,7 @@ pcode.mason_ensure_installed = { -- sebelumnya register_lsp
-- tambahkan di bawah sini setelah melakukan :masoninstall
}
pcode.unregister_lsp = {
"jdtls", -- tambahkan di bawah ini
-- "jdtls", -- tambahkan di bawah ini
}
-- https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md
@ -129,7 +129,7 @@ pcode.adaptive_color_icon = true
pcode.columnline = true
-- https://github.com/okuuva/auto-save.nvim
pcode.auto_save = true
pcode.auto_save = false
-- https://github.com/folke/todo-comments.nvim
pcode.todo_comment = false
@ -162,11 +162,11 @@ pcode.active_javascript_config = {
jest_command = "npm test -- ",
jest_config = "jest.config.mjs",
}
pcode.active_php_config = true
pcode.active_php_config = false
pcode.active_golang_config = false
pcode.active_python_config = false
pcode.active_cpp_config = false
pcode.active_java_config = {
active = false,
active = true,
project = "gradle", -- gradle or maven
}

View file

@ -1,9 +1,9 @@
local M = {}
if pcode.active_java_config.active then
M = {
{
"mfussenegger/nvim-jdtls",
},
-- {
-- "mfussenegger/nvim-jdtls",
-- },
{
"nvim-neotest/neotest",
dependencies = {
@ -46,33 +46,33 @@ if pcode.active_java_config.active then
{ "<Leader>TS", function() require("neotest").run.stop() end, desc = "Stop" },
},
},
{
"stevearc/conform.nvim",
event = { "BufReadPre", "BufNewFile" },
opts = function(_, opts)
local psave = pcode.format_on_save or 0
opts.formatters_by_ft = opts.formatters_by_ft or {}
opts.formatters_by_ft.java = { "lsp_fmt" }
if psave == 1 then
opts.format_on_save = {
timeout_ms = pcode.format_timeout_ms or 500,
lsp_fallback = true,
}
end
return opts
end,
config = function(_, opts)
local conform = require("conform")
conform.setup(opts)
vim.keymap.set({ "n", "v" }, "<leader>lF", function()
conform.format({
lsp_fallback = true,
async = false,
timeout_ms = pcode.format_timeout_ms or 500,
})
end, { desc = "Format file or range (in visual mode)" })
end,
},
-- {
-- "stevearc/conform.nvim",
-- event = { "BufReadPre", "BufNewFile" },
-- opts = function(_, opts)
-- local psave = pcode.format_on_save or 0
-- opts.formatters_by_ft = opts.formatters_by_ft or {}
-- opts.formatters_by_ft.java = { "lsp_fmt" }
-- if psave == 1 then
-- opts.format_on_save = {
-- timeout_ms = pcode.format_timeout_ms or 500,
-- lsp_fallback = true,
-- }
-- end
-- return opts
-- end,
-- config = function(_, opts)
-- local conform = require("conform")
-- conform.setup(opts)
-- vim.keymap.set({ "n", "v" }, "<leader>lF", function()
-- conform.format({
-- lsp_fallback = true,
-- async = false,
-- timeout_ms = pcode.format_timeout_ms or 500,
-- })
-- end, { desc = "Format file or range (in visual mode)" })
-- end,
-- },
}
end
return M

View file

@ -99,7 +99,8 @@ end
if pcode.active_java_config.active then
table.insert(pcode.treesitter_ensure_installed, "java")
table.insert(pcode.mason_ensure_installed, "jdtls")
table.insert(pcode.dap_ensure_installed, "javadbg")
table.insert(pcode.unregister_lsp, "jdtls")
table.insert(pcode.null_ls_ensure_installed, "google_java_format")
-- table.insert(pcode.dap_ensure_installed, "javadbg")
-- table.insert(pcode.unregister_lsp, "jdtls")
end
return {}

View file

@ -0,0 +1,15 @@
return {
filetypes = { "java" },
root_dir = require("lspconfig.util").root_pattern(
-- Single-module projects
{
"build.xml", -- Ant
"pom.xml", -- Maven
"settings.gradle", -- Gradle
"settings.gradle.kts", -- Gradle
},
-- Multi-module projects
{ "build.gradle", "build.gradle.kts" }
) or vim.fn.getcwd(),
singe_file_support = true,
}