命令行:
:vim[grep] /pattern/[g][j] files ...
g 选项:
不加该选项时,当一行中有多个匹配项时,仅在 quickfix
中添加一行。添加该选项时,每个匹配都在 quickfix
列表中添加一项。
j 选项:
不加该选项,查找完毕,光标将跳转到第一个匹配处。添加该选项时,查找完毕,仅更新 quickfix
列表,光标不跳转。
files 参数举例:
%
表示在当前缓冲区文件中查找。
*.cpp
表示在当前目录中的 .cpp 文件中搜索。
**/*.cpp
表示在当前目录及子目录中 .cpp 文件中搜索。
**/*.cpp **/*.h
表示在当前目录及子目录中 .cpp、.h 文件中搜索。
当前目录
用 :pwd
命令查看当前目录。用 :cd
命名切换当前目录。
Quickfix 跳转
:cw
打开 quickfix
列表窗口
:ccl
关闭 quickfix
列表窗口
:cfirst, :cnext, :cprev, clast
跳转到 quickfix
列表的第一项、后一项、前一项及最后项的匹配处。
映射小技巧
用 F11
及 Shift-F11
在 quickfix
列表中向后、向前跳转。
:nnoremap <F11> :cnext<CR>
:nnoremap <S-F11> :cprev<CR>
lvim[grep] 与 vim[grep] 的区别
lvim 使用窗口的本地列表,vim 使用 quickfix 列表。
lvim 的窗口本地列表跳转命令为::lnext
、 :lprev
、 :lfirst
及 :llast
。