mirror of
https://github.com/pojokcodeid/nvim-lazy.git
synced 2025-06-22 00:49:01 +02:00
enc: update config spesifik language java
This commit is contained in:
parent
0c56a139ec
commit
835b1706b2
10 changed files with 144 additions and 74 deletions
|
@ -2,29 +2,10 @@ local M = {}
|
|||
M = {
|
||||
{
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
-- stylua: ignore
|
||||
opts = function(_, opts)
|
||||
opts.skip_config = opts.skip_config or {}
|
||||
vim.list_extend(opts.skip_config, { "jdtls" })
|
||||
vim.keymap.set({ "n", "v" }, "<leader>l", "", { desc = "LSP" })
|
||||
-- Set vim motion for <Space> + l + h to show code documentation about the code the cursor is currently over if available
|
||||
vim.keymap.set("n", "<leader>lh", vim.lsp.buf.hover, { desc = "Code Hover Documentation" })
|
||||
-- Set vim motion for <Space> + l + d to go where the code/variable under the cursor was defined
|
||||
vim.keymap.set("n", "<leader>ld", vim.lsp.buf.definition, { desc = "Code Goto Definition" })
|
||||
-- Set vim motion for <Space> + l + a for display code action suggestions for code diagnostics in both normal and visual mode
|
||||
vim.keymap.set({ "n", "v" }, "<leader>la", vim.lsp.buf.code_action, { desc = "Code Actions" })
|
||||
-- Set vim motion for <Space> + l + r to display references to the code under the cursor
|
||||
vim.keymap.set("n", "<leader>lr", require("telescope.builtin").lsp_references, { desc = "Code Goto References" })
|
||||
-- Set vim motion for <Space> + l + i to display implementations to the code under the cursor
|
||||
vim.keymap.set("n", "<leader>li", require("telescope.builtin").lsp_implementations, { desc = "Code Goto Implementations" })
|
||||
-- Set a vim motion for <Space> + l + <Shift>R to smartly rename the code under the cursor
|
||||
vim.keymap.set("n", "<leader>lR", vim.lsp.buf.rename, { desc = "Code Rename" })
|
||||
-- Set a vim motion for <Space> + l + <Shift>D to go to where the code/object was declared in the project (class file)
|
||||
vim.keymap.set("n", "<leader>lD", vim.lsp.buf.declaration, { desc = "Code Goto Declaration" })
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>l", "", desc = "LSP", mode = { "n", "v" } },
|
||||
},
|
||||
},
|
||||
{
|
||||
"mfussenegger/nvim-jdtls",
|
||||
|
@ -33,52 +14,10 @@ M = {
|
|||
enabled = true,
|
||||
-- your opts go here
|
||||
opts = {},
|
||||
-- stylua: ignore
|
||||
config = function(_, opts)
|
||||
require("auto-jdtls").setup(opts)
|
||||
-- add keymaps
|
||||
vim.keymap.set('n', '<leader>J', "", { desc = "Java" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + o to organize imports in normal mode
|
||||
vim.keymap.set('n', '<leader>Jo', "<Cmd> lua require('jdtls').organize_imports()<CR>", { desc = "Java Organize Imports" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + v to extract the code under the cursor to a variable
|
||||
vim.keymap.set('n', '<leader>Jv', "<Cmd> lua require('jdtls').extract_variable()<CR>", { desc = "Java Extract Variable" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + v to extract the code selected in visual mode to a variable
|
||||
vim.keymap.set('v', '<leader>Jv', "<Esc><Cmd> lua require('jdtls').extract_variable(true)<CR>", { desc = "Java Extract Variable" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + <Shift>C to extract the code under the cursor to a static variable
|
||||
vim.keymap.set('n', '<leader>JC', "<Cmd> lua require('jdtls').extract_constant()<CR>", { desc = "Java Extract Constant" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + <Shift>C to extract the code selected in visual mode to a static variable
|
||||
vim.keymap.set('v', '<leader>JC', "<Esc><Cmd> lua require('jdtls').extract_constant(true)<CR>", { desc = "Java Extract Constant" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + t to run the test method currently under the cursor
|
||||
vim.keymap.set('n', '<leader>Jt', "<Cmd> lua require('jdtls').test_nearest_method()<CR>", { desc = "Java Test Method" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + t to run the test method that is currently selected in visual mode
|
||||
vim.keymap.set('v', '<leader>Jt', "<Esc><Cmd> lua require('jdtls').test_nearest_method(true)<CR>", { desc = "Java Test Method" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + <Shift>T to run an entire test suite (class)
|
||||
vim.keymap.set('n', '<leader>JT', "<Cmd> lua require('jdtls').test_class()<CR>", { desc = "Java Test Class" })
|
||||
-- Set a Vim motion to <Space> + <Shift>J + u to update the project configuration
|
||||
vim.keymap.set('n', '<leader>Ju', "<Cmd> JdtUpdateConfig<CR>", { desc = "Java Update Config" })
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
opts = function(_, opts)
|
||||
opts.ensure_installed = opts.ensure_installed or {}
|
||||
vim.list_extend(opts.ensure_installed, { "java" })
|
||||
end,
|
||||
},
|
||||
{
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
-- stylua: ignore
|
||||
opts = function(_, opts)
|
||||
opts.ensure_installed = opts.ensure_installed or {}
|
||||
vim.list_extend(opts.ensure_installed, { "jdtls" })
|
||||
end,
|
||||
},
|
||||
{
|
||||
"pojokcodeid/auto-conform.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = function(_, opts)
|
||||
vim.list_extend(opts.ensure_installed, { "java-debug-adapter", "java-test" })
|
||||
opts.formatters_by_ft.java = { "lsp_fmt" }
|
||||
require("auto-jdtls.utils").lsp_keymaps()
|
||||
require("auto-jdtls.utils").jdtls_keymaps()
|
||||
end,
|
||||
},
|
||||
{
|
||||
|
@ -168,7 +107,7 @@ M = {
|
|||
})
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>S", "<cmd>SymbolsOutline<cr>", desc = "Toggle Outline" },
|
||||
{ "<leader>Js", "<cmd>SymbolsOutline<cr>", desc = "Toggle Outline" },
|
||||
},
|
||||
},
|
||||
}
|
||||
|
|
|
@ -1,6 +1,13 @@
|
|||
return {
|
||||
"nvim-java/nvim-java",
|
||||
event = "VeryLazy",
|
||||
-- event = "VeryLazy",
|
||||
ft = { "java" },
|
||||
dependencies = {
|
||||
"MunifTanjim/nui.nvim",
|
||||
"neovim/nvim-lspconfig",
|
||||
"mfussenegger/nvim-dap",
|
||||
"williamboman/mason.nvim",
|
||||
},
|
||||
config = function()
|
||||
require("java").setup({
|
||||
notifications = {
|
||||
|
|
32
lua/pcode/plugins/lang/java4.lua
Normal file
32
lua/pcode/plugins/lang/java4.lua
Normal file
|
@ -0,0 +1,32 @@
|
|||
return {
|
||||
"nvim-java/nvim-java",
|
||||
-- ft = { "java" },
|
||||
dependencies = {
|
||||
"MunifTanjim/nui.nvim",
|
||||
"neovim/nvim-lspconfig",
|
||||
"mfussenegger/nvim-dap",
|
||||
"williamboman/mason.nvim",
|
||||
},
|
||||
opts = {
|
||||
notifications = {
|
||||
dap = false,
|
||||
},
|
||||
jdk = {
|
||||
auto_install = false,
|
||||
},
|
||||
|
||||
-- NOTE: One of these files must be in your project root directory.
|
||||
-- Otherwise the debugger will end in the wrong directory and fail.
|
||||
root_markers = {
|
||||
"settings.gradle",
|
||||
"settings.gradle.kts",
|
||||
"pom.xml",
|
||||
"build.gradle",
|
||||
"mvnw",
|
||||
"gradlew",
|
||||
"build.gradle",
|
||||
"build.gradle.kts",
|
||||
".git",
|
||||
},
|
||||
},
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue