feat: flutter debugging and git diff

pull/1566/head
Wil Simpson 3 weeks ago
parent 4b7c1bb8f6
commit c721d67a75

@ -76,8 +76,6 @@ vim.opt.listchars = { tab = '» ', trail = '·', nbsp = '␣' }
-- See `:help hlsearch`
vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>')
vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' })
vim.api.nvim_create_autocmd('TextYankPost', {
desc = 'Highlight when yanking (copying) text',
group = vim.api.nvim_create_augroup('kickstart-highlight-yank', { clear = true }),
@ -565,6 +563,9 @@ require('lazy').setup({
},
},
gopls = {},
dart = {
force = true,
},
-- solargraph = {},
-- ruby_lsp = {},
sqlls = {},
@ -959,3 +960,49 @@ vim.keymap.set('n', '<leader>e', vim.diagnostic.open_float)
-- The line beneath this is called `modeline`. See `:help modeline`
-- vim: ts=2 sts=2 sw=2 et
--
-- Enable exrc, which will load a local .nvim.lua if it exists in the pwd
vim.opt.exrc = true
-- Quickfix
vim.keymap.set('n', '<leader>qn', ':cnext<CR>', { desc = 'Next quickfix item' })
vim.keymap.set('n', '<leader>qp', ':cprev<CR>', { desc = 'Previous quickfix item' })
-- Git diff base tracking
vim.keymap.set('n', '<leader>qgc', function()
vim.g.last_git_diff_mode = ''
vim.cmd 'Git difftool'
end, { desc = '[Q]uickfix [G]itdiff [C]reate' })
vim.keymap.set('n', '<leader>qgh', function()
vim.g.last_git_diff_mode = 'HEAD~1'
vim.cmd 'Git difftool HEAD~1'
end, { desc = '[Q]uickfix [G]itdiff [H]EAD~1' })
-- Smart quickfix Gitdiff next/prev
vim.keymap.set('n', '<leader>qgv', function()
local buffers = vim.api.nvim_list_bufs()
local deleted_count = 0
for _, buf in ipairs(buffers) do
if vim.api.nvim_buf_is_loaded(buf) then
local name = vim.api.nvim_buf_get_name(buf)
if name:match '^fugitive://' then
vim.api.nvim_buf_delete(buf, { force = true })
deleted_count = deleted_count + 1
end
end
end
if deleted_count > 0 then
vim.notify('Closed ' .. deleted_count .. ' Gdiffsplit buffer(s)', vim.log.levels.INFO)
else
vim.notify('Opening new GDiffsplit', vim.log.levels.INFO)
end
vim.cmd('Gdiffsplit ' .. vim.g.last_git_diff_mode)
end, { desc = '[Q]uickfix [G]itdiff [V]iew (context-aware)' })
-- Quickfix with diagnostics
vim.keymap.set('n', '<leader>qd', vim.diagnostic.setloclist, { desc = 'Open [Q]uickfix [D]iagnostic list' })

@ -0,0 +1,9 @@
return {
'nvim-flutter/flutter-tools.nvim',
lazy = false,
dependencies = {
'nvim-lua/plenary.nvim',
'stevearc/dressing.nvim', -- optional for vim.ui.select
},
config = true,
}
Loading…
Cancel
Save