如何更改当前缓冲路径中的部分字符串

时间:2011-03-09 07:16:06

标签: vim

我在_vimrc中使用以下行在windows

中的firefox中启动当前缓冲区
abbrev ff :! start firefox %:p<cr>

有两个问题:

1)当我执行:ff并且路径中有空格时,缓冲区将在单独的选项卡中启动。

2)此外,我想在firefox中打开时将C:/wamp/www中的%p替换为http://localhost/,这样我在使用本地服务器时无需手动更改它

如何实现这一目标?

更新: 溶液

我删除了shellescape(),它在Windows中完美运行。我现在在vimrc中使用以下代码。

abbrev ff :exec '! start firefox 'substitute(expand('%:p'), '^C:/wamp/www/','http://localhost/','')<CR>

感谢El Isra的代码。

1 个答案:

答案 0 :(得分:1)

试试这个:

abbrev ff :exec '! start firefox '.shellescape(substitute(expand('%:p'), '^C:/wamp/www/','http://localhost/',''))<CR>