-- -- 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', '*.go', '0r', defs.template_dir .. '/go.go'}, {'BufNewFile', '*.html', '0r', defs.template_dir .. '/html.html'}, {'BufNewFile', '*.html', '0r', defs.template_dir .. '/html.html'}, {'BufNewFile', '*.py', '0r', defs.template_dir .. '/py.py'}, {'BufNewFile', '*.sh', '0r', defs.template_dir .. '/sh.sh'} ) -- -- FileType based Settings -- ct.augroup('filetypeSettings', {'FileType', 'python', 'setlocal', 'tabstop=4 shiftwidth=4 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 in go