2013-03-04 55 views
1

我在.vimrc中编写了一个小函数来将字符串转换为文件路径。将UDF结果传递给VIM中的tabe

function FindPath(param) 
    " some logic here 
    return goodPath 
endfunction 

这很多工作。我想要做的是绑定一个键,以FindPath和当前的cWORD的结果打开一个新的选项卡。我似乎无法弄清楚如何让结果传递给tabe。要么直接对待它,要么我会在整个地方出现语法错误。

nnoremap <leader>c :tabe FindClass(<cWORD>) 

基本上,我想在伪代码意义上,我只是无法获得保存我的生活的语法权利,这有点难以搜索。

任何想法?

回答

3

我不使用标签这么多,我猜你是在execexpand()部分卡住了。你可以试试这个行:

:exec 'tabe '.FindPath(expand("<cWORD>")) 

如果这对你的作品,你可以在你的方式创建地图,如:

nnoremap <leader>c :exec 'tabe '.FindPath(expand("<cWORD>"))<cr> 
+0

我的英雄,谢谢!我知道扩展和执行,但不能提出正确的操作顺序。再次感谢你! – JamesB41 2013-03-04 23:28:16

+0

很高兴帮助... – Kent 2013-03-05 00:25:40