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