我在某个目录中运行vim .
。在vim内部,我移动到另一个目录。在那里我运行:grep
命令,从我运行vim .
的第一个目录中搜索。如何从目前的路径将vim配置为:grep
?
答案 0 :(得分:14)
我也有<leader>cd
到%:p:h
映射,这很好。
但是根据您的需要,这条线可能更好
:grep [options] 'pattern' %:p:h/*
这将从当前打开文件的路径执行grep
,并保持您当前的当前目录(pwd
)不受影响。
答案 1 :(得分:4)
您可以通过其简短形式%:h
插入当前缓冲区的目录。请参阅:help cmdline-special
。
:grep foo %:h/*
可替换地,
:set autochdir
会自动将当前目录更改为当前缓冲区的目录(因此您可以在每个.
中使用:grep
)。这是一个不同的范例,但我发现这非常有用。
答案 2 :(得分:0)
更改当前工作目录。我在.vimrc
map ,cd :cd %:p:h<CR>
答案 3 :(得分:-1)
您使用cmd
在当前位置列表中进行grep:lv[imgrep][!] /{pattern}/[g][j] {file} ...