2011-08-08 85 views
0

确定Vim的打开文件我有一条线在我的职务通过外部脚本

silent! exec "r!sh myScript '" . a.1 "' 

这种打印myScript的输出到当前缓冲区之一。

myScript输出一个文件名。我不想将文件打印到缓冲区,而是想打开该文件。

我试过的东西

silent! exec "open!sh myScript '" . a.1 "' 
silent! exec "new!sh myScript '" . a.1 "' 
let l:file = silent! exec "sh myScript '" . a.1 "' 
    new l:file 

但没有似乎工作。

我错过了一些明显的东西吗?

回答

2

我建议使用该系统()函数以这种方式:

let path=system("myScript ... ") 
let path=substitute(path,"\n","","g") 
exec "edit" path 

注意,中间substitute命令可能是必要的,以除去错误换行符。如果没有必要,请不要担心。当然,您可以使用splitvsplit等来代替edit以满足您的需求。

+0

非常感谢,有效! – rvabdn