Vim学习笔记下篇

Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。本文笔者就和大家一起来学习Vim

普通模式命令

普通模式下输入15G,跳转到15行
普通模式下输入>> 整行将向右缩进(使用,用于格式化代码超爽)
普通模式下输入<< 整行向左回退
普通模式下输入:进入命令行模式下对shiftwidth值进行设置可以控制缩进和回退的字符数

shiftwidth命令

shiftwidth命令是指上一节>>命令产生的缩进(可以简写成sw) 普通模式下输入:进入命令行模式下对shiftwidth值进行设置可以控制缩进和回退的字符数 获取目前的设定值

1
:set shiftwidth?

设置缩进为10个字符

1
:set shiftwidth=10

输入 ESC 回到普通模式,再次尝试 >> 看缩进量是否变化

调整文本位置

命令行模式下输入:ce(center)命令使本行内容居中

1
:ce

命令行模式下输入:ri(right)命令使本行文本靠右

1
:ri

命令行模式下输入:le(left)命令使本行内容靠左

1
:le

普通模式下输入 / 然后键入需要查找的字符串 按回车后就会进行查找。 ? 与/ 功能相同,只不过 ? 是向上而 / 是向下查找。 进入查找之后,输入n 和 N 可以继续查找。 n是查找下一个内容,N查找上一个内容。

普通模式下输入*寻找游标所在处的单词
普通模式下输入#同上,但 # 是向前(上)找,*则是向后(下)找
普通模式下输入g*同* ,但部分符合该单词即可
普通模式下输入g#同# ,但部分符合该单词即可
以上查找n,N 的继续查找命令依然可以用

使用vim编辑多个文件

编辑多个文件有两种形式,一种是在进入vim前使用的参数就是多个文件。另一种就是进入vim后再编辑其他的文件。 同时创建两个新文件并编辑

1
$ vim 1.txt 2.txt

默认进入1.txt文件的编辑界面

命令行模式下输入 :n 编辑 2.txt 文件,可以加 ! 即 :n! 强制切换,之前一个文件的输入没有保存,仅仅切换到另一个文件
命令行模式下输入 :N 编辑 1.txt 文件,可以加 ! 即 :N! 强制切换,之前文件内的输入没有保存,仅仅是切换到另一个文件

进入vim后打开新文件

命令行模式下输入:e 3.txt 打开新文件3.txt
命令行模式下输入:e# 回到前一个文件
命令行模式下输入:ls可以列出以前编辑过的文档
命令行模式下输入:b 2.txt(或者编号)可以直接进入文件2.txt编辑
命令行模式下输入:bd 2.txt(或者编号)可以删除以前编辑过的列表中的文件项目
命令行模式下输入:e! 4.txt,新打开文件4.txt,放弃正在编辑的文件
命令行模式下输入:f 显示正在编辑的文件名
命令行模式下输入:f new.txt,改变正在编辑的文件名字为new.txt

恢复文件

由于在线环境的特殊性,请在本机尝试

如果因为断电等原因造成文档没有保存,可以采用恢复方式,vim -r进入文档后,输入:ewcover 1.txt来恢复

1
$ vim -r 1.txt

在普通模式下输入 v(小写),进入字符选择模式,就可以移动光标,光标走过的地方就会选取。再次按下v后就会取消选取。
在普通模式下输入 Shift+v(小写),进入行选择模式,按下V之后就会把整行选取,您可以上下移动光标选更多的行,同样,再按一次 Shift+v 就可以取消选取。
在普通模式下输入 Ctrl+v(小写),这是区域选择模式,可以进行矩形区域选择,再按一次 Ctrl+v 取消选取。
在可视模式下输入 d 删除选取区域内容
在可视模式下输入y复制选取区域内容

vim 可以在一个界面里打开多个窗口进行编辑,这些编辑窗口称为 vim 的视窗。 打开方法有很多种,例如可以使用在命令行模式下输入 :new 打开一个新的 vim 视窗,并进入视窗编辑一个新文件(普通模式下输入 Ctrl+w也可以),除了 :new 命令,下述列举的多种方法也可以在命令模式或普通模式下打开新的视窗:

注意:快捷键可能会与浏览器的快捷键冲突,可换为 IE 浏览器进行实验或者在浏览器设置里禁用浏览器快捷键。

命令行模式下输入:sp 1.txt 打开新的水平分屏视窗来编辑1.txt
命令行模式下输入:vsp 2.txt 打开新的垂直分屏视窗来编辑2.txt
普通模式下Ctrl+w s 将当前窗口分割成两个水平的窗口
普通模式下Ctrl+w v 将当前窗口分割成两个垂直的窗口
普通模式下Ctrl+w q 即 :q 结束分割出来的视窗。如果在新视窗中有输入需要使用强制符!即:q!
普通模式下Ctrl+w o 打开一个视窗并且隐藏之前的所有视窗
普通模式下Ctrl+w j 移至下面视窗
普通模式下Ctrl+w k 移至上面视窗
普通模式下Ctrl+w h 移至左边视窗
普通模式下Ctrl+w l 移至右边视窗
普通模式下Ctrl+w J 将当前视窗移至下面
普通模式下Ctrl+w K 将当前视窗移至上面
普通模式下Ctrl+w H 将当前视窗移至左边
普通模式下Ctrl+w L 将当前视窗移至右边
普通模式下Ctrl+w - 减小视窗的高度
普通模式下Ctrl+w + 增加视窗的高度

本文结束

♥您的支持将成为我前进的动力♥

欢迎关注我的其它发布渠道