You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
118 lines
5.8 KiB
118 lines
5.8 KiB
au BufRead,BufNewFile *.gv setlocal filetype=graphviz |
|
au BufRead,BufNewFile *.lisp,*.scm setlocal lisp |
|
au BufRead,BufNewFile *.mutt setlocal filetype=muttrc |
|
au BufRead,BufNewFile *.note setlocal filetype=note |
|
au BufRead,BufNewFile *.pro setlocal filetype=prolog |
|
au BufRead,BufNewFile *.r setlocal filetype=rebol |
|
au BufRead,BufNewFile *.rename setlocal filetype=rename |
|
au BufRead,BufNewFile *.rkt setlocal filetype=racket |
|
au BufRead,BufNewFile *.rsc setlocal filetype=rsc |
|
au BufRead,BufNewFile *.sls,Saltfile setlocal filetype=sls |
|
au BufRead,BufNewFile *.test setlocal filetype=tcl |
|
au BufRead,BufNewFile *.tex setlocal filetype=tex |
|
au BufRead,BufNewFile *.tf,*.tfvars setlocal filetype=terraform |
|
au BufRead,BufNewFile *.tfstate setlocal filetype=json |
|
au BufRead,BufNewFile *.timelog setlocal filetype=timelog |
|
au BufRead,BufNewFile *.txt setlocal filetype=txt |
|
au BufRead,BufNewFile *.txt setlocal textwidth=80 |
|
au BufRead,BufNewFile *.vim setlocal filetype=vim |
|
au BufRead,BufNewFile *.wiki setlocal filetype=vimwiki |
|
au BufRead,BufNewFile *.xpt.vim setlocal filetype=xpt.vim |
|
au BufRead,BufNewFile *.xpt.vim setlocal filetype=xpt.vim |
|
au BufRead,BufNewFile */templates/*.yaml,*/templates/*.tpl setlocal filetype=helm |
|
au BufRead,BufNewFile *rtorrent.rc* setlocal filetype=rtorrent |
|
au BufRead,BufNewFile Containerfile setlocal filetype=dockerfile |
|
au BufRead,BufNewFile Vagrantfile setlocal filetype=ruby |
|
au BufRead,BufNewFile bash-fc* setlocal filetype=sh |
|
au BufRead,BufNewFile rfc* setlocal filetype=rfc |
|
|
|
au BufWinEnter,BufRead,BufNewFile *.wiki setlocal nocursorline |
|
|
|
au BufReadPost *.doc setlocal filetype=txt |
|
au BufReadPost *.doc %!antiword "%" |
|
au BufReadPre *.doc setlocal hlsearch! |
|
au BufReadPre *.doc setlocal ro |
|
|
|
au BufReadPost *.docx %!docx2txt "%" - |
|
au BufReadPost *.docx setlocal filetype=txt |
|
au BufReadPre *.docx setlocal hlsearch! |
|
au BufReadPre *.docx setlocal ro |
|
|
|
au BufReadPost *.odt setlocal filetype=txt |
|
au BufReadPost *.odt %!odt2txt "%" |
|
au BufReadPre *.odt setlocal hlsearch! |
|
au BufReadPre *.odt setlocal ro |
|
|
|
au BufReadPost *.pdf setlocal filetype=txt |
|
au BufReadPost *.pdf %!pdftotext -nopgbrk "%" - | fmt -csw78 |
|
au BufReadPre *.pdf setlocal hlsearch! |
|
au BufReadPre *.pdf setlocal ro |
|
|
|
au BufReadPost *.rtf setlocal filetype=txt |
|
au BufReadPost *.rtf %!catdoc "%" |
|
au BufReadPre *.rtf setlocal hlsearch! |
|
au BufReadPre *.rtf setlocal ro |
|
|
|
" Liquid |
|
au BufNewFile,BufRead *.liquid setlocal filetype=liquid |
|
au BufNewFile,BufRead */_layouts/*.html,*/_includes/*.html setlocal filetype=liquid |
|
au BufNewFile,BufRead *.html,*.xml,*.textile |
|
\ if getline(1) == '---' | setlocal filetype=liquid | endif |
|
au BufNewFile,BufRead *.markdown,*.mkd,*.mkdn,*.md |
|
\ if getline(1) == '---' | |
|
\ let b:liquid_subtype = 'markdown' | |
|
\ setlocal filetype=liquid | |
|
\ endif |
|
|
|
" Set subtype for Shopify alternate templates |
|
au BufNewFile,BufRead */templates/**.liquid,*/layout/**.liquid,*/snippets/**.liquid |
|
\ let b:liquid_subtype = 'html' | |
|
\ setlocal filetype=liquid | |
|
|
|
" Открывать справку в вертикальном окне |
|
au! BufEnter * if &ft ==# 'help' | wincmd L | endif |
|
|
|
" Ansible |
|
function! s:isAnsible() |
|
let filepath = expand("%:p") |
|
let filename = expand("%:t") |
|
if filepath =~ '\v/(defaults|tasks|roles|handlers|meta|vars)/.*\.ya?ml$' | return 1 | en |
|
if filepath =~ '\v/(group|host)_vars/' | return 1 | en |
|
if filename =~ '\v(playbook|site|main|local)\.ya?ml$' | return 1 | en |
|
|
|
let shebang = getline(1) |
|
if shebang =~# '^#!.*/bin/env\s\+ansible-playbook\>' | return 1 | en |
|
if shebang =~# '^#!.*/bin/ansible-playbook\>' | return 1 | en |
|
|
|
return 0 |
|
endfunction |
|
|
|
function! s:setupTemplate() |
|
if exists("g:ansible_template_syntaxes") |
|
let filepath = expand("%:p") |
|
for syntax_name in items(g:ansible_template_syntaxes) |
|
let s:syntax_string = '\v/'.syntax_name[0] |
|
if filepath =~ s:syntax_string |
|
execute 'setlocal filetype='.syntax_name[1].'.jinja' |
|
return |
|
endif |
|
endfor |
|
endif |
|
setlocal filetype=jinja |
|
endfunction |
|
|
|
augroup ansible_vim_ftyaml_ansible |
|
au! |
|
au BufNewFile,BufRead * if s:isAnsible() | setlocal filetype=yaml.ansible | en |
|
augroup END |
|
|
|
augroup ansible_vim_ftjinja2 |
|
au! |
|
au BufNewFile,BufRead *.j2 call s:setupTemplate() |
|
augroup END |
|
|
|
augroup ansible_vim_fthosts |
|
au! |
|
au BufNewFile,BufRead *inventory* setlocal filetype=ansible_hosts |
|
augroup END |
|
|
|
|