From 4d3bb0270aa6e76131fb12c191a07fde8cd819fe Mon Sep 17 00:00:00 2001 From: Alexander Neonxp Kiryukhin Date: Mon, 21 Apr 2025 15:15:42 +0300 Subject: =?UTF-8?q?=D0=9F=D1=80=D0=B8=D0=B2=D1=91=D0=BB=20nvim=20=D0=BA=20?= =?UTF-8?q?=D0=B4=D0=BE=D1=81=D1=82=D0=B0=D1=82=D0=BE=D1=87=D0=BD=D0=BE?= =?UTF-8?q?=D0=BC=D1=83=20=D1=81=D0=BE=D1=81=D1=82=D0=BE=D1=8F=D0=BD=D0=B8?= =?UTF-8?q?=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nvim/lua/autocommands.lua | 80 +++++++++++++++++++++++++++++++++++++---------- 1 file changed, 64 insertions(+), 16 deletions(-) (limited to 'nvim/lua/autocommands.lua') diff --git a/nvim/lua/autocommands.lua b/nvim/lua/autocommands.lua index 8db58e7..efdace8 100644 --- a/nvim/lua/autocommands.lua +++ b/nvim/lua/autocommands.lua @@ -1,9 +1,9 @@ -vim.api.nvim_create_autocmd({'BufWritePre'}, { - pattern = '*.go', +vim.api.nvim_create_autocmd({ "BufWritePre" }, { + pattern = "*.go", callback = function() local params = vim.lsp.util.make_range_params(nil, vim.lsp.util._get_offset_encoding()) - params.context = { only = {'source.organizeImports'} } - local result = vim.lsp.buf_request_sync(0, 'textDocument/codeAction', params, 3000) + params.context = { only = { "source.organizeImports" } } + local result = vim.lsp.buf_request_sync(0, "textDocument/codeAction", params, 3000) for _, res in pairs(result or {}) do for _, r in pairs(res.result or {}) do if r.edit then @@ -16,31 +16,79 @@ vim.api.nvim_create_autocmd({'BufWritePre'}, { end, }) -vim.api.nvim_create_autocmd({'BufWritePre'}, { - pattern = '*.go', +vim.api.nvim_create_autocmd({ "BufWritePre" }, { + pattern = "*.go", callback = function() vim.lsp.buf.format(nil, 3000) - end + end, }) - -local TrimWhiteSpaceGrp = vim.api.nvim_create_augroup('TrimWhiteSpaceGrp', {}) -vim.api.nvim_create_autocmd('BufWritePre', { +local TrimWhiteSpaceGrp = vim.api.nvim_create_augroup("TrimWhiteSpaceGrp", {}) +vim.api.nvim_create_autocmd("BufWritePre", { group = TrimWhiteSpaceGrp, - pattern = '*', - command = '%s/\\s\\+$//e', + pattern = "*", + command = "%s/\\s\\+$//e", }) -local YankHighlightGrp = vim.api.nvim_create_augroup('YankHighlightGrp', {}) -vim.api.nvim_create_autocmd('TextYankPost', { +local YankHighlightGrp = vim.api.nvim_create_augroup("YankHighlightGrp", {}) +vim.api.nvim_create_autocmd("TextYankPost", { group = YankHighlightGrp, - pattern = '*', + pattern = "*", callback = function() vim.highlight.on_yank({ - higroup = 'IncSearch', + higroup = "IncSearch", timeout = 40, }) end, }) +vim.api.nvim_create_autocmd({ "BufReadPost", "FileReadPost" }, { + pattern = "*", + callback = function() + vim.cmd("normal! zR") + end, +}) + +vim.api.nvim_create_autocmd("BufEnter", { + pattern = "*", + callback = function() + vim.defer_fn(function() + vim.cmd("normal! zR") + end, 100) + end, +}) + +vim.api.nvim_create_autocmd("BufWinEnter", { + pattern = "*", + callback = function() + vim.schedule(function() + vim.cmd("normal! zR") + end) + end, +}) + +local treeapi = require("nvim-tree.api") + +vim.api.nvim_create_autocmd("BufEnter", { + callback = function() + if vim.bo.filetype == "NvimTree" or vim.fn.expand("%") == "" then + return + end + vim.schedule(function() + treeapi.tree.find_file({ + update_root = false, + focus = false, + }) + end) + end, +}) +-- vim.api.nvim_create_autocmd("InsertEnter", { +-- pattern = "*", +-- command = "set norelativenumber", +-- }) +-- +-- vim.api.nvim_create_autocmd("InsertLeave", { +-- pattern = "*", +-- command = "set relativenumber", +-- }) -- cgit v1.2.3