feat: add zig tests and zls
This commit is contained in:
27
init.lua
27
init.lua
@@ -183,6 +183,7 @@ vim.lsp.enable({
|
|||||||
"tailwindcss",
|
"tailwindcss",
|
||||||
"bashls",
|
"bashls",
|
||||||
"jdtls",
|
"jdtls",
|
||||||
|
"zls"
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Enables filtered completions for tailwindcss class names, e.g. "mt-<C-n>".
|
-- 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
|
return class_name, method_name
|
||||||
end
|
end
|
||||||
|
|
||||||
local function run_selected_gradle_tests()
|
local function run_selected_test()
|
||||||
|
local filetype = vim.bo.filetype
|
||||||
|
|
||||||
|
if filetype == "java" then
|
||||||
local class_name, method_name = java_symbol_under_cursor()
|
local class_name, method_name = java_symbol_under_cursor()
|
||||||
if class_name and method_name then
|
if class_name and method_name then
|
||||||
local cmd = string.format("./gradlew clean test --tests %s.%s", class_name, method_name)
|
local cmd = string.format("./gradlew clean test --tests %s.%s", class_name, method_name)
|
||||||
vim.cmd("vsplit | terminal " .. cmd)
|
vim.cmd("vsplit | terminal " .. cmd)
|
||||||
end
|
end
|
||||||
|
else
|
||||||
|
error("Unsupported filetype: " .. filetype)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
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
|
end
|
||||||
|
|
||||||
local function run_all_gradle_tests()
|
|
||||||
local cmd = string.format("./gradlew clean test")
|
|
||||||
vim.cmd("vsplit | terminal " .. cmd)
|
vim.cmd("vsplit | terminal " .. cmd)
|
||||||
end
|
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>",
|
vim.keymap.set("v", "<leader>em", ":lua require'jdtls'.extract_method(true)<CR>",
|
||||||
{ desc = "Extract method", silent = true })
|
{ 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_tests, { desc = "Run all Gradle tests" })
|
||||||
vim.keymap.set("n", "<leader>rta", run_all_gradle_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,
|
vim.keymap.set({ "n", "v" }, "<leader>?", function() require("which-key").show({ global = false }) end,
|
||||||
{ desc = "Buffer Local Keymaps (which-key)" })
|
{ desc = "Buffer Local Keymaps (which-key)" })
|
||||||
|
|||||||
Reference in New Issue
Block a user