- local aucmd_dict = {
- FileType = {
- {
- -- Set tabstop to 2 for Dart, Vue, JavaScript, TypeScript, and JSON files
- pattern = "dart,vue,javascript,typescript,json,markdown",
- callback = function()
- vim.opt_local.tabstop = 2
- vim.opt_local.softtabstop = 2
- vim.opt_local.shiftwidth = 2
- end,
- },
- {
- pattern = 'dart',
- callback = function ()
- vim.bo.commentstring = '// %s'
- end
- },
- },
-
- BufWritePre = {
- {
- -- Remove trailing whitespace on save
- command = [[%s/\s\+$//e]],
- },
- },
-
- BufRead = {
- {
- -- Return cursor to where it was previously when re-opening a file
- command = [[if @% !~# '\.git[\/\\]COMMIT_EDITMSG$' && line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g`\"" | endif]]
- },
-
- {
- -- Set syntax for Dockerfiles
- pattern = { '*.docker' },
- callback = function()
- vim.opt_local.syntax = 'dockerfile'
- end
- },
-
- {
- pattern = { '*.blade.php' },
- command = [[set syntax=html]],
- },
- },
-
- BufNewFile = {
- {
- -- Set syntax for Dockerfiles
- pattern = { '*.docker' },
- callback = function()
- vim.opt_local.syntax = 'dockerfile'
- end
- },
- },
- }
-
- for event, opt_tbls in pairs(aucmd_dict) do
- for _, opt_tbl in pairs(opt_tbls) do
- vim.api.nvim_create_autocmd(event, opt_tbl)
- end
- end
-
|