neovim-config/lua/filetypes.lua

38 lines
1.3 KiB
Lua

--
-- Configuration Tools
--
local ct = require('conftool')
local defs = require('defaults')
--
-- Templates
--
ct.augroup('templates',
{'BufNewFile', '*.c', '0r', defs.template_dir .. '/c_stdio.c'},
{'BufNewFile', '*.cpp', '0r', defs.template_dir .. '/cpp_iostream.cpp'},
{'BufNewFile', '*.desktop', '0r', defs.template_dir .. '/desktop'},
{'BufNewFile', '*.go', '0r', defs.template_dir .. '/go.go'},
{'BufNewFile', '*.html', '0r', defs.template_dir .. '/html-index.html'},
{'BufNewFile', '*.py', '0r', defs.template_dir .. '/py.py'},
{'BufNewFile', '*.sh', '0r', defs.template_dir .. '/sh.sh'}
)
--
-- FileType based Settings
--
-- moved to after/ftplugin
-- ct.augroup('filetypeSettings',
-- {'FileType', 'python', 'setlocal', 'tabstop=4 shiftwidth=4 expandtab'},
-- {'FileType', 'dart', 'setlocal', 'tabstop=2 shiftwidth=2 expandtab'},
-- {'FileType', 'html', 'setlocal', 'tabstop=2 shiftwidth=2'},
-- {'FileType', 'javascript', 'setlocal', 'tabstop=2 shiftwidth=2'},
-- {'FileType', 'typescript', 'setlocal', 'tabstop=2 shiftwidth=2'},
-- {'FileType', 'typescriptreact','setlocal', 'tabstop=2 shiftwidth=2'},
-- {'FileType', 'vue', 'setlocal', 'tabstop=2 shiftwidth=2'}
-- )
--
-- Misc.
--
vim.cmd 'autocmd BufWritePost *.go,*.py,*.js,*.ts,*tsx,*.tex LspFormat' -- run lspformat when saving