Run rust tests from Neovim with one key mapping.
- Run test under cursor
- Repeat last test run
- Display test results in a dedicated read-only buffer
This plugin is in early stages. Right now it only uses simple heuristics to determine the full cargo test command for the line under cursor.
The idea is to expand this and maybe even leverage rust-analyzer's runnables.
Use your favorite package manager:
-- lazy.nvim
{
"codersauce/runst.nvim",
lazy = false,
opts = {},
config = function()
require("runst").setup()
end
}
-- packer.nvim
use({
"codersauce/runst.nvim",
config = function()
require("runst").setup()
end
})
Default keymaps:
<leader>tt
Runst the test under cursor
<leader>tl
Re-runs last test, if any
<leader>tc
Closes test output buffer
Reassigning keymaps:
Change the default keymaps to your liking like below
vim.api.nvim_set_keymap("n", "<leader>tt", "<cmd>lua require'runst'.run_test()<cr>", { noremap = true, silent = true })
vim.api.nvim_set_keymap(
"n",
"<leader>tl",
"<cmd>lua require'runst'.run_last_test()<cr>",
{ noremap = true, silent = true }
)
vim.api.nvim_set_keymap("n", "<leader>tc", "<cmd>lua require'runst'.close()<cr>", { noremap = true, silent = true })