[英]Is there a hook before vim open a filename?
我通常同时打开code.h
和code.cpp
。
并在窗口中垂直并排显示。
目前我使用:
$ vim -O code.{h,cpp}
如果vim可以在打开文件之前运行一些命令(操作文件名),
我可以简单地使用:
$ vim code
我怎么写这种vim-script
?
编辑 :
鉴于这种:
和:help autocmd-event
,你应该能够在读取缓冲区之前使用BufReadPre
事件做某事:
BufReadPre starting to edit a new buffer, before reading the file
在这种情况下,可能的解决方案是在Vim启动时修改参数列表(请参阅:help arglist
)。 可以使用VimEnter
自动命令来完成此操作,该命令将遍历参数列表,并将不对应于现有文件的项替换为带有某些后缀的项,如下所示。
autocmd VimEnter * call AddArgsSuffixes(['.h', '.cpp'])
function! AddArgsSuffixes(sfx)
let args = []
for f in argv()
if filereadable(f)
call add(args, f)
else
for s in a:sfx
call add(args, f . s)
endfor
endif
endfor
exe 'args' join(map(args, 'fnameescape(v:val)'))
endfunction
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.