总结
进入插入模式
i
: 进入插入模式,并定位光标至当前字符之前I
: 进入插入模式,并定位光标至当前行首a
: 进入插入模式,并定位光标至当前字符之后A
: 进入插入模式,并定位光标至当前行尾o
: 进入插入模式,当前光标之后新建一行,并定位光标至后一行O
: 进入插入模式,当前光标之前新建一行,并定位光标至前一行
进入普通模式
<esc>
: 过于偏远,按键不方便。<ctrl-[>
: 推荐这个<ctrl-c>
: 在命令行中不太好用,所以推荐上面的
提问
- [x] 1. 如何进入 insert mode
i
: 进入插入模式,并定位光标至当前字符之前I
: 进入插入模式,并定位光标至当前行首a
: 进入插入模式,并定位光标至当前字符之后A
: 进入插入模式,并定位光标至当前行尾o
: 进入插入模式,当前光标之后新建一行,并定位光标至后一行O
: 进入插入模式,当前光标之前新建一行,并定位光标至前一行
- [x] 2. 如何退出 insert mode
<esc>
: 过于偏远,按键不方便。<ctrl-[>
: 推荐这个,有时候<ctrl-c>
有其它占用<ctrl-c>
: 在命令行中不太好用,所以推荐上面的
1. 前提提要、场景
都听说过 vim
的好处,操作起来十分便捷,但由于前期的学习负担较大,转换过程十分痛苦,很多人在黎明到来前就放弃了。
我适应了两个星期,现在日常开发也是用 vscode 的 vim 插件,感觉没有那么难了,基本可以抛弃鼠标和方向键,真香。后期的开发效率还会随着熟练度逐步提高,上限较高。所以熬一熬吧,挺值的。
推荐看这个视频,了解个大体的概念。https://prezi.com/view/RKhL17TysQ2tqvADpZDV/
自己新建一个文档,不要一股脑跟着网上抄,吃不消。该文档只用来记录日常使用的快捷键,在开发时遇到痛点,再去找对应的解决方案并记下。这样负担小,且这个文档也能被自己慢慢吸收。
vim
可以将你手的活动范围控制在主区域即字母区域,但需要有良好的键盘使用习惯。例如两个食指在f
j
处,且各个手指负责各个区块,各司其职,不会出现类似中指去按o
,食指去按,
的情况。可以通过 https://www.typingclub.com/(科学上网) 去练习键盘使用习惯。十分推荐,该网站做的超级棒。甚至可以单独锻炼某根手指,可以每天安排 10 分钟练习。
2. 文件中的基础练习
sh
# 新建一个文件 Readme.md,输入字符
$ vim Readme.md
vim Readme.md
: 新建并打开一个文件Readme.md
,此时处于normal mode
。i
: 进入insert mode
,此时可正常编辑文字。# hello, vim
: 此时处于insert mode
,输入字符# hello, vim
<esc>
: 退出insert mode
,此时处于normal mode
。:
: 进入command mode
。:wq
: 在command mode
下继续输入:wq
,保存退出。
已经接触了三种模式:
normal
: 普通模式,刚进入vim
的默认模式,也是最重要的模式。 确保大部分操作在普通模式下完成,而不是插入模式。insert
: 插入模式。在普通模式下通过i
进入插入模式,在插入模式下进行文字编辑。在插入模式中,是没法控制光标移动的。command
: 命令模式。在普通模式下通过:
进入命令模式,在命令模式下执行命令。
3. insert mode commands 进入插入模式
以下按键都可以从 normal
进入 insert
模式
i
: 进入插入模式,并定位光标至当前字符之前I
: 进入插入模式,并定位光标至当前行首a
: 进入插入模式,并定位光标至当前字符之后A
: 进入插入模式,并定位光标至当前行尾o
: 进入插入模式,当前光标之后新建一行,并定位光标至后一行O
: 进入插入模式,当前光标之前新建一行,并定位光标至前一行
4. normal mode commands 进入普通模式
以下按键都可以从 insert
进入 normal
模式
<esc>
: 过于偏远,按键不方便。<ctrl-[>
: 推荐这个<ctrl-c>
: 在命令行中不太好用,所以推荐上面的