From 0721b537a8aa3be8b70c183b25951494df9dcd0e Mon Sep 17 00:00:00 2001 From: Matthew Lemon Date: Sun, 14 May 2023 09:10:26 +0100 Subject: Installs nvim config base-idea --- nvim/lua/autocommands.lua | 53 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 nvim/lua/autocommands.lua (limited to 'nvim/lua/autocommands.lua') diff --git a/nvim/lua/autocommands.lua b/nvim/lua/autocommands.lua new file mode 100644 index 0000000..ab612b0 --- /dev/null +++ b/nvim/lua/autocommands.lua @@ -0,0 +1,53 @@ +vim.api.nvim_create_autocmd({ "FileType" }, { + pattern = { "qf", "help", "man", "lspinfo", "spectre_panel" }, + callback = function() + vim.cmd [[ + nnoremap q :close + set nobuflisted + ]] + end, +}) + +vim.api.nvim_create_autocmd({ "FileType" }, { + pattern = { "gitcommit", "markdown" }, + callback = function() + vim.opt_local.wrap = true + vim.opt_local.spell = true + end, +}) +-- Automatically close tab/vim when nvim-tree is the last window in the tab +vim.cmd "autocmd BufEnter * ++nested if winnr('$') == 1 && bufname() == 'NvimTree_' . tabpagenr() | quit | endif" + +vim.api.nvim_create_autocmd({ "VimResized" }, { + callback = function() + vim.cmd "tabdo wincmd =" + end, +}) + +vim.api.nvim_create_autocmd({ "TextYankPost" }, { + callback = function() + vim.highlight.on_yank { higroup = "Visual", timeout = 200 } + end, +}) + +vim.api.nvim_create_autocmd({ "BufWritePost" }, { + pattern = { "*.java" }, + callback = function() + vim.lsp.codelens.refresh() + end, +}) + +vim.api.nvim_create_autocmd({ "VimEnter" }, { + callback = function() + vim.cmd "hi link illuminatedWord LspReferenceText" + end, +}) + +vim.api.nvim_create_autocmd({ "BufWinEnter" }, { + callback = function() + local line_count = vim.api.nvim_buf_line_count(0) + if line_count >= 5000 then + vim.cmd "IlluminatePauseBuf" + end + end, +}) -- cgit v1.2.3