如何高水平学习vim?[关闭]


77

我知道vim(如emacs)对于程序员来说是非常强大的编辑器,只要您知道如何使用它,其快捷方式等等。我可以采取哪些步骤以及可以阅读哪些教程来成为高级vim用户?


您可能要参考这里的社区维基- ubuntu.stackexchange.com/questions/804/...
myusuf3

Answers:


116

步骤0:学习触摸式输入。严重的是-如果您的手指不知道按键在哪里,那么vim会很痛苦。即使您拒绝vim,触摸输入也将使您无心监视链接摩擦,从而改善您的编程(向Steve Yegge咨询)。有一个很大软件,可以帮助提高你的打字。

步骤1:使用键盘偏好设置交换Caps Lock和Escape-认真地说,您多久使用一次Caps Lock?使用vim时,您将一直使用Escape,并且在主行上提供它会产生很大的不同。对于标准的Ubuntu桌面,请浏览以下菜单:系统->首选项->键盘->布局选项卡。然后点击“布局选项”按钮,单击“ Caps Lock键行为”旁边的三角形,然后选择“交换ESC和CapsLock”。(请注意,此操作已更改- 请参见14.04中的操作方法

步骤2:使用vimtutor入门。它在gvim中(我认为在帮助菜单下),也可以在命令行中键入“ vimtutor”。这将花费您30-45分钟的时间,然后您的手指就会知道vi / vim的基础知识,并且您应该能够编辑文件而不必将键盘滑出窗口。

第三步:在各处使用vim。请参阅StackOverflow上的此问题, 以获取有关在命令行中从Web浏览器使用vim和vi键绑定以在IDE中编写电子邮件的提示和链接。 。

步骤4:进一步了解vim。您只会用vimtutor刮擦表面。您可以

我经常建议学习一小撮知识-那里的东西太多了,坚持一口大小的块将是巩固知识的最佳方法。

步骤5:利润:)


10
无法对此进行足够的投票:)
tutuca

非常感谢您的最佳回答!幸运的是,我已经接触过打字员。:)因此,我将按照以下步骤进行操作
Zango 2010年

1
步骤2非常重要。将vim从痛苦转变为我最喜欢的编辑器。
马修

2
我想推动第3步,您甚至可以在Windows或Mac上使用(g)vim或...(请参阅vim.org/download.php)仅使用一个编辑器会让您更加熟悉它。
ddeimeke

使大写锁定额外的控件(或交换它们)。Vim有很多ctrl用途,比我使用的Escape还要多(无论如何,我都是通过imap kj来逃逸的),但是这种方便,容易的控制键在我使用的其他每个程序中也很有用。


14

两件事情:

  1. 学习触摸打字。真的没有其他办法了。然后将ESC绑定到“ ;;” 这样您就不必离开自己的家了:inoremap ;; <esc>

  2. 搜索github上了别人的.vimrc小号

第三:VimCasts




6

这听起来很愚蠢,但要了解vim的帮助命令。帮助系统非常直观,易于浏览。

输入即可获得帮助:help。您可以通过在命令行中添加特定主题来查找特定主题(例如:help insert)。您可以在键入一个或多个主题字符后点击选项卡来循环浏览主题。

该帮助是超链接的,链接以粗体或彩色文本表示。您可以通过以下方式跟踪链接:在光标位于其上时,按<Ctrl-]>,然后按<Ctrl-t>返回。要获得帮助,请键入:q


1
并且其中有两本完整的手册:用户手册和参考手册。只需使用vimtutor和:help即可成为Vim专家。
Marius Gedminas

5

一些很好的答案。绝对要尝试将其整合到日常生活中,并确保您一次也不要过多地充斥大脑。一个星期要学习的东西太多了。

刚开始时,每周只需要一个/两个新命令/键即可。使用它们并将它们根植到您的大脑中。您不想整天都参考备忘单。

我有一个样本vim config设置,它确实记录在我为人们发布的文档中:http : //github.com/mitechie/pyvim

但是不要只是复制/粘贴。确保您了解vim配置中的内容,以免忘记/误解它对您的影响。

并且我已经开始做一些vim截屏视频:http : //lococast.net/archives/111




3

我知道我可能会对此回答产生负面反馈,因为这可能会伤害vim粉丝和用户:首先问问自己要做什么。并且只有在vim是完成特定任务的最佳工具时,其他所有答案都会告诉您。

或者说更多的图像:您可以尝试用锤子获得比现在快一倍或更快的速度。但是根据具体情况,螺丝起子可能比锤子更有帮助。:)


4
是的,作为vim爱好者,我不得不说vim不仅仅是锤子。它可以为sysadmin,db admin,程序员(任何语言)甚至任何普通的简洁文本编辑器提供有用的使用。默认情况下,它是在每个系统上默认安装的,这是有原因的,我不知道有很多情况“您真的需要了解它吗?”除此之外,用户明确发布了此信息,以寻求前进的途径/帮助他们的vim知识和经验。
瑞克(Rick)2010年

1
我完全同意你的看法!
ddeimeke 2010年

2

我还没有真正学习过Vim,但是我认为通过使用Firefox的Pentadactyl扩展程序进行所有浏览,当我开始这样做时,将不会那么困难。

使用Ctrl T可以将任何文本字段和命令行视为Vim普通模式(如果更改设置,则可以自动将其视为普通模式);但是,由于许多操作被解释为全局操作,因此此刻它对我来说是失败的,例如,尝试用p粘贴会打开带有缓冲区中文本的url,然后尝试使用r覆盖文本 重新加载页面。但是您可以通过按Control I在Gvim中打开文本字段,因此这并不是真正的问题。

另一个问题是,由于您还有另一种需要竞争的模式,因此它使使用Gmail或“记住牛奶”这样的网站更加棘手。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.