欢迎光临散文网 会员登陆 & 注册

oeasy教您玩转vim - 33 - # 查找文本

2021-08-31 07:12 作者:oeasy  | 我要投稿

文字区块

回忆上节课内容🤔

  • 括号间跳转

    • [[ 跳转到本块开头

    • ]]  跳转到本块结尾

    • [{ 跳转到上一个没配对的 {

    • ]} 跳转到下一个没配对的 }

    • 成对括号间跳转 %

  • 函数间跳转

    • ]m 下一个函数开头

    • [m 上一个函数开头

    • ]M 下一个函数结尾

    • [M 上一个函数结尾

  • #if#else#endif 没有配对的

    • [# 上一个没有配对的 #if#else

    • ]# 下一个没有配对的 #else#endif

  • 注释的头尾

    • [/[*上一个注释/*   .... */ 的头

    • ]*]/下一个注释/*   .... */ 的头

  • 这次我想自定义跳转,就是查找某些东西

查找帮助

  • 用无模式打开 tomsawyer.txt

    • vi -u NONE tomsawyer.txt

  • 开启行号 :se nu

  • 按下/

    • 会在左下角显示

    • 就像 : 等待输入命令一样

    • 输入待搜索字符串

    • /TOM 会从光标位置向后查找 TOM

    • 然后光标跳转到 TOM 的位置

  • 可以 h / 查阅手册

设置高亮

  • 设置高亮开关

    • :set hlsearch

    • 简写为 :set hls

    • 可以看到查找的单词已经高亮显示出来

  • 设置高亮色

    • :hi Search ctermbg=red ctermfg=black 注意大小写

    • /TOM 再次搜索 TOM

    • 搜索结果会高亮显示

  • 可以使用 :h 'hls' 查找搜索高亮手册

取消高亮

  • 如果你看到高亮显示太乱

    • 你可以反过来设置一下

    • :set nohlsearch 把搜索高亮的开关关掉

    • 当然下次你要想显示的话

    • 就需要再次打开开关 :set hls

  • 如果你只想要眼下这把关了高亮

  • 下次搜索的时候还是高亮的话

    • :noh[lsearch]

  • 注意这是执行一个命令,而不是设置一个开关

正向反向

  • 遍历匹配

    • n下一个匹配项

    • N上一个匹配项

    • n、N可使用 count 翻倍

  • :h n 查阅相关手册

  • 一路n

    • 可以显示查阅到文档结尾

    • 如果想要重头查询的话

    • 需要设置 :set wrapscan

    • 这样就可以重头开始再查一次了

    • w[rap]s[can] 可以简写为 ws

    • 关掉开关用 :set now[rap]s[can] 可以简写为 :set nows

反向查询

  • 使用?可以反向查询单词

    • 比如 ?TOM 就可以从后往前查询 TOM

  • 遍历匹配

    • 因为负负得正?🤪

    • n保持方向,从下往上查询下一个

    • N改变方向,从上往下查询下一个

    • 如果用 ?TOM 配合N就是往前查找

    • 到头了 wrapscan 让他可以从头再来

回顾行内搜索

  • 总结行内搜索规律

    • f正向,F反向

    • t正向,T反向

    • ;保持方向,,改变方向

  • [count] 可翻倍

总结

  • 这次是搜索

    • /正向,?反向

    • n保持方向,N改变方向

    • hls 让搜索结果高亮

    • noh 取消本次高亮

    • wrapscan 可以从头搜索

  • 查找还有什么好玩的呢?

  • 下次再说 *

[Github地址] (https://github.com/overmind1980/vimtutorial)
[Gitee地址] (https://gitee.com/overmind1980/vimtutorial)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)


oeasy教您玩转vim - 33 - # 查找文本的评论 (共 条)

分享到微博请遵守国家法律