This commit is contained in:
2023-07-26 13:07:42 -04:00
parent 2d99f7f615
commit ab7f4359fe
3 changed files with 111 additions and 97 deletions

View File

@@ -12,10 +12,11 @@ require("lazy").setup({
{ "LazyVim/LazyVim", import = "lazyvim.plugins" }, { "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- import any extras modules here -- import any extras modules here
{ import = "lazyvim.plugins.extras.lang.typescript" }, { import = "lazyvim.plugins.extras.lang.typescript" },
{ import = "lazyvim.plugins.extras.lang.java" },
{ import = "lazyvim.plugins.extras.lang.json" }, { import = "lazyvim.plugins.extras.lang.json" },
-- { import = "lazyvim.plugins.extras.ui.mini-animate" }, -- { import = "lazyvim.plugins.extras.ui.mini-animate" },
{ import = "lazyvim.plugins.extras.dap.core" }, { import = "lazyvim.plugins.extras.dap.core" },
{ import = "lazyvim.plugins.extras.editor.flash" }, -- { import = "lazyvim.plugins.extras.editor.flash" },
-- import/override with your plugins -- import/override with your plugins
{ import = "plugins" }, { import = "plugins" },
}, },

View File

@@ -2,91 +2,91 @@ return {
{ "jay-babu/mason-nvim-dap.nvim", tag = "v2.0.1" }, { "jay-babu/mason-nvim-dap.nvim", tag = "v2.0.1" },
{ {
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
dependencies = { -- dependencies = {
{ "mfussenegger/nvim-jdtls" }, -- { "mfussenegger/nvim-jdtls" },
}, -- },
opts = { opts = {
autoformat = false, autoformat = false,
servers = { -- servers = {
jdtls = {}, -- jdtls = {},
}, -- },
setup = { -- setup = {
jdtls = function(_, opts) -- jdtls = function(_, opts)
vim.api.nvim_create_autocmd("Filetype", { -- vim.api.nvim_create_autocmd("Filetype", {
pattern = "java", -- autocmd to start jdtls -- pattern = "java", -- autocmd to start jdtls
callback = function() -- callback = function()
-- use this function notation to build some variables -- -- use this function notation to build some variables
local root_markers = { ".git", "mvnw", "gradlew", "pom.xml", "build.gradle" } -- local root_markers = { ".git", "mvnw", "gradlew", "pom.xml", "build.gradle" }
local root_dir = require("jdtls.setup").find_root(root_markers) -- local root_dir = require("jdtls.setup").find_root(root_markers)
--
-- calculate workspace dir -- -- calculate workspace dir
local project_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":p:h:t") -- local project_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":p:h:t")
local workspace_dir = vim.fn.stdpath("data") .. "/site/java/workspace-root/" .. project_name -- local workspace_dir = vim.fn.stdpath("data") .. "/site/java/workspace-root/" .. project_name
-- os.execute("mkdir " .. workspace_dir) -- -- os.execute("mkdir " .. workspace_dir)
--
-- get the mason install path -- -- get the mason install path
local install_path = require("mason-registry").get_package("jdtls"):get_install_path() -- local install_path = require("mason-registry").get_package("jdtls"):get_install_path()
local debug_install_path = require("mason-registry").get_package("java-debug-adapter"):get_install_path() -- local debug_install_path = require("mason-registry").get_package("java-debug-adapter"):get_install_path()
local test_install_path = require("mason-registry").get_package("java-test"):get_install_path() -- local test_install_path = require("mason-registry").get_package("java-test"):get_install_path()
--
-- get the current OS -- -- get the current OS
local os -- local os
if vim.fn.has("macunix") then -- if vim.fn.has("macunix") then
os = "mac" -- os = "mac"
elseif vim.fn.has("win32") then -- elseif vim.fn.has("win32") then
os = "win" -- os = "win"
else -- else
os = "linux" -- os = "linux"
end -- end
--
-- return the server config -- -- return the server config
local config = { -- local config = {
cmd = { -- cmd = {
"java", -- "java",
"-Declipse.application=org.eclipse.jdt.ls.core.id1", -- "-Declipse.application=org.eclipse.jdt.ls.core.id1",
"-Dosgi.bundles.defaultStartLevel=4", -- "-Dosgi.bundles.defaultStartLevel=4",
"-Declipse.product=org.eclipse.jdt.ls.core.product", -- "-Declipse.product=org.eclipse.jdt.ls.core.product",
"-Dlog.protocol=true", -- "-Dlog.protocol=true",
"-Dlog.level=ALL", -- "-Dlog.level=ALL",
-- "-javaagent:" .. install_path .. "/lombok.jar", -- -- "-javaagent:" .. install_path .. "/lombok.jar",
"-Xms1g", -- "-Xms1g",
"--add-modules=ALL-SYSTEM", -- "--add-modules=ALL-SYSTEM",
"--add-opens", -- "--add-opens",
"java.base/java.util=ALL-UNNAMED", -- "java.base/java.util=ALL-UNNAMED",
"--add-opens", -- "--add-opens",
"java.base/java.lang=ALL-UNNAMED", -- "java.base/java.lang=ALL-UNNAMED",
"-jar", -- "-jar",
vim.fn.glob(install_path .. "/plugins/org.eclipse.equinox.launcher_*.jar"), -- vim.fn.glob(install_path .. "/plugins/org.eclipse.equinox.launcher_*.jar"),
"-configuration", -- "-configuration",
install_path .. "/config_" .. os, -- install_path .. "/config_" .. os,
"-data", -- "-data",
workspace_dir, -- workspace_dir,
}, -- },
root_dir = root_dir, -- root_dir = root_dir,
settings = { -- settings = {
java = { -- java = {
referencesCodeLens = { -- referencesCodeLens = {
enabled = false, -- enabled = false,
}, -- },
}, -- },
}, -- },
init_options = { -- init_options = {
bundles = vim.list_extend({ -- bundles = vim.list_extend({
vim.fn.glob(debug_install_path .. "/extension/server/com.microsoft.java.debug.plugin-*.jar", true), -- vim.fn.glob(debug_install_path .. "/extension/server/com.microsoft.java.debug.plugin-*.jar", true),
}, vim.split(vim.fn.glob(test_install_path .. "/extension/server/*.jar", true), "\n")), -- }, vim.split(vim.fn.glob(test_install_path .. "/extension/server/*.jar", true), "\n")),
}, -- },
["on_attach"] = function(client, bufnr) -- ["on_attach"] = function(client, bufnr)
require("jdtls").setup_dap() -- require("jdtls").setup_dap()
require("jdtls.setup").add_commands() -- require("jdtls.setup").add_commands()
vim.keymap.set("n", "<leader>cc", function() require('jdtls').compile() end, {buffer = bufnr, desc = "Java Errors"}) -- vim.keymap.set("n", "<leader>cc", function() require('jdtls').compile() end, {buffer = bufnr, desc = "Java Errors"})
end, -- end,
} -- }
require("jdtls").start_or_attach(config) -- require("jdtls").start_or_attach(config)
end, -- end,
}) -- })
return true -- return true
end, -- end,
}, -- },
}, },
}, },
} }

View File

@@ -3,9 +3,9 @@ return {
"goolord/alpha-nvim", "goolord/alpha-nvim",
enabled = false, enabled = false,
}, },
{ -- {
"stevearc/dressing.nvim", -- "stevearc/dressing.nvim",
}, -- },
{ {
"akinsho/bufferline.nvim", "akinsho/bufferline.nvim",
enabled = false, enabled = false,
@@ -33,10 +33,10 @@ return {
-- paste_on_remote_yank = true, -- paste_on_remote_yank = true,
-- }, -- },
-- }, -- },
{ -- {
"ggandor/flit.nvim", -- "ggandor/flit.nvim",
enabled = false, -- enabled = false,
}, -- },
-- { -- {
-- "rafamadriz/friendly-snippets", -- "rafamadriz/friendly-snippets",
-- enabled = false, -- enabled = false,
@@ -50,16 +50,29 @@ return {
}, },
}, },
}, },
{
"folke/flash.nvim",
opts = {
modes = {
search = {
enabled = false,
},
char = {
enabled = false,
},
}
},
},
{ {
"echasnovski/mini.pairs", "echasnovski/mini.pairs",
enabled = false, enabled = false,
}, },
{ "ellisonleao/gruvbox.nvim" }, -- { "ellisonleao/gruvbox.nvim" },
{"rktjmp/lush.nvim" }, -- {"rktjmp/lush.nvim" },
{"briones-gabriel/darcula-solid.nvim", -- {"briones-gabriel/darcula-solid.nvim",
depends = {"rktjmp/lush.nvim" }, -- depends = {"rktjmp/lush.nvim" },
}, -- },
{ "doums/darcula" }, -- { "doums/darcula" },
{ {
"echasnovski/mini.indentscope", "echasnovski/mini.indentscope",
opts = { opts = {