mirror of
https://github.com/LazyVim/LazyVim.git
synced 2026-07-25 14:01:06 +00:00
feat(java): no pattern in LspAttach autocmd
This commit is contained in:
parent
cc3dfa496e
commit
69f5a30af8
1 changed files with 35 additions and 32 deletions
|
|
@ -110,41 +110,44 @@ return {
|
||||||
-- https://github.com/mfussenegger/nvim-jdtls#nvim-dap-configuration
|
-- https://github.com/mfussenegger/nvim-jdtls#nvim-dap-configuration
|
||||||
-- https://neovim.io/doc/user/lsp.html#LspAttach
|
-- https://neovim.io/doc/user/lsp.html#LspAttach
|
||||||
vim.api.nvim_create_autocmd("LspAttach", {
|
vim.api.nvim_create_autocmd("LspAttach", {
|
||||||
pattern = "*.java",
|
|
||||||
callback = function(args)
|
callback = function(args)
|
||||||
require("which-key").register({
|
-- only after the jdtls client is attached
|
||||||
["<leader>cx"] = { name = "+extract" },
|
local client = vim.lsp.get_client_by_id(args.data.client_id)
|
||||||
["<leader>cxv"] = { require("jdtls").extract_variable_all, "Extract Variable" },
|
if client.name == "jdtls" then
|
||||||
["<leader>cxc"] = { require("jdtls").extract_constant, "Extract Constant" },
|
require("which-key").register({
|
||||||
["gs"] = { require("jdtls").super_implementation, "Goto Super" },
|
["<leader>cx"] = { name = "+extract" },
|
||||||
["gS"] = { require("jdtls.tests").goto_subjects, "Goto Subjects" },
|
["<leader>cxv"] = { require("jdtls").extract_variable_all, "Extract Variable" },
|
||||||
["<leader>co"] = { require("jdtls").organize_imports, "Organize Imports" },
|
["<leader>cxc"] = { require("jdtls").extract_constant, "Extract Constant" },
|
||||||
}, { mode = "n", buffer = args.buf })
|
["gs"] = { require("jdtls").super_implementation, "Goto Super" },
|
||||||
require("which-key").register({
|
["gS"] = { require("jdtls.tests").goto_subjects, "Goto Subjects" },
|
||||||
["<leader>c"] = { name = "+code" },
|
["<leader>co"] = { require("jdtls").organize_imports, "Organize Imports" },
|
||||||
["<leader>cx"] = { name = "+extract" },
|
}, { mode = "n", buffer = args.buf })
|
||||||
["<leader>cxm"] = { [[<ESC><CMD>lua require('jdtls').extract_method(true)<CR>]], "Extract Method" },
|
require("which-key").register({
|
||||||
["<leader>cxv"] = {
|
["<leader>c"] = { name = "+code" },
|
||||||
[[<ESC><CMD>lua require('jdtls').extract_variable_all(true)<CR>]],
|
["<leader>cx"] = { name = "+extract" },
|
||||||
"Extract Variable",
|
["<leader>cxm"] = { [[<ESC><CMD>lua require('jdtls').extract_method(true)<CR>]], "Extract Method" },
|
||||||
},
|
["<leader>cxv"] = {
|
||||||
["<leader>cxc"] = { [[<ESC><CMD>lua require('jdtls').extract_constant(true)<CR>]], "Extract Constant" },
|
[[<ESC><CMD>lua require('jdtls').extract_variable_all(true)<CR>]],
|
||||||
}, { mode = "v", buffer = args.buf })
|
"Extract Variable",
|
||||||
|
},
|
||||||
|
["<leader>cxc"] = { [[<ESC><CMD>lua require('jdtls').extract_constant(true)<CR>]], "Extract Constant" },
|
||||||
|
}, { mode = "v", buffer = args.buf })
|
||||||
|
|
||||||
if mason_registry.has_package("java-debug-adapter") then
|
if mason_registry.has_package("java-debug-adapter") then
|
||||||
-- custom init for Java debugger
|
-- custom init for Java debugger
|
||||||
require("jdtls").setup_dap({ hotcodereplace = "auto", config_overrides = {} })
|
require("jdtls").setup_dap({ hotcodereplace = "auto", config_overrides = {} })
|
||||||
require("jdtls.dap").setup_dap_main_class_configs()
|
require("jdtls.dap").setup_dap_main_class_configs()
|
||||||
|
|
||||||
-- Java Test require Java debugger to work
|
-- Java Test require Java debugger to work
|
||||||
if mason_registry.has_package("java-test") then
|
if mason_registry.has_package("java-test") then
|
||||||
-- custom keymaps for Java test runner (not yet compatible with neotest)
|
-- custom keymaps for Java test runner (not yet compatible with neotest)
|
||||||
require("which-key").register({
|
require("which-key").register({
|
||||||
["<leader>t"] = { name = "+test" },
|
["<leader>t"] = { name = "+test" },
|
||||||
["<leader>tt"] = { require("jdtls.dap").test_class, "Run All Test" },
|
["<leader>tt"] = { require("jdtls.dap").test_class, "Run All Test" },
|
||||||
["<leader>tr"] = { require("jdtls.dap").test_nearest_method, "Run Nearest Test" },
|
["<leader>tr"] = { require("jdtls.dap").test_nearest_method, "Run Nearest Test" },
|
||||||
["<leader>tT"] = { require("jdtls.dap").pick_test, "Run Test" },
|
["<leader>tT"] = { require("jdtls.dap").pick_test, "Run Test" },
|
||||||
}, { mode = "n", buffer = args.buf })
|
}, { mode = "n", buffer = args.buf })
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue