我通常会同时打开code.h
和code.cpp
并在窗口中垂直并排显示它们。
目前我使用:
$ vim -O code.{h,cpp}
如果vim可以在打开文件之前运行一些命令(操作文件名), 我可以简单地使用:
$ vim code
我怎样才能写出这种vim-script
?
修改:
答案 0 :(得分:2)
鉴于此:
和:help autocmd-event
,你应该能够在读取缓冲区之前使用BufReadPre
事件做某事:
BufReadPre starting to edit a new buffer, before reading the file
答案 1 :(得分:1)
在这种情况下,可能的解决方案是在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