oeasy教您玩转vim - 33 - # 查找文本
文字区块
回忆上节课内容
括号间跳转
- 成对括号间跳转
% 不成对括号间跳转
[(跳转到上一个没配对的([)跳转到下一个没配对的)[{跳转到上一个没配对的{[}跳转到下一个没配对的}
- 成对括号间跳转
函数间跳转
]m下一个函数开头[m上一个函数结尾]M下一个函数开头[M上一个函数结尾
#if、#else、#endif没有配对的[#上一个没有配对的#if、#else]#下一个没有配对的#else、#endif
注释的头尾
[/、[*上一个注释/* .... */的头]*、]/下一个注释/* .... */的头
- 这次我想自定义跳转,就是查找某些东西
查找帮助
用无模式打开
tomsawyer.txtvi -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 - # 查找文本的更多相关文章
- oeasy教您玩转vim - 56 - # 字符可视化模式
可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...
- oeasy教您玩转vim - 57 - # 行可视化
可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...
- oeasy教您玩转vim - 53 - # 批量替换
查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...
- oeasy教您玩转linux010203显示logo
我们来回顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010108到底哪个which
到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?
- oeasy 教您玩转linux010101查看内核uname
linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...
- oeasy教您玩转linux010202软件包管理apt
顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010201持续输出yes
我们来回顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010107那啥在哪 whereis
回忆上次内容 上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置. 现在我们要制作这样一个列表:
- oeasy教您玩转python - 006 - # hello world
Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...
随机推荐
- .NET Aspire 正式发布:简化 .NET 云原生开发
.NET团队北京时间2024年5月22日已正式发布.NET Aspire ,在博客文章里做了详细的介绍:.NET Aspire 正式发布:简化 .NET 云原生开发 - .NET 博客 (micros ...
- 慢查询SQL优化
记一次慢查询的SQL优化 测试表结构 MariaDB [shoppings]> desc login_userinfo; +------------+-------------+------+- ...
- 用.NET代码生成JSON Schema 验证器
问题 对于验证复杂JSON数据是否合法的需求,通常的解决方式是标准JSON Schema,.Net下有对应的JSON Schema实现库.应用程序通常需要将标准JSON schema传入实现库,来做后 ...
- NOIP模拟89(多校22)
T1 谜之阶乘 解题思路 二分答案,发现 \(a-b\) 至多为 19,毕竟 \(20!\) 已经大于 \(10^{18}\) 了. 对于每一种可能的差值,每一次二分 \(b+1\) 直接枚举乘积进行 ...
- 8.15考试总结(NOIP模拟40)[送花·星空·零一串]
我只对现实世界绝望过,却未对自己绝望过! T1 送花 解题思路 线段树维护序列. 我们暴力枚举右端点,用线段树搞出当前右端点的最优的左端点的值. 假设当前扫到的右端点是 r ,颜色是 col. 这种颜 ...
- const与指针的组合
① const int *p; //指向一个整型常量的指针,p可变,p指向的对象不可变. ② int const *p; //同上. ③ int * const p; //p不可变,p指向的对象可变( ...
- 使用线程池实现为多个客户端提供Echo服务
import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; im ...
- kettle从入门到精通 第五十课 ETL之kettle 课程源文件分享
Kettle 是一款功能强大的开源 ETL 工具,被广泛应用于数据集成.数据转换和数据加载等领域.随着数据量和多样性的不断增加,使用 Kettle 进行数据处理已成为许多企业和数据工程师的首选.在过去 ...
- sshd服务部署
sshd服务部署 软件安装修改配置文件启动使用 1.搭建所有服务的套路 关闭防火墙和selinux(实验环境都先关闭掉) 配置yum源(公网源或者本地源) 软件安装和检查 了解并修改配置文件 启动服 ...
- vite+vue3+ts+elementPlus前端框架搭建 [三] router路由管理
路由包括动态路由.静态路由两种,本文中以静态路由的方式实现了动态路由. 1. 创建Router 在Src目录下创建router文件夹,并在router文件夹下创建index.ts文件. index.t ...