feat: add zig tests and zls

This commit is contained in:
2025-12-07 14:39:40 +01:00
parent 47d40e3ed7
commit 1418bb2618

View File

@@ -183,6 +183,7 @@ vim.lsp.enable({
"tailwindcss",
"bashls",
"jdtls",
"zls"
})
-- Enables filtered completions for tailwindcss class names, e.g. "mt-<C-n>".
@@ -244,16 +245,32 @@ local function java_symbol_under_cursor()
return class_name, method_name
end
local function run_selected_gradle_tests()
local class_name, method_name = java_symbol_under_cursor()
if class_name and method_name then
local cmd = string.format("./gradlew clean test --tests %s.%s", class_name, method_name)
vim.cmd("vsplit | terminal " .. cmd)
local function run_selected_test()
local filetype = vim.bo.filetype
if filetype == "java" then
local class_name, method_name = java_symbol_under_cursor()
if class_name and method_name then
local cmd = string.format("./gradlew clean test --tests %s.%s", class_name, method_name)
vim.cmd("vsplit | terminal " .. cmd)
end
else
error("Unsupported filetype: " .. filetype)
end
end
local function run_all_gradle_tests()
local cmd = string.format("./gradlew clean test")
local function run_all_tests()
local filetype = vim.bo.filetype
local cmd
if filetype == "java" then
cmd = "./gradlew clean test"
elseif filetype == "zig" then
cmd = "zig build test"
else
error("Unsupported filetype: " .. filetype)
end
vim.cmd("vsplit | terminal " .. cmd)
end
@@ -331,8 +348,8 @@ vim.keymap.set("n", "<leader>em", require 'jdtls'.extract_method, { desc = "Extr
vim.keymap.set("v", "<leader>em", ":lua require'jdtls'.extract_method(true)<CR>",
{ desc = "Extract method", silent = true })
vim.keymap.set("n", "<leader>rtc", run_selected_gradle_tests, { desc = "Run Gradle tests under cursor" })
vim.keymap.set("n", "<leader>rta", run_all_gradle_tests, { desc = "Run all Gradle tests" })
vim.keymap.set("n", "<leader>rta", run_all_tests, { desc = "Run all Gradle tests" })
vim.keymap.set("n", "<leader>rtc", run_selected_test, { desc = "Run Gradle tests under cursor" })
vim.keymap.set({ "n", "v" }, "<leader>?", function() require("which-key").show({ global = false }) end,
{ desc = "Buffer Local Keymaps (which-key)" })