2014-01-17 65 views
0

在我的_vimrc文件中有两行代码。如何使命令获得正确的文件路径?

: cd c:\workspace # i want gvim run in my c:\workspace 
nnoremap <F4> :exe ':silent !"c:\Program Files\Mozilla Firefox\firefox.exe" %'<CR> 

有在c:\test\mytest.html一个文件,如果我移动C:\测试\ mytest.html到C:\工作区中,使文件是c:\workspace\mytest.html,当我与GVIM打开它,在命令模式中,inoput F4,它可以调用Firefox来正确打开mytest.html。

如果我用gvim打开文件c:\test\mytest.html并输入F4,它可以调用firefox但无法正常打开文件,gvim无法获得正确的文件路径,我该如何修改map命令才能完成任务?

nnoremap <F4> :exe ':silent !"c:\Program Files\Mozilla Firefox\firefox.exe" %'<CR> 

回答

2

尝试:

nnoremap <F4> :exe ':silent !"c:\Program Files\Mozilla Firefox\firefox.exe" %:p'<CR> 

,做阅读:help filename-modifiers

+1

并阅读':help shellescape()'你想知道为什么这不适用于包含特殊字符的文件。 –

+0

是否有构建':exe'的原因:foo''而不是简单的':foo '? – benjifisher

相关问题