【Vim Masterclass 笔记05】第 4 章:Vim 的帮助系统与同步练习

news2025/1/5 20:57:45

文章目录

  • Section 4:The Vim Help System(Vim 帮助系统)
  • S04L14 Getting Help
    • 1 打开帮助系统
    • 2 退出帮助系统
    • 3 查看具体命令的帮助文档
    • 4 查看帮助文档中的主题
    • 5 帮助文档间的上翻、下翻
    • 6 关于 linewise
    • 7 查看光标所在术语名词的帮助文档
    • 8 关于退出命令的帮助
    • 9 帮助窗口与工作窗口的切换
    • 10 查看命令帮助页前的自动提示(补全)
  • L15 Exercise 04 - Getting Help
    • 1 训练目标
    • 2 操作指令
      • 2.1 打开文件 help.txt
      • 2.2 打开帮助系统
      • 2.3 退出帮助系统
      • 2.4 再次打开帮助系统
        • 2.4.1 用学过的命令浏览帮助文档
        • 2.4.2 练习在帮助文档间跳转
        • 2.4.3 练习使用 Ctrl-g 的等效命令
        • 2.4.4 回到之前编辑的文件
      • 2.5 亲自动手
      • 2.6 结束练习
    • S04L16 Exercise 04 - Getting Help - Walkthrough

写在前面
本篇为 Vim 大师课的第 4 章学习笔记,主要介绍 Vim 自带的强大帮助系统。为什么这么好用的文本编辑工具网上的科普文章并不多?因为它的帮助系统已经把 Vim 的方方面面介绍得很透彻了,更何况轻量简洁本就是 Unix 的一贯风格。但作为技术专栏,除了梳理这些知识点,更重要的是帮助自己快速上手 Vim 操作,因此我对每个核心知识点都补充了本地实操截图,并配上了完整翻译后的同步练习环节。希望后来者也可以少走一些弯路,至少不必被课程中的全英文描述吓退。

Section 4:The Vim Help System(Vim 帮助系统)

S04L14 Getting Help


本节介绍 Vim 的帮助系统的用法(演示文件:help.txt)。

1 打开帮助系统

命令模式下::help + Enter

Vim 帮助系统也是一个文本窗口,之前介绍的 HJKL 等命令均有效。

使用 Ctrl + G 可以查看当前帮助文件所在的绝对路径:

img1

2 退出帮助系统

命令模式下::q + Enter(与普通文件的退出一样)

3 查看具体命令的帮助文档

例如命令 dd,命令模式下输入::help dd + Enter 即可:

img2

文档说:Delete [count] lines [into register x] linewise.

方括号内,是选填项,可以暂时忽略,于是变为:Delete lines linewise. 即按行删除(一整行)内容。

registerlinewise 这里不展开,后续会介绍。

4 查看帮助文档中的主题

除了用 :help <command> 查看具体的命令,还可以在打开的帮助页查看不同的主题,例如上面的 count

img3

5 帮助文档间的上翻、下翻

返回上一个帮助页:按 Ctrl + O(即 Old,旧的主题)

返回下一个帮助页:按 Ctrl + I

OI 在键位上是挨着的,方便识记。

6 关于 linewise

使用 :help linewise 查看帮助页:

img4

可见 linewise 表示以 为单位进行操作,与之对应的是 characterwise,即以 字符 为单位进行操作。

7 查看光标所在术语名词的帮助文档

使用:Ctrl + ](右方括号)

img5

视频中光标停留的术语名词也叫 “主题”(subject)。

8 关于退出命令的帮助

键入::help :q + Enter

注意,这里必须是 :q,因为 q 是另一个命令,:q 才表示退出。

img6

可见,:q 的全称为 :quit,类似的还有 :help,可缩写为 :h

9 帮助窗口与工作窗口的切换

使用组合键:Ctrl + WW(即按两次 Ctrl-w

10 查看命令帮助页前的自动提示(补全)

使用组合键:Ctrl + D

例如,输入 :help :q 后,按下 Ctrl + D,将出现下列以 :q 开头的候选命令列表:

img7

此时可以用 TabShift + Tab 遍历弹出的候选命令。

若再输入 :qu 并按 Ctrl + DVim重新列出:qu 开头的候选命令列表:

img8

视频中的当前候选命令呈高亮显示,是因为配置了一个叫 wildmenu 的选项,实测时本地并未启用,可通过 :set wildmenu 打开,于是候选命令也有了高亮显示:

img9

但该配置关闭电脑后又会还原。关于 Vim 配置如何永久生效,后续会详述,这里略过。


L15 Exercise 04 - Getting Help

1 训练目标

熟悉 Vim 帮助系统的用法。1

2 操作指令

2.1 打开文件 help.txt

打开一个本地命令行会话,使用 Vim 打开文件 help.txt(练习文件默认解压到 Downloads 文件夹下):

cd Downloads
cd vimclass
vim help.txt

2.2 打开帮助系统

输入::help + Enter 打开帮助进行浏览。须知帮助文档也是一个普通的文本文件。

2.3 退出帮助系统

使用 :q + Enter

2.4 再次打开帮助系统

换用 :h + Enter 再次打开 Vim 帮助。很多时候,Vim 命令都有缩写形式。这里的 :h 相当于 :help

2.4.1 用学过的命令浏览帮助文档

前面已经学了一些 Vim 命令。使用帮助系统获取下列命令的帮助文档。仔细阅读文档加深对每一个命令的印象:

  • :h i
  • :h :wq
  • :h :q
  • :h Ctrl-f:可使用 [count]Ctrl-f 下翻 count 页,或 [count]Ctrl-b 上翻 count
  • :h ^f (注意:快捷键 ^ 相当于 Ctrl,因此 ^fCtrl-f 是同一个意思)
  • :h ^b
  • :h w:文档中的 <S-Right> 表示按住 Shift 的同时再按下右箭头 Right 键。
2.4.2 练习在帮助文档间跳转

键入 :h w + Enter 查看 W 命令的帮助文档。将光标定位到单词 exclusive 上,按 Ctrl + ] 跳转到 exclusive 对应的帮助页;查阅完毕,使用 Ctrl + O 返回上一个帮助页(即 W 命令。这里的 “O” 表示 “Old”,有 “过去的、旧的” 的意思)。

再将光标定位到单词 count 上,按 Ctrl + ] 查看该主题(subject)的帮助文档。阅读完 count 相关帮助后,按 Ctrl + O 返回 上一个帮助主题。

2.4.3 练习使用 Ctrl-g 的等效命令

要查看 Ctrl + G 的帮助文档,输入 :h ^g + Enter。还有和它类似的命令吗?不错,还有 :f:file 命令。输入 :f + Enter 即可查看帮助。留意屏幕下方出现的一行文本。它将显示当面在用的帮助文档的名称。 注意屏幕下方出现的一行文本。 它会显示当前帮助文件的具体路径。

2.4.4 回到之前编辑的文件

按下 Ctrl + WW(即按住 Ctrl 并敲两次 W),此时光标位于位于底部那个窗口,即练习刚开始时打开的 help.txt 文件所在的窗口。可通过 Ctrl + G、或者使用 :f:file 命令进一步确认。

2.5 亲自动手

按下 Ctrl + WW 让光标再次回到 Vim 帮助窗口。回忆几个已经学过的命令,然后通过帮助系统查看其文档。用本节学到的知识尽情探索吧。

2.6 结束练习

完成练习,输入 :q + Enter 退出帮助系统;使用 :q! + Enter 停止文件编辑并退出 Vim。


S04L16 Exercise 04 - Getting Help - Walkthrough

本节为上面同步练习的点评课。没有补充知识点,反复操练即可。


  1. 本节练习另附精美排版 PDF 格式,阅读体验更佳,详见:vimclass/Exercise-04-GettingHelp.pdf ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2270518.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

印象笔记07——试一试PDF标注

印象笔记07——试一试PDF标注 [!CAUTION] 根据第六期&#xff0c;我再次查询了资料&#xff0c;印象笔记还是有一些可圈可点的功能的&#xff08;当然部分有平替&#xff09;&#xff0c;针对会员作用&#xff0c;开发使用场景虽然是逆向的&#xff0c;但我坚信这是一部分人的现…

JDK17源码分析Jdk动态代理底层原理

本文侧重分析JDK17中jdk动态代理的源码&#xff0c;若是想看JDK8源码分析可以看我的这一篇文章 JDK8源码分析Jdk动态代理底层原理-CSDN博客 两者之间有着略微的差别&#xff0c;JDK17在JDK8上改进了不少 目录 JDK 17的动态代理源码 核心入口方法 newProxyInstance 获取代理类…

【网络协议】开放式最短路径优先协议OSPF详解(一)

OSPF 是为取代 RIP 而开发的一种无类别的链路状态路由协议&#xff0c;它通过使用区域划分以实现更好的可扩展性。 文章目录 链路状态路由协议OSPF 的工作原理OSPF 数据包类型Dijkstra算法、管理距离与度量值OSPF的管理距离OSPF的度量值 链路状态路由协议的优势拓扑结构路由器O…

vim 的基础使用

目录 一&#xff1a;vim 介绍二&#xff1a;vim 特点三&#xff1a;vim 配置四&#xff1a;vim 使用1、vim 语法格式2、vim 普通模式&#xff08;1&#xff09;保存退出&#xff08;2&#xff09;光标跳转&#xff08;3&#xff09;文本删除&#xff08;4&#xff09;文本查找&…

为什么深度学习和神经网络要使用 GPU?

为什么深度学习和神经网络要使用 GPU&#xff1f; 本篇文章的目标是帮助初学者了解 CUDA 是什么&#xff0c;以及它如何与 PyTorch 配合使用&#xff0c;更重要的是&#xff0c;我们为何在神经网络编程中使用 GPU。 图形处理单元 (GPU) 要了解 CUDA&#xff0c;我们需要对图…

工厂模式与抽象工厂模式在Unity中的实际应用案例

一、实验目的 实践工厂模式和抽象工厂模式的实际应用。 创建一个小型的游戏场景&#xff0c;通过应用这些设计模式提升游戏的趣味性和可扩展性。 掌握在复杂场景中管理和使用不同类型的对象。 比较在实际游戏开发中不同设计模式的实际效果和应用场景。 学习如何进行简单的性…

jrc水体分类对水体二值掩码修正

使用deepwatermap生成的水体二值掩码中有部分区域由于被云挡住无法识别&#xff0c;造成水体不连续是使用jrc离线数据进行修正&#xff0c;jrc数据下载连接如下&#xff1a;https://global-surface-water.appspot.com/download 选择指定区域的数据集合下载如图&#xff1a; 使…

计算机网络 (20)高速以太网

一、发展背景 随着计算机技术和网络应用的不断发展&#xff0c;传统的以太网速率已逐渐无法满足日益增长的带宽需求。因此&#xff0c;高速以太网应运而生&#xff0c;它以提高数据传输速率为主要目标&#xff0c;不断推动着以太网技术的发展。 二、技术特点 高速传输&#xff…

基于SpringBoot的校园二手交易平台的设计与实现(源码+SQL+LW+部署讲解)

文章目录 摘 要1. 第1章 选题背景及研究意义1.1 选题背景1.2 研究意义1.3 论文结构安排 2. 第2章 相关开发技术2.1 前端技术2.2 后端技术2.3 数据库技术 3. 第3章 可行性及需求分析3.1 可行性分析3.2 系统需求分析 4. 第4章 系统概要设计4.1 系统功能模块设计4.2 数据库设计 5.…

2024年中国新能源汽车用车发展怎么样 PaperGPT(二)

用车趋势深入分析 接上文&#xff0c;2024年中国新能源汽车用车发展怎么样 PaperGPT&#xff08;一&#xff09;-CSDN博客本文将继续深入探讨新能源汽车的用车强度、充电行为以及充电设施的现状。 用车强度 月均行驶里程&#xff1a;2024年纯电车辆月均行驶超过1500公里&…

antd-vue - - - - - a-date-picker限制选择范围

antd-vue - - - - - a-date-picker限制选择范围 1. 效果展示2. 代码展示 1. 效果展示 如图&#xff1a;限制选择范围为 今年 & 去年 的 月份. 2. 代码展示 <template><a-date-picker:disabledDate"disabledDate"picker"month"/> &l…

滑动窗口、流量控制和拥塞控制

1. 确认应答机制 确认应答机制是计算机网络中&#xff0c;用于确保数据可靠传输的一种方法。 它通过发送 ACK 数据段来通知对方&#xff0c;每一个 ACK 数据段都有一个确认序号&#xff0c;表明&#xff1a; 确认序号之前的所有数据都已被接收&#xff0c;接下来从确认序号开…

TCP粘/拆包----自定义消息协议

今天是2024年12月31日&#xff0c;今年的最后一天&#xff0c;希望所有的努力在新的一年会有回报。❀ 无路可退&#xff0c;放弃很难&#xff0c;坚持很酷 TCP传输 是一种面向二进制的&#xff0c;流的传输。在传输过程中最大的问题是消息之间的边界不明确。而在服务端主要的…

前端,npm install安装依赖卡在sill idealTree buildDeps(设置淘宝依赖)

输入npm i后&#xff0c;一直卡在sill idealTree buildDeps&#xff0c;一动不动 cnpm可以安装成功&#xff0c;但使用cnpm不会生成package-lock.json文件 设置淘宝依赖&#xff0c;依然卡住&#xff0c;挂梯子也不行 解决方法&#xff1a; // 取消ssl验证 set strict-ssl …

【有作图代码】Highway Network与ResNet:skip connection如何解决深层网络欠拟合问题

【有作图代码】Highway Network与ResNet&#xff1a;skip connection如何解决深层网络欠拟合问题 关键词&#xff1a; #Highway Network #ResNet #skip connection #深层网络 #欠拟合问题 具体实例与推演 假设我们有一个深层神经网络&#xff0c;其层数为L&#xff0c;每一…

目标检测入门指南:从原理到实践

目录 1. 数据准备与预处理 2. 模型架构设计 2.1 特征提取网络原理 2.2 区域提议网络(RPN)原理 2.3 特征金字塔网络(FPN)原理 2.4 边界框回归原理 2.5 非极大值抑制(NMS)原理 2.6 多尺度训练与测试原理 2.7 损失函数设计原理 3. 损失函数设计 4. 训练策略优化 5. 后…

搭建开源版Ceph分布式存储

系统&#xff1a;Rocky8.6 三台2H4G 三块10G的硬盘的虚拟机 node1 192.168.2.101 node2 192.168.2.102 node3 192.168.2.103 三台虚拟机环境准备 1、配置主机名和IP的映射关系 2、关闭selinux和firewalld防火墙 3、配置时间同步且所有节点chronyd服务开机自启 1、配置主机名和…

租用服务器还是服务器托管:哪种方案更适合您?

随着企业对网络服务质量要求的不断提高&#xff0c;租用服务器和服务器托管是两种常见的选择&#xff0c;各自具备独特的优势和适用场景。这篇文章将从多个维度对这两种方案进行详细分析&#xff0c;帮助大家进行对比选择。 租用服务器的优劣势分析 优点 无需大额初始投入 租用…

LDD3学习6--Scull的变种

1 整体介绍 之前在LDD3学习1里面就提过scull的变种&#xff0c;LDD学习1--启程-CSDN博客&#xff0c;大概的变种有这些&#xff1a; 名称全名说明对应章节scullSimple Character Utility for Loading Localities基础版本3scullcScull with Slab cache使用基于slab高速缓存8.2.…

设计模式の状态策略责任链模式

文章目录 前言一、状态模式二、策略模式三、责任链模式 前言 本篇是关于设计模式中的状态模式、策略模式、以及责任链模式的学习笔记。 一、状态模式 状态模式是一种行为设计模式&#xff0c;核心思想在于&#xff0c;使某个对象在其内部状态改变时&#xff0c;改变该对象的行为…