你想尽量快地自学vim(为你们所熟知的最好的编辑器) 。这是我学习的方法:从细处入手而后慢慢掌握全部技巧。linux Vim 六十亿美圆的编辑器vim
学习vim并把它做为你的下一个文本编辑器,据我所知没有比它更好的编辑器,学起来难但出奇的好用。编辑器 我建议你按下附4个步骤学习Vim:ide
本课程结束时你将成为一个vim高手。工具 但在咱们开始以前,先提醒一下。刚开始学习vim会有点痛苦,它很费时间,有点像玩乐器同样。不要期望能像其余编辑器同样花3天之内的时间便能很好的使用它,事实上,这确定要花2周而不是3天。学习 |
第一层次 – 适应
在标准的编辑器里,写一些东西到屏幕上只须要在键盘上输入就足够了,在Vim中不是这样。Vim在普通模式里,让咱们转到插入模式,键入字符i。url 你应该感受好一点了,能像在标准编辑器里输入了,回到普通模式只需按ESC键便可。 你如今知道了如何在插入和普通模式之间转换,下面是你在普通模式下须要记住的指令:
|
只有5个命令,一开始只需掌握这些,当适应了这些命令后(大概须要一天或更多的诗句),你能够转到第二层级了。 但首先,稍回顾一下普通模式。在标准编辑器里,要复制的话你须要使用ctrl键(Ctrl-c)。实际上,当你按下ctrl键时全部的按键的意义都改变了。在vim普通模式下就像在ctrl键自动按下的状况下使用编辑器。 最后的补充:
|
第二层 - 爽一把你知道,命令是由需求所定。是时候学习更多命令了。下面这些是个人建议:
花些时间学习全部这些命令。一旦完成后,你应该就能完成在像在其它编辑器中全部事情。也许,你可能还会以为有点笨手笨脚。可是跟着我进入下一个层次,你就会发现为何vim值得你额外付出的努力。 |
第三层次——更好,更强,更快为达到这一步表示祝贺!如今咱们能够开始这有趣的东西。在第三层次,咱们将只讨论命令,它兼容旧的vi编辑器。 更好让咱们看看vim是怎么帮你作重复事情的。 1. .→(点)能够重复最后一个命令, 2. N<命令>会重复命令N次。 一些例子,打开一个文件而后写入下面内容: • 2dd→ will delete 2 lines • 3p→ will paste the text 3 times • 100idesu [ESC]→ will write “desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu” •.→ Just after the last command will write again the 100 “desu”. •3.→ Will write 3 “desu” (and not 300, how clever). |
更强知道怎么有效的移动对vim是很是重要的。请不要跳过这一节。 1. NG→定位到第N行 2. gg→1G的快捷方式——定位到第一行 3. G→定位到最后一行 4. 单词移动:
如今让咱们来谈谈几个很是有效率的移动:
相信我,最后的三行命令是精华。 |
更快记住了vi移动的重要性?这里就是缘由。大多数命令使用下面这种通用格式: <开始位置><命令><结束位置> 例如: 0y$意味着
咱们也可使用ye,从当前位置复制到单词的末尾。可是y2/foo 会一直复制到第二个foo出现的地方。 但对于y(复制), d(删除), v(visual 选择), gU(大写), gu(小写)等等命令都是真实的。 |
第四层次 – Vim 超能量使用上述的命令,你就以为很爽了。可是如今,这里才是杀手锏。正由于其中有些特性,我才使用vim的。 在当前行移动:0^$g_fFtT,;
一个有用的提示:dt"→删除全部的直到”。 |
区域选择 : <命令>a<对象> 或 <命令>i<对象>这些命令仅仅能用在可视化模式的一个操做后。可是他们至关的有用。他们的主要模式有: <命令>a<对象> 和 <命令>i<对象> 命令能够是任何命令,例如 , d(删除),y(拉取),v(进入可视化模式)。对象能够是: w一个单词,W一个单词 (扩展的),s一个句子,p一个段落。并且也能够是普通的字符, 例如",',),},]。 假设如今光标在 (map (+) ("foo")) 这个字符串的第一个o上。
|
矩形选择块:<C-v>矩形选择块可以方便的对多行代码进行注释。 如:0<C-v><C-d>I-- [ESC]
提示:若是你的剪贴板在Windows中是非空的话,那么你就不得不使用<C-q>来代替<C-v>。 |
实现:<C-n>和<C-p>.在插入模式中:只要打出单词的首字母,而后按<C-p>,神奇的事情就发生了...
宏命令 : qa 作的一些事,@a,@@qa 把你的动做记录在了寄存器 a 中。而后@a 就会将存在寄存器中的动做重现,就好像你重新打了一边。@@是将你最后一次执行的宏命令再次执行的快捷键。
|
可视化模式选择: v, V, <C-v>咱们已经看到过<C-v>例子,这里还有v和V。一旦已经选择好了,你能够:
在可视化模式所选择的行的末尾添加一些东西:
|
分割:: split 和 vsplit这些是很重要的命令,因此你应该在:help split看看。
|
小结这些是我常用的90%的命令。我建议你天天学习一到两个命令。在两到三周以后,你将会感受到vim在你手上使用的是如此的强大。 学习vim更多的是记忆训练。值得高兴的是vim诞生了一些很是好的工具和优秀的文档。当你很是熟悉大部分基本命令以后就可使用vimtutor了。另外,你应该仔细的阅读这页 ::help usr_02.txt. 而后,你要去学习了解寄存器,插件已经其它的功能。学习vim就像学钢琴同样,全部的都要掌握好。 |
参与翻译(4人):Lesus, Garfielt, szkiti, 耀耀
本文转自:开源中国社区 [http://www.oschina.net]
本文标题:Vim学习指南
本文地址:http://www.oschina.net/translate/learn-vim-progressively