我已经致力于深入研究vim,以便更快地为ruby / python编写代码,并且我很难在文件中导航。
主要是指我在插入模式和导航模式之间切换。也许我还没有完全习惯编辑器,但是不断切入和退出插入模式感觉非常尴尬。
这会随着时间而消失吗?是否有任何技巧可以更快地进入和退出插入模式?
答案 0 :(得分:7)
阅读这篇优秀文章的“误解#1”部分:http://www.viemu.com/a-why-vi-vim.html
答案 1 :(得分:6)
许多人喜欢将jj
或jk
定义为在插入模式下输入以返回正常模式(而不是击中逃生)时要输入的内容,这样可以保持您的主动行和速度事情。你可以把它放在你的.vimrc中来做这个映射(或者只选择其中一个):
inoremap jj <ESC>
inoremap jk <ESC>
如果你真的需要输入这些字符串中的任何一个(对我来说非常罕见),你可以输入第一个字母并暂停几秒钟,然后键入第二个字符串。
我还发现在正常模式下真正理解所有的移动键有助于理解vim内的移动能力以及它如何让你到达你想要更快的地方(从而抵消和击败拥有的开销)进入/退出插入模式)。
为此,我将a vim movement wallpaper聚集在一起,专门用于直观地显示相对于当前光标位置(屏幕中心)的各种移动命令。有了这个,帮我把它们记住了,并且让我很多更快。
此外,了解各种基本插入键,可帮助您在正确的位置进入插入模式:
i
- 在光标所在的字母前插入a
- 在光标所在的字母后面追加I
- 插入当前行的开头A
- 附加在当前行的末尾o
- 在当前行下面打开一个新行O
- 在当前行上方打开一个新行还应该学习/理解各种删除,更改,替换和查找/替换regexp命令。
答案 2 :(得分:0)
我只有这张图,看来可以节省你的时间!
id Number Type Class Name did NId Att \
0 292 C 1 2 A {'id': '1', 'num': 1} a1,b1,c1 None
0 292 C 1 2 A {'id': '2', 'num': 1} a1,b1,c1 None
1 293 C 1 2 A {'id': '3', 'num': 1} a1,b1,c1 None
isnull number label codes \
0 False M90 [{'title': 'Dear', 'Info': {'Id': None, 'id2':... []
0 False M90 [{'title': 'Dear', 'Info': {'Id': None, 'id2':... []
1 False M90 [{'title': 'Dear', 'Info': {'Id': None, 'id2':... []
rule
0 None
0 None
1 None
▼/▶ Cursor ▽/▷ Target
┌───────────── 0
│ ┌────────── ^ $ ──────────────┐
│ │ ┌─────── Fo fe ────────┐ │
│ │ │┌────── To te ───────┐│ │
│ │ ││ ┌──── ge w ───┐ ││ │
│ │ ││ │ ┌── b e ─┐ │ ││ │
│ │ ││ │ │ ┌h l┐ │ │ ││ │
▽ ▽ ▽▽ ▽ ▽ ▽▼ ▼▽ ▽ ▽ ▽▽ ▽
echo "A cheatsheet from quickref.me"