VIM可以用不同的文件扩展名自动解压缩gzip文件吗?
当我打开文件时,Vim会自动展开VIM可以用不同的文件扩展名自动解压缩gzip文件吗?,vim,gzip,Vim,Gzip,当我打开文件时,Vim会自动展开.gz文件,这很好。但是,它不会以同样的方式重新认识.GZ(大写)。不幸的是,由于各种原因,我无法更改正在使用的文件的文件扩展名。是否有一种真正简单的方法可以向VIM注册.GZ与.GZ文件相同?将其放入您的.vimrc中: augroup gzip au BufReadPre *.GZ setlocal bin au BufRead *.GZ call gzip#read("gzip -dn") au BufWritePost *
.gz
文件,这很好。但是,它不会以同样的方式重新认识.GZ
(大写)。不幸的是,由于各种原因,我无法更改正在使用的文件的文件扩展名。是否有一种真正简单的方法可以向VIM注册.GZ
与.GZ
文件相同?将其放入您的.vimrc中:
augroup gzip
au BufReadPre *.GZ setlocal bin
au BufRead *.GZ call gzip#read("gzip -dn")
au BufWritePost *.GZ call gzip#write("gzip")
au FileAppendPost *.GZ call gzip#write("gzip")
au FileAppendPre *.GZ call gzip#appre("gzip -dn")
au FileReadPost *.GZ call gzip#read("gzip -dn")
au FileReadPre *.GZ setlocal bin
au FileWritePost *.GZ call gzip#write("gzip")
augroup END
如果您想知道已经为gz文件激活了哪些AutoCMD,您可以执行以下操作:
:redir @x
:au
:redir END
"xp
/\.gz
这表明与gzip相关的AutoCMD位于gzip组中。然后,:au gzip
给出了一个更紧凑的列表
参考:
:help :autocmd
:help :augroup
原始AutoCMD位于vim运行时的plugin/gzip.vim中。您可以通过
:verbose au gzip
看出这是关于augroup的好主意。不要忘记bin
选项,though@sehe:更新答案,包含完整的AutoCMD列表(适用于没有现有文件的新缓冲区,以及如何自己获取列表),只需稍加修改即可工作。我不得不更改组名gzip
。(我选择了gzip\u upper
,我猜这与现有的gzip
组相冲突?)。。。我已经使用VIM很长时间了,但从未深入研究过它的本质。我不知道从哪里开始。非常感谢!你们真快!这个问题困扰了我好几年了!