diff options
| author | Robert Günzler <r@gnzler.io> | 2024-11-25 13:30:37 +0100 |
|---|---|---|
| committer | Robert Günzler <r@gnzler.io> | 2024-11-25 13:58:25 +0100 |
| commit | 23de12baba9fbfc4ca24581b37c374aa5345cc25 (patch) | |
| tree | e4b3c421bad572eb85a1089eaad44dc3059ab6e6 /.vim/plugin/auto.lua | |
| parent | 18e3848110da0a59843058927ea04b496f5db2a5 (diff) | |
update nvim config
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to '.vim/plugin/auto.lua')
| -rw-r--r-- | .vim/plugin/auto.lua | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/.vim/plugin/auto.lua b/.vim/plugin/auto.lua new file mode 100644 index 0000000..ab4e159 --- /dev/null +++ b/.vim/plugin/auto.lua @@ -0,0 +1,38 @@ +local augroup = vim.api.nvim_create_augroup +local autocmd = vim.api.nvim_create_autocmd + +do + local group = augroup('EasyQuit', { clear = true }) + autocmd('FileType', { + pattern = { + 'help', + 'qf', + 'dap-float', + 'gitsigns-blame', + 'git', + }, + callback = function() + vim.keymap.set('n', 'q', '<cmd>close<cr>', { silent = true, buffer = 0 }) + end, + group = group, + }) + autocmd('FileType', { + pattern = { 'gitgraph' }, + callback = function() + vim.keymap.set('n', 'q', '<cmd>bdel!<cr>', { silent = true, buffer = 0 }) + end, + group = group, + }) + autocmd('FileType', { + pattern = { 'DiffviewFiles' }, + callback = function() + vim.keymap.set('n', 'q', '<cmd>tabclose<cr>', { silent = true, buffer = 0 }) + end, + group = group, + }) + autocmd('TermClose', { + pattern = { 'term://*' }, + command = [[ if !v:event.status | exe 'bdelete! '..expand('<abuf>') | endif ]], + group = group, + }) +end |