在Vim变得更好

Jam*_*mes 116 vim

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

我觉得我没有从我可爱的编辑器中获得最大的收益,特别是关于导航(特别是代码),复制和粘贴以及对现有代码进行其他操作.(虽然我对复杂的搜索/替换模式非常熟悉).

  • 我该怎么去学习更多?
  • 人们会推荐哪些资源?

Mat*_*iva 78

"为什么,哦为什么,那些#?@!nutheads使用vi?" 是对"Vim方式"的一个很好的介绍,特别是关于文本对象,这是Vim最具特色的功能之一.

  • 作为奖励,有一个很好的图形备忘单(链接在文章的最后). (3认同)

Sar*_*rah 66

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

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

map <up> <nop>
map <down> <nop>
map <left> <nop>
map <right> <nop>
Run Code Online (Sandbox Code Playgroud)

特别是

imap <up> <nop>
imap <down> <nop>
imap <left> <nop>
imap <right> <nop>
Run Code Online (Sandbox Code Playgroud)

  • 我喜欢禁用箭头键的想法,这是强迫自己停止使用它们的好方法. (5认同)
  • 禁用箭头键是很棒的想法,我现在正在做. (2认同)

gho*_*g74 23

  1. vimtutor在命令行上键入
  2. 进入vim,输入:help或 <F1>
  3. 订阅邮件列表
  4. 官方vim文档


Joh*_*web 16

还有两个提示:

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

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

  • 整洁,我不知道vimgolf! (2认同)
  • @Johnsyweb:我真的很想能够对所有东西都使用vim,但是如何呢?在每个Web表单中获取适当的vim克隆将是理想的-因为我发现的所有浏览器插件通常仅实现Vim功能的一小部分随机子集,并重新映射键绑定以适应浏览器仍需要的事实访问某些键映射。 (2认同)

Pao*_*sco 13

Bram Moolenaar自己写的一篇有趣的文章:有效文本编辑的七种习惯.

  • 有一段关于Bram在Google上关于此主题的演示视频:http://video.google.com/videoplay?docid = 2538831956647446078. (2认同)

Web*_*sel 10

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

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

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

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

一旦你有这个命令,从顶部开始.找到你一直做的动作的另一个命令......

您会惊讶地发现,通过这种方式获取新命令和技术的速度有多快.


num*_*407 7

如已建议的那样重新映射/禁用箭头键是强迫自己不使用它们的好方法.

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

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

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

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


Kon*_*rus 6

看到这个主题:Vim最有效的快捷方式是什么?

特别是第一个答案.

  • 作为"第一"答案的作者,我必须公平地说,它不一定是通常提高你对编辑的掌握程度的最佳指南.当您将其视为表达您想要操作文本,屏幕/终端以及编辑器本身环境的方式的语言时,它涵盖了许多可以用vi完成的工作.但是,很多东西都非常先进. (3认同)