繁体   English   中英

Windows中的GVIM vimgrep

[英]GVIM vimgrep in windows

我正在尝试在Windows上GVim中的所有文件中复制Notepad ++。 我为vimgrep找到了以下脚本,该脚本似乎在目录中的光标下找到了单词

map <F4> :execute "vimgrep /" . expand("<cword>") . "/j /**/*.c " <Bar> cw<CR>

我将其修改为始终在项目的根目录中进行搜索。 但这是行不通的。 该项目在“ c:\\ lion”下

map < F4> :execute "vimgrep /" . expand("<cword>") . "/j {c:\lion\}/**/*.c " <Bar> cw<CR>

显示以下错误。

"{c:" Illegal file name
Cannot open file "{c:"

删除{...} ,然后像在命令行上一样按原样插入路径(映射只不过是记录的宏)。 使用正斜杠会更容易; 这些也可以在Windows上使用。

:map <F4> :execute "vimgrep /" . expand("<cword>") . "/j C:/lion/**/*.c " <Bar> cw<CR>

也许您对:execute感到困惑。 还有另一种方法(使用c_CTRL-R_CTRL-W )来插入当前单词,可以避免这种情况:

:map <F4> :vimgrep /<C-r><C-w>/j C:/lion/**/*.c <Bar> cw<CR>

另外, 您应该使用:noremap ; 它使映射不受重新映射和递归的影响。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM