超详细的vimtutor学习笔记(中)

简介: 第一讲 编辑1.1 移动光标使用 h、j、k、l 键可以使光标实现左、下、上、右的移动。也可以使用 ↑ ↓ ← → 进行上下左右的移动。

第四讲 查找替换


4.1 定位及文件状态

CTRL-G:显示当前编辑文件中当前光标所在位置,以及文件状态信息。

G:跳到文件最后一行。

gg:跳到文件第一行。

3G:跳到文件的第三行。

网络异常,图片无法展示
|


4.2 搜索类命令

正常模式下,

/字符串 —— 按回车后可以搜索相应字符串。匹配到的字符串会高亮显示。

n —— 向下匹配。

N —— 向上匹配。

网络异常,图片无法展示
|


搜索到的字符串会高亮显示:

网络异常,图片无法展示
|


4.3 配对括号的查找

将光标放在任何一个 (、[ 或 { 处,之后按 % 可以查找到配对的括号。

网络异常,图片无法展示
|


4.4 替换命令

操作格式:

:[range]  s/{pattern}/{string}/[flags]
复制代码


  • range 表示范围,比如:10,20 表示10-20行,%表示全部。
:1,10  s/AB/CD/g    //替换1-10行
:%  s/AB/CD/g       //替换全部
复制代码


  • pattern 是要替换的模式,string是替换后的文本
  • flags替换标志位
  • g (global)表示全局范围内执行。不加g则只替换每行第一个匹配项。
  • i 忽略大小写。
  • c (confirm)表示确认,可以确认或者拒绝修改。
  • n (number)报告匹配到的次数不做替换。

网络异常,图片无法展示
|


替换后如图:

网络异常,图片无法展示
|


4.5 第四讲小结

  1. CTRL-G 用于显示当前光标所在位置和文件状态信息。
    G 用于将光标跳转至文件最后一行。
    先敲入一个行号然后输入大写 G 则是将光标移动至该行号代表的行。
    gg 用于将光标跳转至文件第一行。
  2. 输入 / 然后紧随一个字符串是在当前所编辑的文档中正向查找该字符串。
    输入 ? 然后紧随一个字符串则是在当前所编辑的文档中反向查找该字符串。
    完成一次查找之后按 n 键是重复上一次的命令,可在同一方向上查找下一个匹配字符串所在;或者按大写 N 向相反方向查找下一匹配字符串所在。
    CTRL-O 带您跳转回较旧的位置,CTRL-I 则带您到较新的位置。
  3. 如果光标当前位置是括号(、)、[、]、{、},按 % 会将光标移动到配对的括号上。
  4. 在一行内替换头一个字符串 old 为新的字符串 new,输入 :s/old/new
    在一行内替换所有的字符串 old 为新的字符串 new,输入 :s/old/new/g
    在两行内替换所有的字符串 old 为新的字符串 new,请输入 :#,#s/old/new/g
    在文件内替换所有的字符串 old 为新的字符串 new,请输入 :%s/old/new/g
    进行全文替换时询问用户确认每个替换需添加 c 标志 :%s/old/new/gc

网络异常,图片无法展示
|


第五讲


5.1 在 VIM 内执行外部命令的方法

输入 :! command,可以执行该外部命令。

网络异常,图片无法展示
|


输入:!ls,按回车后会列出当前目录内容:

网络异常,图片无法展示
|


输入:!hostname,可以查看主机名:

网络异常,图片无法展示
|


输入:!date,可以查看当前时间:

网络异常,图片无法展示
|


5.2 关于保存文件的更多信息

输入 :w FILENAME,可以将对文件的改动保存到另一文件中。

网络异常,图片无法展示
|


输入:!ls,可以看到目录中多了一个TEST的文件。

网络异常,图片无法展示
|


输入:!rm TEST,会删除TEST文件。

网络异常,图片无法展示
|


5.3 一个具有选择性的保存命令

要保存文件的部分内容,请输入 v motion :w FILENAME。

操作步骤:

  • 1)按 v 键进入可视化模式
  • 2)使用光标选中部分内容
  • 3):'<,'>w 文件名,将选中的内容保存到另一文件中。
    :'<,'>d,可以删除选中的内容。

网络异常,图片无法展示
|


5.4 提取和合并文件

要向当前文件中插入另外的文件的内容,请输入 :r FILENAME。

网络异常,图片无法展示
|


插入结果:

网络异常,图片无法展示
|


5.5 第五讲小结

  1. :!command 用于执行一个外部命令 command。
    示例:
    :!ls - 用于显示当前目录的内容。
    :!rm FILENAME - 用于删除名为 FILENAME 的文件。
  2. :w FILENAME 可将当前 VIM 中正在编辑的文件保存到名为 FILENAME 的文 件中。
  3. v motion :w FILENAME 可将当前编辑文件中可视模式下选中的内容保存到文件 FILENAME 中。
  4. :r FILENAME 可提取磁盘文件 FILENAME 并将其插入到当前文件的光标位置 后面。
  5. :r !dir 可以读取 dir 命令的输出并将其放置到当前文件的光标位置后面。

网络异常,图片无法展示
|

相关文章
|
机器学习/深度学习 人工智能 调度
学习笔记6
人工智能课程
76 0
|
Java 开发者
Loger 的使用|学习笔记
快速学习 Loger 的使用
431 0
Loger 的使用|学习笔记
|
自然语言处理 流计算 开发者
termQuery | 学习笔记
快速学习 termQuery
|
人工智能 开发者
特征空间与应用 | 学习笔记
快速学习特征空间与应用
特征空间与应用 | 学习笔记
|
算法 计算机视觉
OpenCV学习笔记--SIFT,SUFT
图像处理两大特征提取算法
160 0
|
负载均衡 开发者 索引
replicas | 学习笔记
快速学习 replicas
replicas | 学习笔记
|
缓存 Dubbo 应用服务中间件
本地存根|学习笔记
快速学习本地存根
本地存根|学习笔记
|
存储 Java 开发者
BinaryTree|学习笔记
快速学习BinaryTree
BinaryTree|学习笔记
|
存储 自然语言处理 算法
课程计划|学习笔记
快速学习课程计划