在Vim变得更好

时间:2010-03-14 10:10:43

标签: vim

我一直在使用Vim很长一段时间,但是我处于大多数时间使用插入模式的水平,我仍然使用箭头键移动(!)。

我觉得我没有从我可爱的编辑器中获得最大的收益,尤其是关于导航(特别是代码),复制和编辑的问题。粘贴,并对现有代码进行其他操作。 (虽然我对复杂的搜索/替换模式很满意。)

  • 我该如何学习更多知识?
  • 人们会推荐哪些资源?

19 个答案:

答案 0 :(得分:78)

"Why, oh WHY, do those #?@! nutheads use vi?"是对“Vim方式”的一个很好的介绍,尤其是关于文本对象,这是Vim最具特色的功能之一。

答案 1 :(得分:66)

以下是一些awesome screencasts,可以让您了解接下来要学习的内容。还有中级和高级主题的视频,但新手实际上是最重要的。

此外,当我觉得我停滞不前并且没有真正学习“Vim方式”时,我选择在正常模式和插入模式下禁用箭头键。这迫使你使用ESC来到某个地方,让你觉得更像Vim。最终,我在插入模式下再次启用了箭头键,但我几乎没有使用它们。最常见的是,有更好的出行方式。

map <up> <nop>
map <down> <nop>
map <left> <nop>
map <right> <nop>

特别是

imap <up> <nop>
imap <down> <nop>
imap <left> <nop>
imap <right> <nop>

答案 2 :(得分:23)

  1. 在命令行上输入vimtutor
  2. 进入vim,输入:help或<F1>
  3. 订阅mailing list
  4. 官方vim docs

答案 3 :(得分:16)

另外两个提示:

  • 使用Vim编辑所有内容(电子邮件,网络表单,代码......)。当感觉缓慢时,可能有更快的方法。 :helpgrep是你的朋友。

  • 前往http://vimgolf.com/并参加比赛。我通过这种方式学到了很多技巧和窍门。 [免责声明:在VimGolf竞争时,“失踪”的长时间内不承担任何责任。

答案 4 :(得分:13)

Bram Moolenaar自己写的一篇有趣的文章:Seven habits of effective text editing

答案 5 :(得分:10)

这就是我学习Vim(以及其他一些东西)的方法。这很容易。

浏览帮助文档,找到您一直在做的事情的命令。例如,删除整个单词。请记住这一点。

现在,下次当你发现自己打'xxxxx'删除一个单词时,停下来,把它放回去并使用新命令。如果必须,请查阅。因此,不要点击'xxxxxx',而是回到'dw'。

一遍又一遍地这样做,一开始会很慢但最终会坚持下去。

一旦你掌握了那个命令,就从顶部开始。找到你一直在做的动作的另一个命令......

你会惊讶地发现,以这种方式获取新命令和技术的速度有多快。

答案 6 :(得分:7)

按照建议重新映射/禁用箭头键是强迫自己不要使用它们的好方法。

另一件需要考虑的事情是:如果在键盘上按Esc一点都不舒服,您可能希望在操作系统中将Caps Lock重新映射到Esc。对我来说,这是一个非常有用的步骤,因为Esc在我的KB上是一个尴尬的范围,这是让我处于插入模式的另一个障碍(因为它很难脱身)。在Caps Lock上使用Esc使其成为一个很小的范围,并且进入和退出插入模式的速度非常快。

为了在Vim中学习高级内容,最好的资源是:help,但是为了获得基础知识,你只需要这样做;它的肌肉记忆比什么都重要。你说你知道搜索。有意识地将它用作导航工具。搜索[/,?]和基于内联字符的搜索[f,F,t,T]是一些关键的Vim导航工具。只需使用它们;与禁用的光标键组合,您将立即在肌肉记忆中进行导航。

文字对象。轻松编辑器的最佳功能之一。这是立即有意识地练习的另一件事。像'yiw','dit'等东西是如此强大和快速;学习和单独使用它们会让你感觉像是一个Vim用户。

一旦你有了文本对象和基本的导航,那么现在是时候继续阅读和学习:定期帮助,并在网上搜索精彩的插件。说真的,你可以使用Vim多年,并有一个“啊哈!”一瞬间意外地绊倒了一些晦涩难懂的小故事:帮助你从来不知道。

答案 7 :(得分:6)

请参阅此主题:What is your most productive shortcut with Vim?

特别是第一个答案。

答案 8 :(得分:4)

答案 9 :(得分:3)

  

我该如何进一步学习?

完全阅读vim手册 (键入:h;您可以从那里浏览)。这就是你了解所有动作和命令的方法。如果您已经了解基础知识并希望改进,那将是最有用的。

  

人们会推荐哪些资源?

vim.org,浏览the most popular vim scripts。如果您感兴趣,请检查它们的来源。或者只是安装它们并享受。该网站包含大量脚本链接,可帮助浏览不同语言的源代码;在那里找到它们相对容易。

StackOverflow.com也might be of help

答案 10 :(得分:3)

我制作了这个游戏以帮助我的侄子学习,但它只适用于Firefox和Chrome&gt;。&lt; http://kikuchiyo.org

目前,它只处理移动和进入插入模式。 Beta版允许你用光剑攻击敌人,左边是'i',右边是'a':P

继续努力学习Vim,值得付出努力!

:)

答案 11 :(得分:2)

答案 12 :(得分:2)

我时不时地看一下Best of VIM Tips的这个列表,我仍然会定期接受新的技巧。

答案 13 :(得分:2)

  

我仍然使用箭头键移动(!)。

我认为没有问题。

坦率地说,你必须使用vim和缺少箭头键的键盘的概率是多少?

你知道,大多数人使用vim是因为它完成了工作(哦,好吧,因为他们在为他们完成工作时掌握了它的水平),而不是精英主义者(就像没有使用箭头键)。

有关改善vim知识的一些建议:

  • 定期在随机位置打开vim帮助并阅读随机不同的功能。这将花费你几分钟。您可能在接下来的X年中不会使用此功能。但是如果你很幸运,那么当你看到你可以运用你对该功能的知识来完成某项任务时,你将处于这种状态。您将再次打开帮助以刷新记忆。在实践中使用该功能几次后,它会坚持下去。此时,您的vim知识将得到改善。
  • 使用:helpgrep挖掘文档的随机位置。如果您需要做某些事情并且在文档中找到解释它的地方,请不要就此止步。再次阅读文档片段。找到关键字。对于每个关键字,请使用:helpgrep关键字来发现与vim文档的其他部分的逻辑链接。

答案 14 :(得分:2)

我停止使用箭头键的方式并没有禁用它们(我仍然在插入模式下使用它们)但是如果你想要它,你想要使用你的小手指,即l键,左手食指h键,&amp;无名指(“振铃”)k键&amp; “选择”j键。

所以你手上的四个数字中的第一个(忘了拇指)指数一个是最左边的&amp; Pinky是最合适的。在电话呼叫中使用“振铃”这个词,用你的无名指&amp;中指无处可去但却失望。

我发现忘记密钥命名的内容(h,j,k,l)也很有帮助。没有一个很好的助记符来记住它,就像我发现的那样。使用这些键也没有太多映射。

答案 15 :(得分:1)

答案 16 :(得分:1)

我认为视频对学习很有帮助。

  1. Derek Wyatt's on vimeo
  2. vimcasts

答案 17 :(得分:0)

1-阅读this

2-如果你使用rss阅读器订阅这些页面

page 1

page 2

答案 18 :(得分:0)

http://www.vi-improved.org/tutorial.php&lt; - 你应该阅读并畅谈这个聊天,这对初学者非常有用。快乐的vimmer