vim的额外功能

x33g5p2x  于2022-06-06 转载在 其他  
字(1.1k)|赞(0)|评价(0)|浏览(422)

区块选择

区块选择的按键意义:

按键意义
v字符选择,会将光标经过的地方反白选择!
V行选择,会将光标经过的行反白选择!
ctrl + v区块选择,可以用长方形的方式选择资料
y将反白的地方复制
d将反白的地方删掉
p将刚刚复制的区块,在游标所在处贴上

接下来我们来测试一下: 以如下文档为例

接下来我们在后半部分字母中的插入对应的一段数字。ctrl + v 区块选择

多文件编辑

利于vim我们可以对多个文件进行编辑

按键意义
:n编辑下一个文件
:N编辑上一个文件
:files列出当前vim编辑的所有的文件名

例如同时编辑 aa.txt 和 bb.txt 这两个文件:

输入 :n:N 便可随意切换正在编辑的文件。接下来我们将aa.txt前9行数据粘贴到bb.txt的尾部

  1. 首先在aa.txt中输入gg光标到第1行),然后按9yy复制前9行
  2. 然后一般模式下输入 :n(切换到bb.txt)
  3. 然后按G(光标移动到尾部)
  4. 最后按p即可将aa.txt的前9行数据 粘贴到尾部

多窗口功能

在开始这一小节之前,先来想象两个情况:

  • 当我的一个文件非常大,我查阅后面的数据时,想要【对照】前面的数据,是否需要使用ctrl+fctrl+b(或pageuppagedown功能键)来跑前跑后查询?
  • 我有两个需要对照看着的文件,不想使用前一小节提供的多文件编辑功能

其实vim为我们提供了一个很神奇的功能,同一个界面可以开启多个窗口,多个窗口可以编辑同一个文件也可以编辑不同的文件,在一般模式中输入 :sp {filename}即可,这个filename可有可无,如果想要在新窗口启动另一个文件,就加入文档名,否则仅输入:sp时,出现的则是同一个文件在两个窗口

接下来我们测试一下,先使用vim /etc/man_db.conf打开这个文件,然后再输入:sp便有如下结果

同样我们可以再打开一个窗口,这次我们编辑aa.txt文件,一般模式下输入:sp aa.txt,便是如下结果

这样看还挺帅吧!
我们还可以利用ctrl+w+↑以及ctrl+w+↓在多个窗口中间移动,这样的话进行复制、查询等就非常方便了。分区窗口的常见的相关指令有如下几个:

指令意义
:sp filename开启一个新窗口,如果有加filename,表示在新窗口开启一个新文件,否则表示两个窗口为同一个文件内容(同步显示)
ctrl+w+j 或 ctrl+w+↓按键的按法是:先按下ctrl不放,再按下w后放开所有按键,然后再按下j(或向下箭头键),则光标可移动到下方的窗口
ctrl+w+k 或 ctrl+w+↑同上,不过光标移动到上面的窗口
ctrl+w+q其实就是:q结束离开。举例来说,如果我想结束下方的窗口,那么利用ctrl+w+↓移动到下方窗口后,按下:q即可离开,也可以按下ctrl+w+q

相关文章