文字区块

回忆上节课内容

  • 括号间跳转

    • 成对括号间跳转 %
    • 不成对括号间跳转

      • [( 跳转到上一个没配对的 (
      • [) 跳转到下一个没配对的 )
      • [{ 跳转到上一个没配对的 {
      • [} 跳转到下一个没配对的 }
  • 函数间跳转

    • ]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 - # 查找文本的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  3. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  4. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  5. oeasy教您玩转linux010108到底哪个which

    到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?

  6. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  7. oeasy教您玩转linux010202软件包管理apt

    顾一下 上一部分我们都讲了什么?

  8. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

  9. oeasy教您玩转linux010107那啥在哪 whereis

    回忆上次内容 上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置. 现在我们要制作这样一个列表:

  10. oeasy教您玩转python - 006 - # hello world

    ​ Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...

随机推荐

  1. ChatGPT-4o模型功能介绍

    1.概述 OpenAI 持续突破人工智能的边界,推出了其最新模型 ChatGPT-4o,作为 ChatGPT-4 的继承者,该模型有望带来显著的提升和创新功能.本文将深入解析 ChatGPT-4 与 ...

  2. Pyomo基础学习笔记:建模组成要素的编写方法

    1.Pyomo 简介 pyomo文档[数学建模]优化模型建模语言 Pyomo 入门教程 - 知乎 (zhihu.com) Pyomo 是基于 Python 的开源软件包,主要功能是建立数学规划模型,包 ...

  3. 关于《Java并发编程之线程池十八问》的补充内容

    一.写在开头 在上一篇文章我们写<Java并发编程之线程池十八问>的时候,鉴于当时的篇幅已经过长,很多内容就没有扩展了,在这篇文章里对一些关键知识点进行对比补充. 二.Runnable v ...

  4. MQTT服务器连接不上的问题

    问题描述 环境:阿里云服务器Ubuntu 22.04.3 LTS,安装mosquitto后,在虚拟机端订阅消息出现报错(以前用阿里云Ubuntu20.04 LTS的服务器装上就能用),以下服务器ip是 ...

  5. 记第一次用python写界面

    花了两三个小时学了Tkinter,做了一个将数据绘制成图的小工具. 1. 获取路径下的所有文件or获取路径下指定名称的文件 1.1  打开文件 //1. 用来放文本框中的文字filename = St ...

  6. react组件传值(props[只读属性]) 函数组件

    组件间传值,在React中是通过只读属性 props 来完成数据传递的. props:接受任意的入参,并返回用于描述页面展示内容的 React 元素. function Cmp1(props) { r ...

  7. 实例讲解多处理器下的计算机启动(xv6的启动过程)

    启动 启动方面的文章之前也写过,那是我的第一篇文章,本文在前文的基础之上完善,然后增加了多处理器启动的情况,废话不多说直接来看. 启动可以分为两种,一种为冷启动,是指计算机在关机状态下按 POWER ...

  8. LeetCode 40. Combination Sum II 组合总和 II (C++/Java)

    题目: Given a collection of candidate numbers (candidates) and a target number (target), find all uniq ...

  9. MYSQL 连接数据库过程中发生错误,检查服务器是否正常连接字符串是否正确,错误信息:未将对象引用设置到对象的实例。

    一: 中文提示 : 连接数据库过程中发生错误,检查服务器是否正常连接字符串是否正确,错误信息:未将对象引用设置到对象的实例.DbType="MySql";ConfigId=&quo ...

  10. FFmpeg开发笔记全目录(FFmpeg开发实战详解,含直播系统的搭建过程)

    ​记录下FFmpeg的学习笔记目录,完整的FFmpeg开发实战内容详见<FFmpeg开发实战:从零基础到短视频上线>一书. 下面是补充的FFmpeg开发笔记内容目录,主要是对<FFm ...