dotwryn/vim/formatting.vim

126 lines
5.7 KiB
VimL
Raw Normal View History

2022-08-09 23:56:06 +00:00
" --- custom format settings ------------------------------------------
" {{{
function FormatFileType(indent, expandtab, foldmethod, foldlevel, spell)
let &l:tabstop = a:indent
let &l:softtabstop = a:indent
let &l:shiftwidth = a:indent
let &l:expandtab = a:expandtab
let &l:foldmethod = a:foldmethod
let &l:foldlevel = a:foldlevel
let &l:spell = a:spell
endfunction
augroup forced_filetype_recognition
autocmd!
autocmd BufRead,BufNewFile *.tmux setfiletype tmux
autocmd BufRead,BufNewFile *.clisp setfiletype lisp
autocmd BufRead,BufNewFile *.lsp setfiletype lisp
autocmd BufRead,BufNewFile Dockerfile* setfiletype dockerfile
autocmd BufRead,BufNewFile *i3.conf setfiletype i3config
autocmd BufRead,BufNewFile *.template.yaml set filetype=yaml.cloudformation
autocmd BufRead,BufNewFile git.conf setfiletype gitconfig
let g:tex_flavor = "latex"
augroup end
2019-09-26 22:00:03 +00:00
augroup filetype_specific_formatting
autocmd!
autocmd FileType python call FormatFileType(4, v:true, 'indent', 99, v:false)
autocmd FileType java call FormatFileType(4, v:true, 'indent', 99, v:false)
autocmd FileType cpp call FormatFileType(4, v:true, 'indent', 99, v:false)
2020-11-11 20:10:16 +00:00
autocmd FileType cmake call FormatFileType(4, v:true, 'indent', 99, v:false)
autocmd FileType cs call FormatFileType(4, v:true, 'indent', 99, v:false)
autocmd FileType css call FormatFileType(2, v:true, 'indent', 99, v:false)
autocmd FileType sass call FormatFileType(2, v:true, 'indent', 99, v:false)
autocmd FileType html call FormatFileType(2, v:true, 'indent', 99, v:false)
autocmd FileType javascript call FormatFileType(2, v:true, 'indent', 99, v:false)
autocmd FileType typescript call FormatFileType(2, v:true, 'indent', 99, v:false)
autocmd FileType vim call FormatFileType(4, v:false, 'marker', 99, v:false)
autocmd FileType sh call FormatFileType(4, v:false, 'indent', 99, v:false)
autocmd FileType zsh call FormatFileType(4, v:false, 'indent', 99, v:false)
autocmd FileType lisp call FormatFileType(2, v:true, 'indent', 99, v:false)
autocmd FileType markdown call FormatFileType(2, v:false, 'indent', 99, v:true )
autocmd FileType tex call FormatFileType(8, v:false, 'indent', 99, v:true )
autocmd FileType postscr call FormatFileType(2, v:true, 'indent', 99, v:false)
autocmd FileType haskell call FormatFileType(2, v:true, 'indent', 99, v:false)
2020-11-11 20:10:16 +00:00
autocmd FileType perl call FormatFileType(4, v:true, 'indent', 99, v:false)
autocmd FileType kotlin call FormatFileType(2, v:true, 'indent', 99, v:false)
autocmd FileType dockerfile call FormatFileType(4, v:true, 'indent', 99, v:false)
2021-06-28 17:24:34 +00:00
autocmd FileType vue call FormatFileType(2, v:true, 'indent', 99, v:false)
2021-08-23 22:36:56 +00:00
autocmd FileType go call FormatFileType(4, v:false, 'manual', 99, v:false)
autocmd FileType json call FormatFileType(2, v:false, 'indent', 99, v:false)
2023-11-13 18:09:01 +00:00
autocmd FileType smarty call FormatFileType(2, v:true, 'indent', 99, v:false)
2019-12-31 21:26:32 +00:00
augroup end
2019-09-26 22:00:03 +00:00
2023-04-26 21:51:32 +00:00
let g:markdown_fenced_languages = ['javascript', 'json', 'python', 'bash', 'yaml', 'shell=zsh', 'sql']
2019-09-26 22:00:03 +00:00
" }}}
2022-08-09 23:56:06 +00:00
" --- (e)xe(c)ute -----------------------------------------------------
" (i)nteractive
" (b)uild
" auto-(f)ormat
" (t)ests
" {{{
augroup file_specific_command_overrides
autocmd!
nnoremap <Leader>ec :call ExecuteCommand('%:p', 'split-pane-horizontal')<CR>
2022-08-09 23:56:06 +00:00
nnoremap <Leader>ei :echohl ErrorMsg <bar> echom 'ERROR: no interactive execute defined' <bar> echohl None<CR>
nnoremap <Leader>eb :echohl ErrorMsg <bar> echom 'ERROR: no build steps defined' <bar> echohl None<CR>
nnoremap <Leader>ef :echohl ErrorMsg <bar> echom 'ERROR: no auto-format steps defined' <bar> echohl None<CR>
nnoremap <Leader>et :echohl ErrorMsg <bar> echom 'ERROR: no test steps defined' <bar> echohl None<CR>
2022-08-09 23:56:06 +00:00
autocmd FileType tex nnoremap <Leader>ec :! scwrypts -n latex/open-pdf -- %:p<CR>
autocmd FileType tex nnoremap <Leader>eb :! scwrypts -n latex/build-pdf -- %:p<CR>
autocmd FileType tex nnoremap <Leader>ef :! scwrypts -n latex/cleanup -- %:p<CR>
autocmd FileType markdown nnoremap <Leader>ec :!xdg-open %:p<CR>
2021-08-23 22:36:56 +00:00
2022-08-09 23:56:06 +00:00
autocmd FileType go nnoremap <Leader>ec :!clear<CR><CR>q:?GoRun<CR><CR>
autocmd FileType go nnoremap <silent> <Leader>ef <Plug>(go-imports)
autocmd FileType go nnoremap <silent> gd <Plug>(go-def-tab)
autocmd FileType python nnoremap <Leader>ec :call ExecuteCommand('python %:p', 'split-pane-vertical')<CR>
autocmd FileType python nnoremap <Leader>ei :call ExecuteCommand('bpython -qi %:p', 'split-pane-vertical')<CR>
autocmd FileType yaml nnoremap <Leader>ec :call ExecuteScwrypt(
\ '-n --name helm/get-template --group scwrypts --type zsh'
\ , '--template-filename %:p', 'split-pane-vertical'
\ , 'yaml'
\)<CR>
autocmd FileType yaml nnoremap <Leader>ei :call ExecuteScwrypt(
\ '-n --name helm/get-template --group scwrypts --type zsh'
\ , '--raw --template-filename %:p', 'split-pane-vertical'
\ , 'yaml'
\)<CR>
autocmd FileType yaml nnoremap <Leader>eb :call ExecuteScwrypt(
\ '-n --name helm/update-dependencies --group scwrypts --type zsh'
\ , '--template-filename %:p', 'split-pane-vertical'
\ , 'yaml'
\)<CR>
2021-08-23 22:36:56 +00:00
augroup end
" }}}
" --- notes for meeeeee ----
" {{{
" need to adapt this for helm execution;
" should check for values.test.yaml or tests/default.yaml
" echom 'quicktest' | execute 'vertical terminal helm template directus . --debug --values values.yaml --values values.test.yaml --show-only %' | set syntax=yaml
" }}}
2022-08-09 23:56:06 +00:00
" --- organization overrides ------------------------------------------
" {{{
source $WRYNVIMPATH/override/rentdynamics.vim
source $WRYNVIMPATH/override/directus.vim
" }}}
"
"
syntax on