Привёл nvim к достаточному состоянию

This commit is contained in:
Alexander Neonxp Kiryukhin 2025-04-21 15:15:42 +03:00
parent 020ed86034
commit 4d3bb0270a
Signed by: NeonXP
SSH key fingerprint: SHA256:SVt7TjxbVc87m1QYaQziOJ0N3OCFURv2g76gD/UTTXI
27 changed files with 279 additions and 148 deletions

View file

@ -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",
-- })