总有人问我 Vim 中能不能查找,当然能!而且是超级强的查找!这篇文章来详细介绍 Vim 中查找相关的设置和使用方法。包括查找与替换、查找光标所在词、高亮前景/背景色、切换高亮状态、大小写敏感查找等。 查找在normal模式下按下 Vim查找支持正则表达式,例如
大小写敏感查找在查找模式中加入 /foo\c 将会查找所有的 大小写敏感配置Vim 默认采用大小写敏感的查找,为了方便我们常常将其配置为大小写不敏感: ' 设置默认进行大小写不敏感查找set ignorecase' 如果有一个大写字母,则切换到大小写敏感查找set smartcase
查找当前单词在normal模式下按下 按下 查找与替换
:{作用范围}s/{目标}/{替换}/{替换标志} 例如 作用范围作用范围分为当前行、全文、选区等等。 当前行: :s/foo/bar/g 全文: :%s/foo/bar/g 选区,在Visual模式下选择区域后输入 :'<,'>s/foo/bar/g 2-11行: :5,12s/foo/bar/g 当前行 :.,+2s/foo/bar/g 替换标志上文中命令结尾的 空替换标志表示只替换从光标位置开始,目标的第一次出现: :%s/foo/bar
:%s/foo/bar/i# 等效于模式中的\c(不敏感)或\C(敏感):%s/foo\c/bar
:%s/foo/bar/gc 回车后Vim会将光标移动到每一次 replace with bar (y/n/a/q/l/^E/^Y)? 按下 高亮设置高亮颜色设置如果你像我一样觉得高亮的颜色不太舒服,也可以进行设置: highlight Search ctermbg=grey ctermfg=black
上述配置指定Search结果的前景色(foreground)为黑色,背景色(background)为灰色。更多的CTERM颜色可以查阅:http://vim./wiki/Xterm256_color_names_for_console_Vim 禁用/启用高亮有木有觉得每次查找替换后Vim仍然高亮着搜索结果?可以手动让它停止高亮,在normal模式下输入: :nohighlight' 等效于:nohl 其实上述命令禁用了所有高亮,正确的命令是 ' 当光标一段时间保持不动了,就禁用高亮autocmd cursorhold * set nohlsearch' 当输入查找命令时,再启用高亮noremap n :set hlsearch<cr>nnoremap N :set hlsearch<cr>Nnoremap / :set hlsearch
参考阅读
|
|
来自: yusihai719 > 《vim》