当前位置:  开发笔记 > 编程语言 > 正文

我正在寻找以智能方式学习Vim或Emacs的技巧

如何解决《我正在寻找以智能方式学习Vim或Emacs的技巧》经验,为你挑选了4个好方法。

我是一个非常开心的Eclipse用户(我主要使用PHP和Python开发),但是我找到了"Vim/Emacs在GUI文本编辑器上提供了哪些具体的生产力提升?"的答案.足够有趣,让我希望尝试Vim或Emacs,看看它们是否会成为一个更好的解决方案.

我普遍认为Vim和Emacs并不是你通过"玩它"而学习的那种编辑器.我有这样的印象,你必须花一些时间和精力来"研究"它们,然后才能从它们的力量中获益.

所以,我对社区有两个问题:

    在链接的线程中,响应者基本上通过评论Vim来回答(经常提到:"我确信Emacs具有相同的").Google趋势似乎表明Vim是两者之间最常采用的,但我的第一个问题是:我知道我之前没有任何经验,而且我在GNU/Linux上使用和开发(主要是PHP和Python)系统(Ubuntu,Arch Linux),是否有两个代表更好的选择?(要明确的是:我的问题不是关于编辑的质量,而是关于在我的情况下在战略上更好地学习的内容).

    对于如何学习使用它/他们,您会给我什么建议?我知道这是一个广泛的问题,但故意是这样.看看这个答案(不相关的主题),了解我正在寻找的那种信息/风格的答案[但不要觉得有必要以这种方式回答......任何形式的欢迎都会受到欢迎!]

编辑(选择"接受的答案")

我选择了一个答案作为刚才接受的答案,但我想对所有分享经验和建议的人说"谢谢" :几乎所有人都以某种方式对我有用.这个帖子肯定超出了我的期望!谢谢!:)



1> tosh..:

我建议检查两者是值得的,因为其他答案已经涵盖的各种原因或"Emacs vs vim vs XY"线程.

如果你不得不选择其中一个,我会选择vim,因为有一点:

可用性

Vi(m)的优点是几乎在任何*nix系统上都默认安装(不仅可用).因此,无论是您的系统还是其他人,或者您是否被允许对其进行更改,您最喜欢的文本编辑器和朋友都在那里等着您.

一旦你知道了 vi(m),在你进入机器并且需要用文本做某些事情(浏览文件,编辑等等)的情况下,它会感觉很棒.你会觉得自己像个国王.我记得有几次我几乎吓坏了,因为没有安装nano或pico而且我不得不使用"这个丑陋的野兽vi",当我开始打字时这会产生不可预知的事情(因为我没有插入模式,甚至不知道那是什么)当我很高兴用google搜索":wq!" 让我退出地狱.现在我可以回顾并对此微笑.

我普遍认为vim和emacs并不是你通过"玩它"而学习的那种编辑器

Vim和Emacs肯定是你" 通过实践学习 "的编辑.

当然,问题是要包括这些高度科学的文本编辑器学习曲线图=)

一些常见文本编辑器的经典学习曲线

Vim在开始时可能会有点困难,因为它的模态编辑起初可能会让人觉得很陌生.我认为动力是关键.文章" 为什么,为什么,那些#?@!nutheads使用vi? "解释了我认为的优点.在我看来,即使学习曲线可能比其他编辑更陡峭,也值得尝试一下,听起来你带来了必要的动力.

回到学习中.

我希望我第一次做的事情:

看看Vimtutor.这是一个交互式教程,通过展示它的基本命令以及它们如何组合来演示vim的强大功能.只需输入vimtutor您的终端即可.

在过去尝试用vim多次学习编辑之后,这帮助我真正" 得到它 ".该教程大大简化了学习曲线,因为它解释了命令并使您实际执行这些命令,从而成为一种习惯.与因为感到残疾而感到沮丧相比,这确实有所不同.使用vimtutor你也会看到模态编辑的好处是什么,而不是战斗或忽略它,你将接受它,因为你已经体验到了第一手的优势.我想这一切都很难自学.所以这30分钟非常值得.


作为一个Emacs用户,我不喜欢你的结论,但不能错误的逻辑.每个可能触摸过Unix盒子的人都应该学习至少足以进行简单编辑并保存的vi.即使您要使用emacs作为主编辑器,vi的简单性和可用性使其成为您可能需要远程登录的非机器机器的小配置更改的首选编辑器.

2> Jason Baker..:

我普遍认为vim和emacs并不是你通过"玩它"而学习的那种编辑器.

我对emacs的体验实际上恰恰相反.我尝试过阅读教程,但似乎没什么帮助.我最终学习的方式是使用参考卡,并强迫自己在我的代码上使用emacs,直到我得到它正确*.然后,我也有一个螺丝松动.你的milage可能会有所不同.在禁止的地方提供无效 你明白了.

我记得在某个地方读到的另一条建议是尝试写下你想要学习的大约10个命令的列表,并在编码时保留它.一旦掌握了这些命令,再制作另外10个命令.继续这样做,直到你有足够多的编辑器致力于记忆.

*请注意,链接的参考卡已过期.如果你谷歌,你可以得到一个更新的参考卡.

知道我对这两者中的任何一个都没有任何经验,并且我在GNU/linux系统(ubuntu,archlinux)上使用和开发(主要是PHP和Python),是否有两个代表更好的选择从...开始?

我是一个emacs的家伙,所以我的意见应该是显而易见的.也就是说,你可能最好尝试一下你认识的人似乎更多.有经验的emacs(我会假设是vim)的人是一个很好的帮助.

如果您不认识使用任何一个的人,请选择您认为最漂亮或最酷的名字.你不会知道你想要哪一个,所以你不妨任意选择.


第二个想法是在你面前张贴参考卡,然后开始'玩'emacs.这就是我熟悉emacs的方式.

3> dimba..:

对于vim尝试vimtutor


@everyone阅读这个答案并想知道_vimtutor_是什么:vimtutor是一个插入shell的命令.请参阅:http://gd.tuwien.ac.at/linuxcommand.org/man_pages/vimtutor1.html

4> Dave Kirby..:

我在经过多年的Windows开发后开始使用Linux时来到Vim,并且必须通过ssh在远程系统上做很多工作.前几周讨厌它.在那之后我不能没有它.

可能最好的方法是在简易模式下使用Vim([g] vim -y),大多数安装都有一个名为evim的快捷方式.这在默认处于插入模式的模式下运行vim,并将键重新映射到通常的Windows(ctrl-S保存,ctrl-X切割等).然后,您可以像常规Windowsy编辑器一样使用它,但仍然可以访问Vim的强大功能.

还有一个Cream是Vim +一堆脚本,使它的行为更像Windows编辑器.

我开始使用evim和Cream,但发现我逐渐过渡到使用100%vim.

此外,如果您使用gvim,那么大部分功能也可以通过菜单获得,您可以看到相同功能的击键.

另请阅读文档 - 每个方面都有大量的帮助文件.我仍然不时浏览它们并找到新的东西.


即使作为Emacs用户,我也认为:任何使编辑器"更接近"Windows世界的东西,都会在我的字典中向后移动.
推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有