Ir al contenido principal
Versión: Siguiente

Comandos Automaticos

Para añadir comandos automaticos puedes usar la api nativa de nvim vim.api.nvim_create_autocmd o también puedes usar la tabla que te brinda LunarVim para hacerlo lvim.autocommands, con ambas formas obtienes el mismo resultado, ya que LunarVim va a enviar estos comandos a la api de nvim por medio de define_autocmds() automáticamente.

lvim.autocommands = {
"BufEnter", -- ver `:h autocmd-events`
{ -- esta tabla es enviada como `opts` a `nvim_create_autocmd`
pattern = { "*.json", "*.jsonc" }, -- ver `:h autocmd-events`
command = "setlocal wrap",
}
},

Esto va a ejecutar un comando cuando se registre el evento que coincida con el tipo de archivo proporcionado.

Un ejemplo usando la api de nvim se veria de la siguiente forma:

vim.api.nvim_create_autocmd("BufEnter", {
pattern = { "*.json", "*.jsonc" },
-- habilita el modo wrap solo para archivos json
command = "setlocal wrap",
})

Tambíén puedes añadir callbacks con lua.

lvim.autocommands = {
{
"BufWinEnter", {
pattern = { "*.cpp", "*.hpp" },
callback = function()
-- mira ma!, estoy usando LunarVim
if vim.loop.cwd() == "path/to/my/project" then
vim.cmd [[setlocal tabstop=8 shiftwidth=8]]
end
end
},
}
}