【Vim Masterclass 笔记22】S09L40 + L41:同步练习11:Vim 的配置与 vimrc 文件的相关操作(含点评课内容)

文章目录

  • S09L40 Exercise 11 - Vim Settings and the Vimrc File
    • 1 训练目标
    • 2 操作指令
      • 2.1. 打开 vimrc-sample 文件
      • 2.2. 尝试各种选项与设置
      • 2.3. 将更改内容保存到 vimrc-sample 文件
      • 2.4. 将文件 vimrc-sample 的内容复制到寄存器
      • 2.5. 创建专属 vimrc 文件
      • 2.6. 对于 Mac、Linux 或 Unix 用户
      • 2.7. 对于 Windows 用户
      • 2.8. 将文件 vimrc-sample 中的内容粘贴到 vimrc 文件
      • 2.9. 根据需要添加更多个性化配置
    • 3 退出 Vim
  • S09L41 Exercise 11 - Vim Settings and the Vimrc File - Walkthrough

写在前面
本篇为第九章的同步练习环节,也是本章的收尾篇。讲师并没有在本节加入大量具体的 Vim 配置项练习,仅仅以个别选项为例进行了说明,主要思路还是结合 Vim 帮助文档(:h option-list 帮助和 :options 命令)来熟悉相关配置项,根据自身需求做定制。实操过程中,建议先在命令模式体验效果,满意后再转存到 vimrc 文件,同时加注必要的注释信息。我也明白,即便练习中说了要浏览一遍 Vim 的配置文档,很多人也会直接跳过这部分内容,然后抱怨没学到什么“真东西”。其实能否严格按要求去做,就能基本断定一个人的自学能力高低;虽然总有天生就很强的少部分天才,但对绝大部分的人而言,自学能力都是后天不断精进完善的结果。狮子搏兔,亦尽全力,更何况这是在给自己打基础。还望各位戒骄戒躁,且行且珍惜。


S09L40 Exercise 11 - Vim Settings and the Vimrc File

1 训练目标

熟悉 Vim 可视化模式的各种用法。1

2 操作指令

2.1. 打开 vimrc-sample 文件

Vim 打开源码包内的练习文件 vimrc-sample(默认解压到 Downloads 文件夹下):

cd Downloads
cd vimclass
vim vimrc-sample

2.2. 尝试各种选项与设置

查看文件内容并阅读每个配置项的注释信息,例如对 ruler 选项:

" Show the line and column number of the cursor position
set ruler

如果该选项后续可能会用到,则阅读该选项的 Vim 帮助文档(记得在选项名两边加注单引号,这样才能精准进入该选项文档,而不是其它相关文档)。例如,获取 ruler 选项的帮助文档,需要输入:

:h 'ruler' + Enter

读完文档想要尝试效果,则使用 set 命令进行设置。启用一个布尔型配置项,命令格式为 set <option-name>,例如:

:set ruler + Enter

若要禁用某选项,命令格式为 set no<option-name>,例如:

:set noruler + Enter

回忆一下,在多个打开的窗口间切换,需使用组合键 CtrlWW。如果决定不启用某选项,也可以在行首添加一个双引号(")将其注释:

" Show the line and column number of the cursor position
" set ruler

2.3. 将更改内容保存到 vimrc-sample 文件

保存变更内容,使用命令 :w + Enter

2.4. 将文件 vimrc-sample 的内容复制到寄存器

试将文件 vimrc-sample 中的内容复制到寄存器 "v 中,以遍后续粘贴到 vimrc 文件。实现方法:输入命令 gg"vyG 即可。该命令分步解释如下:

  • gg:用于将光标定位到文件开头处;
  • "v:指定寄存器 "v
  • yG:复制 motion 指令 G 扫过的内容,该指令用于将光标定位到文件最后一行。

2.5. 创建专属 vimrc 文件

打开 vimrc 文件最简单的方法是先启动 Vim(如果您是跟着操作到这里的,那么 Vim 已经在运行了),然后通过命令 :e <vimrc_full_name> 打开该文件。

2.6. 对于 Mac、Linux 或 Unix 用户

如果操作系统用的是 MacLinux 或者 Unix,则 vimrc 文件的文件名称为 .vimrc,可通过命令 :e ~/.vimrc 进行编辑:

:e ~/.vimrc

顺带提一下,~ 是一个代表您当前用户主目录的快捷方式(shortcut);/ 则为目录的分隔符;最后的 .vimrc 即为 Vim 的配置文件。以我的 Mac 系统为例,我的用户名为 jason,因此对应的主目录便是 /Users/jason

2.7. 对于 Windows 用户

如果操作系统为 Windows 系统,则对应的 vimrc 文件名为 _vimrc;可通过命令 :e ~/_vimrc 进行编辑:

:e ~/_vimrc

虽然 ~/ 是基于 Unix 系统的命名风格,但在 Windows 版的 Vim 中同样有效。顺带提一下,~ 是一个代表您当前用户主目录的快捷方式(shortcut);/ 则为目录的分隔符;最后的 _vimrc 即为 Vim 的配置文件。以我的 Windows 系统为例,我的用户名为 jason,因此对应的主目录便是 C:\Users\jason。本练习中,~/_vimrc 其实就对应 C:\Users\jason\_vimrc

2.8. 将文件 vimrc-sample 中的内容粘贴到 vimrc 文件

使用 put 命令将存入寄存器 "v 中的文件内容粘贴到 vimrc 文件,即输入: " VP 或者 " VShiftP

保存文件内容,使用命令::w + Enter

2.9. 根据需要添加更多个性化配置

至此,一个包含您个人偏好的定制 vimrc 文件就配置好了。如果还想探索更多配置项,可以通过命令 :h option-list:options 进行查阅,再将感兴趣的自定义配置项加入 vimrc 文件即可。

3 退出 Vim

如果编辑好了 vimrc 文件,就可以保存内容并退出 Vim,使用命令::wq! + Enter


S09L41 Exercise 11 - Vim Settings and the Vimrc File - Walkthrough

本节为同步练习的点评课,本章没有对具体配置项分别进行练习,因此没有需要特别补充说明的知识点。练习中复制示例文件到寄存器时,之所以使用 "v 寄存器,只是因为 v 代表 vimrc 文件,并没有特殊用法,特此说明。


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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言进阶习题【1】指针和数组(4)——指针笔试题3

笔试题5&#xff1a;下面代码输出是是什么&#xff1f; int main() {int a[5][5];int(*p)[4];p a;printf( "%p,%d\n", &p[4][2] - &a[4][2], &p[4][2] - &a[4][2]);return 0; }分析 代码结果 笔试题6&#xff1a;下面代码输出是是什么&#xff1…

计算机网络 (53)互联网使用的安全协议

一、SSL/TLS协议 概述&#xff1a; SSL&#xff08;Secure Sockets Layer&#xff09;安全套接层和TLS&#xff08;Transport Layer Security&#xff09;传输层安全协议是工作在OSI模型应用层的安全协议。SSL由Netscape于1994年开发&#xff0c;广泛应用于基于万维网的各种网络…

c++算法贪心系列

本篇文章&#xff0c;同大家一起学习贪心算法&#xff01;&#xff01;&#xff01; 第一题 题目链接 2208. 将数组和减半的最少操作次数 - 力扣&#xff08;LeetCode&#xff09; 题目解析 本题重点&#xff1a;最终的数组和要小于原数组和的一半&#xff0c;且求这一操作的…

NewStar CTF week1 web wp

谢谢皮蛋 做这题之前需要先去学习一些数据库的知识 1 order by 2 1可以理解为输入的id&#xff0c;是一个占位符&#xff0c;按第二列排序用来测试列数&#xff0c;如果没有两列则会报错-1 union select 1,2 -1同样是占位符&#xff0c;union的作用是将注入语句合并到原始语句…

【2025小年源码免费送】

&#x1f496;学习知识需费心&#xff0c; &#x1f4d5;整理归纳更费神。 &#x1f389;源码免费人人喜&#xff0c; &#x1f525;码农福利等你领&#xff01; &#x1f496;山高路远坑又深&#xff0c; &#x1f4d5;大军纵横任驰奔&#xff0c; &#x1f389;谁敢横刀立马行…

在Qt中实现点击一个界面上的按钮弹窗到另一个界面

文章目录 步骤 1&#xff1a;创建新窗口类步骤 2&#xff1a;设计窗口的 UI步骤 3&#xff1a;设计响应函数 以下是一个完整的示例&#xff0c;展示在Qt中如何实现在一个窗口中通过点击按钮弹出一个新窗口。 步骤 1&#xff1a;创建新窗口类 假设你要创建一个名为 WelcomeWidg…

基于AutoDL云计算平台+LLaMA-Factory训练平台微调本地大模型

1. 注册与认证 访问AutoDL官网&#xff1a;前往 AutoDL官网。 注册账号&#xff1a;完成注册流程。 实名认证&#xff1a;按照要求完成实名认证&#xff0c;以确保账号的合规性。 2. 选择GPU资源 进入算力市场&#xff1a;在官网首页点击“算力市场”菜单。 挑选GPU&#x…

智慧金融合集:财税资金数据管理一体化大屏

随着科技的快速进步和数字化转型的加速&#xff0c;金融、税务等机构和企业面临的数据量呈现出爆炸式增长。传统的数据分析方法早已无法胜任现代业务的需求。为此&#xff0c;许多机构开始尝试创新的软件工具来更好的管理繁琐的数据。 通过图扑软件的数据可视化大屏&#xff0c…

基于springboot社区医疗后台管理系统

基于Spring Boot的社区医疗后台管理系统是一种专为社区医疗机构设计的管理工具&#xff0c;旨在提高医疗服务的质量和效率。 一、系统背景与目的 社区医疗作为基层医疗服务的重要组成部分&#xff0c;承担着为社区居民提供基本医疗服务和公共卫生服务的重任。然而&#xff0c…

基于quartz,刷新定时器的cron表达式

文章目录 前言基于quartz&#xff0c;刷新定时器的cron表达式1. 先看一下测试效果2. 实现代码 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会太差&…

63,【3】buuctf web Upload-Labs-Linux 1

进入靶场 点击pass1 查看提示 既然是上传文件&#xff0c;先构造一句话木马&#xff0c;便于用蚁剑连接 <?php eval($_POST[123])?> 上传木马 文件后缀写为.php.jpg 右键复制图片地址 打开蚁剑连接 先点击测试连接&#xff0c;显示成功后&#xff0c;再点击添加即可 …

Linux操作命令之云计算基础命令

一、图形化界面/文本模式 ctrlaltF2-6 图形切换到文本 ctrlalt 鼠标跳出虚拟机 ctrlaltF1 文本切换到图形 shift ctrl "" 扩大 ctrl "-" 缩小 shift ctrl "n" 新终端 shift ctrl "t" 新标签 alt 1,…

计算机毕业设计hadoop+spark视频推荐系统 短视频推荐系统 视频流量预测系统 短视频爬虫 视频数据分析 视频可视化 视频大数据 大数据

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

【智能解析多线程:线程安全与死锁的深度剖析】

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” 文章目录 温故而知新线程安全问题多线程中有的线程未加锁一个线程有多把锁加了多层锁的代码&#xff0c;执行…

Grafana系列之面板接入Prometheus Alertmanager

关于Grafana的仪表板Dashboard&#xff0c;以及面板Panel&#xff0c;参考Grafana系列之Dashboard。可以直接在面板上创建Alert&#xff0c;即所谓的Grafana Alert&#xff0c;参考Grafana系列之Grafana Alert。除了Grafana Alert外&#xff0c;面板也可接入Prometheus Alertma…

【深度学习入门】深度学习知识点总结

一、卷积 &#xff08;1&#xff09;什么是卷积 定义&#xff1a;特征图的局部与卷积核做内积的操作。 作用&#xff1a;① 广泛应用于图像处理领域。卷积操作可以提取图片中的特征&#xff0c;低层的卷积层提取局部特征&#xff0c;如&#xff1a;边缘、线条、角。 ② 高层…

数据结构 链表2

目录 前言&#xff1a; 一&#xff0c;反转一个链表(迭代) 二&#xff0c;打印一个链表&#xff08;递归&#xff09; 三&#xff0c;反转一个链表(递归) 四&#xff0c;双向链表 总结 前言&#xff1a; 我们根据 [文章 链表1] 可以知道链表相比较于数组的优缺点和计算机…

curl简介与libcurl开源库的使用总结

curl工具和libcurl不是同一个东西&#xff0c;二者的关系主要体现在以下方面&#xff1a; 定义与性质 curl工具&#xff1a; 是一个利用URL语法在命令行下工作的文件传输工具&#xff0c;1997年首次发行。它支持多种协议&#xff0c;如HTTP、HTTPS、FTP、FTPS等&#xff0c;可用…

node.js 07.npm下包慢的问题与nrm的使用

一.npm下包慢 因为npm i 默认从npm官网服务器进行下包,但是npm官网服务器是海外服务器所以响应很慢. 于是我们通过npm下包的时候通常用淘宝镜像进行下包,下面是切换到淘宝镜像地址下包的操作. 二.nrm的使用 nrm是一个管理切换npm下包地址的工具,可以快速切换下包的地址. 安…

Flutter:carousel_slider 横向轮播图、垂直轮播公告栏实现

安装依赖 carousel_slider: ^5.0.01、垂直滚动公告栏 import package:carousel_slider/carousel_options.dart;// 垂直滚动公告栏Widget _buildNotice() {return <Widget>[<Widget>[TDImage(assetUrl: "assets/img/home11.png",width: 60.w,height: 60.w…