62 lines
2.1 KiB
Lua
62 lines
2.1 KiB
Lua
-- Autocmds are automatically loaded on the VeryLazy event
|
|
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
|
|
--
|
|
-- Add any additional autocmds here
|
|
-- with `vim.api.nvim_create_autocmd`
|
|
--
|
|
-- Or remove existing autocmds by their group name (which is prefixed with `lazyvim_` for the defaults)
|
|
-- e.g. vim.api.nvim_del_augroup_by_name("lazyvim_wrap_spell")
|
|
-- Автокоманды для Markdown файлов
|
|
vim.api.nvim_create_augroup("MarkdownSettings", { clear = true })
|
|
|
|
vim.api.nvim_create_autocmd("FileType", {
|
|
group = "MarkdownSettings",
|
|
pattern = "markdown",
|
|
callback = function()
|
|
-- Настройка переноса строк
|
|
vim.opt_local.wrap = true
|
|
vim.opt_local.linebreak = true
|
|
vim.opt_local.showbreak = "↪ "
|
|
|
|
-- Настройка отступов
|
|
vim.opt_local.tabstop = 2
|
|
vim.opt_local.shiftwidth = 2
|
|
vim.opt_local.softtabstop = 2
|
|
vim.opt_local.expandtab = true
|
|
|
|
-- Включение проверки орфографии
|
|
vim.opt_local.spell = false
|
|
vim.opt_local.spelllang = "en,ru"
|
|
|
|
-- Скрытие разметки
|
|
vim.opt_local.conceallevel = 2
|
|
|
|
-- Автоматическое сохранение при переключении буферов
|
|
vim.opt_local.autowrite = true
|
|
end,
|
|
})
|
|
|
|
-- Автоматическое обновление времени модификации
|
|
vim.api.nvim_create_autocmd("BufWritePre", {
|
|
group = "MarkdownSettings",
|
|
pattern = "*.md",
|
|
callback = function()
|
|
local lines = vim.api.nvim_buf_get_lines(0, 0, 10, false)
|
|
for i, line in ipairs(lines) do
|
|
if line:match("^modified:") then
|
|
local new_line = "modified: " .. os.date("%Y-%m-%d %H:%M:%S")
|
|
vim.api.nvim_buf_set_lines(0, i - 1, i, false, { new_line })
|
|
break
|
|
end
|
|
end
|
|
end,
|
|
})
|
|
|
|
-- Отключить все диагностики для markdown файлов
|
|
vim.api.nvim_create_autocmd("FileType", {
|
|
pattern = "markdown",
|
|
callback = function()
|
|
vim.diagnostic.enable(false)
|
|
end,
|
|
})
|