当前位置: 首页 > 工具软件 > vim-matlab > 使用案例 >

matlab怎么使用vim,vim - 在vim中使用Matlab进行自动命令? - 堆栈内存溢出

松桐
2023-12-01

我不能告诉你如何确定应该阅读lang_perl或lang_ruby 。 但是看一下autocommand文档会给gzip文件带来一个例子( :he gzip-example ):

augroup gzip

autocmd!

autocmd BufReadPre,FileReadPre *.gz set bin

autocmd BufReadPost,FileReadPost *.gz '[,']!gunzip

autocmd BufReadPost,FileReadPost *.gz set nobin

autocmd BufReadPost,FileReadPost *.gz execute ":doautocmd BufReadPost " . expand("%:r")

autocmd BufWritePost,FileWritePost *.gz !mv :r

autocmd BufWritePost,FileWritePost *.gz !gzip :r

autocmd FileAppendPre *.gz !gunzip

autocmd FileAppendPre *.gz !mv :r

autocmd FileAppendPost *.gz !mv :r

autocmd FileAppendPost *.gz !gzip :r

augroup END

看见? 指定的每个autocmd都带有一个Event( BufReadPre , FileReadPre )和它将被执行的扩展( *.gz )。 这是对我迄今为止的意见的支持,你可以使用任何名称为你的augroup但必须指定一个扩展, augroup应负责,以使其正常工作。

另一个引用:he autocmd-groups :

通常,在自动执行自动命令时,Vim会对所有组使用自动命令。 只有在使用“:doautocmd”或“:doautoall”执行自动命令时,或者在定义或删除自动命令时,该组才有用。

因此,为了为matlab文件制作一个augroup ,这个应该可以解决这个问题:

augroup lang_matlab

autocmd!

autocmd BufRead *.m set ts=4 sw=4 expandtab

augroup END

并确保这些设置不会被任何无条件的augroup覆盖(即修改其他的augroup定义)。

 类似资料: