feat: configure aider, vim-test, keymaps...
parent
b903bc371f
commit
57122d01c5
@ -0,0 +1,57 @@
|
||||
"if exists("current_compiler")
|
||||
" finish
|
||||
"endif
|
||||
"
|
||||
|
||||
let current_compiler = "maven"
|
||||
|
||||
CompilerSet makeprg=mvn\ -B\ $*
|
||||
|
||||
" The errorformat for recognize following errors
|
||||
" 1. Error due to POM file
|
||||
" 2. Compliation error
|
||||
" 2.1. Ignore the lines after '[INFO] BUILD FAILURE' because the error message of
|
||||
" compiler has been perceived before it.
|
||||
" 3. Warning
|
||||
" 4. Errors for unit test
|
||||
"
|
||||
|
||||
" Ignored message
|
||||
CompilerSet errorformat=
|
||||
\%-G[INFO]\ %.%#,
|
||||
\%-G[WARNING]\ %.%#,
|
||||
\%-G[debug]\ %.%#,
|
||||
\%-GWARNING:\ %.%#,
|
||||
\%-G%.%#on\ the\ class\ %.%#,
|
||||
\%-G%.%#unless\ at\ least\ %.%#,
|
||||
\%-G%.%#path\ is\ specified\ %.%#,
|
||||
\%-G%.%#processing\ is\ enabled\ %.%#,
|
||||
\%-G%.%#Use\ -Xlint%.%#,
|
||||
\%-G%.%#Use\ -proc%.%#,
|
||||
\%-G%\\d%\\+%.%#,
|
||||
\%-G\\s%#,
|
||||
\%-G\[ERROR]\ Failed\ to\ execute\ goal%.%#,
|
||||
\%-G\[ERROR]\ Please\ refer\ to\ %.%#,
|
||||
\%-G\[ERROR]\ ->\ \[Help\ 1]%.%#,
|
||||
\%-G\[ERROR]\ To\ see\ the\ full\ stack\ trace%.%#,
|
||||
\%-G\[ERROR]\ Re-run\ Maven\ using\ the\ -X\ switch%.%#,
|
||||
\%-G\[ERROR]\ For\ more\ information\ about\ the\ errors%.%#,
|
||||
\%-G\[ERROR]\ \[Help\ 1]\ http%.%#,
|
||||
\%-G\[ERROR]\
|
||||
|
||||
" Error message for POM
|
||||
CompilerSet errorformat+=
|
||||
\[FATAL]\ Non-parseable\ POM\ %f:\ %m%\\s%\\+@%.%#line\ %l\\,\ column\ %c%.%#,
|
||||
\[%tRROR]\ Malformed\ POM\ %f:\ %m%\\s%\\+@%.%#line\ %l\\,\ column\ %c%.%#
|
||||
|
||||
" Error message for compiling
|
||||
CompilerSet errorformat+=
|
||||
\[%tARNING]\ %f:[%l\\,%c]\ %m,
|
||||
\[%tRROR]\ %f:[%l\\,%c]\ %m
|
||||
|
||||
" Message from JUnit 5(5.3.X), TestNG(6.14.X), JMockit(1.43), and AssertJ(3.11.X)
|
||||
CompilerSet errorformat+=
|
||||
\%+E%>[ERROR]\ %.%\\+Time\ elapsed:%.%\\+<<<\ FAILURE!,
|
||||
\%+E%>[ERROR]\ %.%\\+Time\ elapsed:%.%\\+<<<\ ERROR!,
|
||||
\%+Z%\\s%#at\ %f(%\\f%\\+:%l),
|
||||
\%+C%.%#
|
@ -1,40 +1,40 @@
|
||||
return {
|
||||
{
|
||||
'lucas-garcia-rubio/neotest-maven',
|
||||
-- dir = '~/Repositories/pessoal/plugins/neotest-maven',
|
||||
name = 'neotest-maven',
|
||||
ft = 'java',
|
||||
dependencies = {
|
||||
'mfussenegger/nvim-jdtls',
|
||||
'mfussenegger/nvim-dap', -- for the debugger
|
||||
'rcarriga/nvim-dap-ui', -- recommended
|
||||
'theHamsta/nvim-dap-virtual-text', -- recommended
|
||||
'nvim-lua/plenary.nvim',
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
},
|
||||
config = function()
|
||||
local function neotest_output_and_switch()
|
||||
require('neotest').output.open { enter = true }
|
||||
end
|
||||
|
||||
-- Set key mapping for the function
|
||||
vim.keymap.set('n', '<leader>lw', neotest_output_and_switch, { desc = 'Neotest output and enter its window' })
|
||||
end,
|
||||
},
|
||||
{
|
||||
'nvim-neotest/neotest',
|
||||
dependencies = {
|
||||
'neotest-maven',
|
||||
'nvim-neotest/nvim-nio',
|
||||
'nvim-lua/plenary.nvim',
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
},
|
||||
init = function()
|
||||
require('neotest').setup {
|
||||
adapters = {
|
||||
require 'neotest-maven',
|
||||
},
|
||||
}
|
||||
end,
|
||||
},
|
||||
-- {
|
||||
-- 'lucas-garcia-rubio/neotest-maven',
|
||||
-- -- dir = '~/Repositories/pessoal/plugins/neotest-maven',
|
||||
-- name = 'neotest-maven',
|
||||
-- ft = 'java',
|
||||
-- dependencies = {
|
||||
-- 'mfussenegger/nvim-jdtls',
|
||||
-- 'mfussenegger/nvim-dap', -- for the debugger
|
||||
-- 'rcarriga/nvim-dap-ui', -- recommended
|
||||
-- 'theHamsta/nvim-dap-virtual-text', -- recommended
|
||||
-- 'nvim-lua/plenary.nvim',
|
||||
-- 'nvim-treesitter/nvim-treesitter',
|
||||
-- },
|
||||
-- config = function()
|
||||
-- local function neotest_output_and_switch()
|
||||
-- require('neotest').output.open { enter = true }
|
||||
-- end
|
||||
--
|
||||
-- -- Set key mapping for the function
|
||||
-- vim.keymap.set('n', '<leader>lw', neotest_output_and_switch, { desc = 'Neotest output and enter its window' })
|
||||
-- end,
|
||||
-- },
|
||||
-- {
|
||||
-- 'nvim-neotest/neotest',
|
||||
-- dependencies = {
|
||||
-- 'neotest-maven',
|
||||
-- 'nvim-neotest/nvim-nio',
|
||||
-- 'nvim-lua/plenary.nvim',
|
||||
-- 'nvim-treesitter/nvim-treesitter',
|
||||
-- },
|
||||
-- init = function()
|
||||
-- require('neotest').setup {
|
||||
-- adapters = {
|
||||
-- require 'neotest-maven',
|
||||
-- },
|
||||
-- }
|
||||
-- end,
|
||||
-- },
|
||||
}
|
||||
|
@ -0,0 +1,46 @@
|
||||
return {
|
||||
{
|
||||
'GeorgesAlkhouri/nvim-aider',
|
||||
cmd = 'Aider',
|
||||
-- Example key mappings for common actions:
|
||||
keys = {
|
||||
{ '<leader>i/', '<cmd>Aider toggle<cr>', desc = 'Toggle Aider' },
|
||||
{ '<leader>is', '<cmd>Aider send<cr>', desc = 'Send to Aider', mode = { 'n', 'v' } },
|
||||
{ '<leader>ic', '<cmd>Aider command<cr>', desc = 'Aider Commands' },
|
||||
{ '<leader>ib', '<cmd>Aider buffer<cr>', desc = 'Send Buffer' },
|
||||
{ '<leader>i+', '<cmd>Aider add<cr>', desc = 'Add File' },
|
||||
{ '<leader>i-', '<cmd>Aider drop<cr>', desc = 'Drop File' },
|
||||
{ '<leader>ir', '<cmd>Aider add readonly<cr>', desc = 'Add Read-Only' },
|
||||
{ '<leader>iR', '<cmd>Aider reset<cr>', desc = 'Reset Session' },
|
||||
},
|
||||
dependencies = {
|
||||
'folke/snacks.nvim',
|
||||
--- The below dependencies are optional
|
||||
--- Neo-tree integration
|
||||
{
|
||||
'nvim-neo-tree/neo-tree.nvim',
|
||||
opts = function(_, opts)
|
||||
-- Example mapping configuration (already set by default)
|
||||
-- opts.window = {
|
||||
-- mappings = {
|
||||
-- ["+"] = { "nvim_aider_add", desc = "add to aider" },
|
||||
-- ["-"] = { "nvim_aider_drop", desc = "drop from aider" }
|
||||
-- ["="] = { "nvim_aider_add_read_only", desc = "add read-only to aider" }
|
||||
-- }
|
||||
-- }
|
||||
require('nvim_aider.neo_tree').setup(opts)
|
||||
end,
|
||||
},
|
||||
},
|
||||
config = true,
|
||||
opts = {
|
||||
auto_reload = true,
|
||||
},
|
||||
init = function()
|
||||
local wk = require 'which-key'
|
||||
wk.add {
|
||||
{ '<leader>i', group = 'A[i]der commands' },
|
||||
}
|
||||
end,
|
||||
},
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
return {
|
||||
'vim-test/vim-test',
|
||||
dependencies = {
|
||||
'tpope/vim-dispatch',
|
||||
'mikelue/vim-maven-plugin',
|
||||
},
|
||||
init = function()
|
||||
vim.g['test#strategy'] = 'dispatch'
|
||||
-- vim.g.test_echo_command = 1 -- Adicionado para mostrar o comando de teste
|
||||
vim.g['test#java#maventest#options'] = '-B'
|
||||
|
||||
vim.api.nvim_create_autocmd('FileType', {
|
||||
pattern = { 'java' },
|
||||
callback = function()
|
||||
vim.api.nvim_buf_set_keymap(0, 'n', '<leader>ef', '<cmd>TestFile<cr>', { desc = 'Test entire file' })
|
||||
vim.api.nvim_buf_set_keymap(0, 'n', '<leader>en', '<cmd>TestNearest<cr>', { desc = 'Test nearest method' })
|
||||
vim.api.nvim_buf_set_keymap(0, 'n', '<leader>es', '<cmd>TestSuite<cr>', { desc = 'Test entire suite of tests' })
|
||||
vim.api.nvim_buf_set_keymap(0, 'n', '<leader>edn', '<cmd>TestNearest -Dmaven.surefire.debug=true<cr>', { desc = 'Debug nearest method' })
|
||||
vim.api.nvim_buf_set_keymap(0, 'n', '<leader>edf', '<cmd>TestFile -Dmaven.surefire.debug=true<cr>', { desc = 'Debug entire file' })
|
||||
vim.api.nvim_buf_set_keymap(0, 'n', '<leader>eds', '<cmd>TestSuite -Dmaven.surefire.debug=true<cr>', { desc = 'Debug entire suite of tests' })
|
||||
end,
|
||||
})
|
||||
|
||||
local wk = require 'which-key'
|
||||
wk.add {
|
||||
{ '<leader>e', group = 'T[e]sts' },
|
||||
{ '<leader>ed', group = '[D]ebug' },
|
||||
}
|
||||
end,
|
||||
}
|
Loading…
Reference in New Issue