Usage
四种模式:
1. 默认情况下 normal Mode
2. 按下i或者a insert Mode
3. 按下v visual Mode
4. 按下:(shift+;) command mode
移动normal mode
h左 j下 k上 l右
normal mode(普通模式)
- 这些快捷键执行过后 保持普通模式
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18x -> 删除当前光标所在位置
u -> (undo)撤销上次命令修改
. -> 重复之前的操作 宏操作
f/t -> 行内查找下一个指定字符 ;重复 ,回退上一次操作
F/t -> 行内查找上一个指定字符 ;重复 ,回退上一次操作
/{ch} -> 整个文章查找下一个 n重复操作 N回退
?{ch} -> 整个文章查找上一个 n重复操作 N回退
dd -> 删除光标所在当前行
>G -> >G命令会增加从当前行到文档末尾处的缩进层级
G -> 跳转到文件尾部
gg -> 跳转到文件开头
$ -> 跳转到句子末尾
0 -> 跳转到句子开头
* -> 查找当前单词 在全文当中依次查询 n重复 N回退 .重复
C-a/x -> 跳转到本行最近的数字然后做加法/减法
yy -> 复制整个行
y -> 复制选择 y+<数字>+h/j/k/l 方向选择复制
p -> 粘贴 存在寄存器的内容
insert mode(插入模式)
- 这些快捷键执行过后 自动进入插入模式
1
2
3
4
5
6
7
8
9
10
11a -> 光标后移一位插入
i -> 光标前移一位插入
I -> 光标本行移动-最开始字符- 开始插入
A -> 光标移动到行末 然后插入 类似($a)结合
c -> change 定位到当前位置 然后下一步是删除 具体方向是自己定义 例子: c4h [c 定位后删除向左4个元素]
cw -> change word 从当前位置开始直到word结束全部删除
s -> 删除自己也算 也算是cl 定位删除向右一位
S -> 删除光标所在的一行
O -> ko 就是向上跳转 然后行尾插入
o -> open an another line 跳转下一行 开始insert
<C-r>=表达式<CR> -> 寄存器计算表达式
visual mode(视觉模式)
- 这些是在normal mode按下v才可以使用的
1 | 移动hjkl -> 选中移动 |
command mode(命令行模式)
1 | :w -> 保存写入 |
- 快捷键: C-w + h/j/k/l 可以切换光标在分屏之间 H/J/K/L Z切换分屏位置 *
哲学 :
- 尽量去多使用.来重复修改的操作 而不是低效的的自我重复和感动
- 命令多去使用 菜就多练 命令需要多去使用
- 用hjkl去取代 上下左右方向键 因为上下左右方向键其实是 esc之后h 然后重新开始a插入 对于你撤销操作以及重复操作非常不友好
- 多在行内使用C-a C-x 来使得变量数字加减
- 。。。多学习多练习 才是学习正确姿势 但是要参考大量的资料并且阅读代码 好的engineer 80%的时间在思考 20%时间在写代码 好比做菜 如果能够不断迭代 并且优化准备过程 才是一个高端工程师应该去考虑的 不要做程序员 去做工程师engineer