From 6edc72539468ed40101c56288ba6a4c10c85d382 Mon Sep 17 00:00:00 2001 From: Trey Bastian Date: Fri, 30 Jan 2026 11:29:46 +0000 Subject: added sonarqube, support for finding java and tests in telescope --- lua/config/java.lua | 88 +++++++++++++++++++++++++++++++++++++++++++++++++++++ lua/config/lsp.lua | 13 -------- 2 files changed, 88 insertions(+), 13 deletions(-) (limited to 'lua/config') diff --git a/lua/config/java.lua b/lua/config/java.lua index 819a09e..c2e9de3 100644 --- a/lua/config/java.lua +++ b/lua/config/java.lua @@ -1,6 +1,94 @@ vim.pack.add({ "https://github.com/nvim-java/nvim-java", "https://github.com/JavaHello/spring-boot.nvim", + "https://github.com/iamkarasik/sonarqube.nvim", }) require("java").setup() + +local function path_to_class(path) + local name = path:gsub("%.java$", "") + local class_path = name:match(".*/java/(.*)") or name + class_path = class_path:gsub("/", ".") + return class_path +end + +-- find java files only +-- inspired by +-- https://github.com/MuriloGhignatti/nvim-config/blob/main/lua/safe/plugins/fuzzy_finder.lua +vim.keymap.set("n", "jc", function() + require("telescope.builtin").find_files({ + prompt_title = "Java Classes", + cwd = vim.fn.getcwd(), + find_command = { + "rg", + "--files", + "--type", + "java", + "--glob", + "!*.properties", + "--glob", + "!*Test.java", + "--glob", + "!**/test/**", + }, + path_display = function(_, path) + return path_to_class(path) + end, + previewer = true, + }) +end) + +vim.keymap.set("n", "jt", function() + require("telescope.builtin").find_files({ + prompt_title = "Java Tests", + cwd = vim.fn.getcwd(), + find_command = { + "rg", + "--files", + "--type", + "java", + "--glob", + "!*.properties", + "--glob", + "*Test*.java", + "--glob", + "**/test/**.java", + }, + path_display = function(_, path) + return path_to_class(path) + end, + previewer = true, + }) +end) + +-- mason sonarqube config +local extension_path = vim.fn.stdpath("data") .. "/mason/packages/sonarlint-language-server/extension" + +require("sonarqube").setup({ + lsp = { + cmd = { + vim.fn.exepath("java"), + "-jar", + extension_path .. "/server/sonarlint-ls.jar", + "-stdio", + "-analyzers", + extension_path .. "/analyzers/sonargo.jar", + extension_path .. "/analyzers/sonarhtml.jar", + extension_path .. "/analyzers/sonariac.jar", + extension_path .. "/analyzers/sonarjava.jar", + extension_path .. "/analyzers/sonarjavasymbolicexecution.jar", + extension_path .. "/analyzers/sonarjs.jar", + extension_path .. "/analyzers/sonarphp.jar", + extension_path .. "/analyzers/sonarpython.jar", + extension_path .. "/analyzers/sonartext.jar", + extension_path .. "/analyzers/sonarxml.jar", + }, + }, + csharp = { + enabled = true, + omnisharpDirectory = extension_path .. "/omnisharp", + csharpOssPath = extension_path .. "/analyzers/sonarcsharp.jar", + csharpEnterprisePath = extension_path .. "/analyzers/csharpenterprise.jar", + }, +}) diff --git a/lua/config/lsp.lua b/lua/config/lsp.lua index 51ed5ec..2d2db8a 100644 --- a/lua/config/lsp.lua +++ b/lua/config/lsp.lua @@ -9,19 +9,6 @@ vim.pack.add({ require("mason").setup() require("mason-lspconfig").setup() -vim.lsp.enable({ - "bashls", - "lua_ls", - "sourcekit", - "ts_ls", - "css_ls", - "emmet_language_server", - "svelte", - "astro", - "cobol_ls", - "lemminx", -}) - require("blink.cmp").setup({ signature = { enabled = true }, }) -- cgit v1.2.3