vim有三种模式:命令、输入、末行
光标移动
你的vim光标可能只是一条线,实际上光标指向的应该是一个字符,通常这条线指的应该是它后面的字符,不要被它迷惑了~
w
:光标按单词移动而不是字符
文本选择
可以配合光标移动加速选择
v:按字符选择
V:按行选择
Ctrl+v:按块选择,矩形区域
复制
I. 行内复制
在行内进行复制工作
- 命令模式摁下
v
进入可视界面,使用方向键选中字符或者使用w
选中单词
2018-05-04 10-23-00屏幕截图.png
如上所示,在我的vim可视界面使用w
选中单词时往往包含单词后面的空格,这意味着实际上将下一个单词的第一个字符也包含进来了,此时只需要使用方向键进行微调即可。
内容选择完成之后摁下y
即可复制选择的文本,同时退出可视界面
再摁下p
即可进行粘贴 - 直接在命令模式进行操作
yw
: 我称之为随缘复制,复制当前光标所在位置到光标所在单词的结尾的字符串,所以复制单词时请把光标移至单词的第一个字符
5yw
: 一个随缘的单词加上它后面的四个单词
y^
: 光标到行首
y$
: 光标到行尾
II. 行间复制
复制一行
- 摁
V
进入可视界面已经自动选择一行,摁y
进行复制即可 - 直接摁
yy
选择当前行进行复制 - 进入末行模式输入
y
并回车复制当前行 - 进入末行模式输入
set nu
并回车显示行号,末行模式输入5y
复制第五行
复制多行
- 摁
V
进入行选择可视界面,使用光标控制所选行 - 直接摁
5yy
选择当前行及之后的4行(共5行) - 进入末行模式输入
2,6y
并回车复制2到6行(共5行)
III. 区块复制
这个功能很特殊
命令模式摁Ctrl+v进入区块选择可视界面,惊喜ing
剪切
跟复制类似,所有y
换成d
粘贴
p
撤销(上一步)
u
反撤销(下一步)
Ctrl+r
网友评论