如何使用单个命令更改 Vim 行为.vimrc
以优雅的方式文件(没有 ftplugin)?
我的意思是...如果我对 C/C++ 文件运行许多推荐,例如:
set nu
set cin
set ai
set mouse=a
color elflord
以及对 AsciiDoc 文件的另一堆赞扬,例如:
set syntax=asciidoc
set nocin
set spell spl=en
更不用说Python、LaTeX等了……
已提出解决方案https://stackoverflow.com/a/159065/544721用于推杆autocommand
在每个自定义命令之前。
有没有一种好的方法将它们分组autocommand
不使用ftplugin
- 为了保持一切单一.vimrc
文件(更适合在许多机器上移动等)?
相当于if
带括号的语句{}
?
您可以使用以下内容:
if has("autocmd")
augroup LISP
au!
au BufReadPost *.cl :set lisp
au BufReadPost *.cl :set showmatch
au BufReadPost *.cl :set cpoptions-=m
au BufReadPost *.cl :set autoindent
augroup END
augroup C
au!
autocmd BufNewFile,BufRead *.cpp set formatprg=c:\\AStyle\\bin\\AStyle.exe\ -A4Sm0pHUk3s4
autocmd BufNewFile,BufRead *.c set formatprg=c:\\AStyle\\bin\\AStyle.exe\ -A4Sm0pHUk3s4
autocmd BufNewFile,BufRead *.h set formatprg=c:\\AStyle\\bin\\AStyle.exe\ -A4Sm0pHUk3s4
autocmd BufNewFile,BufRead *.cpp set tw=80
autocmd BufNewFile,BufRead *.c set tw=80
autocmd BufNewFile,BufRead *.h set tw=80
augroup END
endif
这会根据打开的文件类型(在 autocmd 部分中指定)创建命令分组。您仍然需要在每个命令之前指定 autocmd 或 au,但它们很好地分组。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)