包含vimemacs的词条
本篇文章给大家谈谈vimemacs,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、为什么总感觉国内emacs远不如vim流行
- 2、为什么有的程序员极度推崇 Vim 和 Emacs,却对 IDE 嗤之以鼻
- 3、bvim与emacs的相似的差异
- 4、嵌入式软件开发也可以用vim/emacs吗
- 5、Vim 和 Emacs 分别适合哪些人群?优劣势的对比如何
- 6、emacs与vim相比有哪些优点
为什么总感觉国内emacs远不如vim流行
追求独步天下的高手和低手们争着一睹它们的风采,可看到它们朴素单薄的界面后,不禁心下怀疑:这就是神器吗?甚至有人生了轻视之心。肤浅的人嗤之以鼻,说:什虚弯槐么年代了,还抱着这么老土的玩意不放,真他妈Geek!同学,请冷静下来,听我说:它们的确够老了,都几十年的寿命了,但你想想为什么,为什么这么古老的编辑器,却有越来越多的人皈依它们。Windows下用UltraEdit和Editplus的人质问:它们到底比UltraEdit和Editplus好在哪里?我说:不可同日而语。连UltraEdit和EditPlus都没用过的同学问:它们就相当于Linux上的 Notepad吧?我说:请你从我的眼前消失。一些人勇敢地拾起了Vim或Emacs,却发现学习曲线陡峭而漫长,于是在没发现它们的强大之前就放弃了,说:太难用了,把键盘当鼠标用的烂玩意,有什么好的?还是有一些人留下来了,坚定地守护着这两大神器。一些说葡萄太酸的人想离开又不甘心,总是问:它们到底神在哪里啊?我不禁想起了李宗盛的几句歌词:: 有人问我你究竟是哪里好,这么多年我还忘不掉?春风再美也比不上你的笑,没见过你的人不会明了。 也许你不会明了,我还是要努力讲一讲。1 上已经有数千个脚本了,给Vim增加各种各样的特性和功能。为了证明Vim的可扩展性不输于Emacs,也有用户写了在Vim中玩游戏、运行Shell、和集成GDB在Vim内部调试的插件。客观地讲,Vim的脚本语言与Emacs的ELisp相比,略显逊色,但这丝毫不妨碍它把Vim扩展成非常优秀的编辑器。说到底,Vim的前身Vi和Emacs的设计采用了不同的哲学, Vi更符合Unix传统,它通过管道机制和系统内各种积木工具打交道,它讲究的是和系统内的工具程序协作来完成用户的任务。和Emacs相比,它的定位很明确,就是要做一个强大的编辑器。因此Vim的绝大部分扩展,都是为了更好地完成编辑文本的任务。海纳百川,有容乃大。Emacs和Vim通过别的编辑器无法比肩的可扩展性,不断吸收广大用户的智慧,是它们能成为“神器”的原因之一。2. 特立独行的魅力2.1 可扩展性让你倾注了灵魂一旦你意识到Vim或Emacs的强大,你就踏上了不停发掘它们潜力的漫漫长路。你不停地改进自己的配置文件,你不停地搜索更好的插件,甚至有一天你差友开始动手写自己的插件。就像剑客保养自己的剑一样,你也甘心花时间提升你的Vim或Emacs。经年累月,不知不觉,你已经在那把剑上倾注了你的灵魂。2.2 独特的操作方式让你中了毒Emacs和Vim有着迥异的操作方式,却成了Unix/Linux世界中两种代表性的操作方式,有些软件的操作方式类似Vi,而有些软件的方式类似Emacs,甚至有些软件提供了Vi的键绑定和Emacs的键绑定让你选择。而无论哪种操作方式,对Windows用户来说都是古怪的。虽说古怪,多少代人也验证了这两种操作方式的高效。Emacs号称Ctrl到死的编辑器。其实它几乎用了所有的辅助键,听说过没有,Emacs = Esc + Meta + Alt + Ctrl + Shift。所以高德纳大师说操作Emacs,就像弹奏管风琴。 Emacs使用非常多的组合按键,这大概也是它高效于其它无模式编辑器的原因之一。你也可以定义自己的组合键序列,调用自己写的lisp函数,完成自己想要的功能。Vi一向是以快速的文本编辑闻名于世的。它的按键更简洁,通常是单个字符按键,就实现某种操作。但这是以有模式为代价的。你要不停地按Esc在从它的插入模式返回Normal模式。客观得讲,在文本编辑方面, Vim比Emacs高效,因为它提供了一些Emacs没有对应功能的操作来辅助高效的文本编辑。但它的模式切换也让一些人受不了,于是那些人选择了 Emacs。不管你选择了Vim还是Emacs,你闹迅都要为习惯它们独特的操作方式而努力,这是一个技艺积累的过程。当你习惯了Vim或Emacs,你会有欲罢不能的感觉,你希望用它们完成尽可能多的任务,因为你再用别的编辑器也已经不习惯。用Vim或Emacs就像吸食毒品,慢慢地就会上瘾。它们会带给你渐渐强烈的快感,但你也向它们献出了自己的灵魂。这时,你只能称它们为神器。3. 黑客的编辑器Vim的前身Vi的作者Bill Joy和Emacs的作者Richard Stallman 都是那个时代著名的黑客,所以这两款编辑器一开始面向的主要用户就是写程序的人,现在仍然是。它们对编程加入了越来越多的支持,如语法高亮、智能缩进、关键字补全甚至集成调试。也有越来越多的程序员从IDE转向了Vim和Emacs。用Vim和Emacs编程到底有什么好处?我想首先是它们高效的编辑操作会提高你的编程效率。其次你可以用它们完成各种语言的编程,所谓一剑在手,夫复何求。你不用再因为编程语言不同去学习不同的IDE的使用,那些庞大的IDE的升级换代也与你再不相关,你把精力用于学习编程语言本身就好了。听说Google和微软内部开发也都不用IDE的,他们也会用Emacs或Vim。因为我写的程序不多,还不能深入体会用Vim或Emacs开发程序的乐趣。我只是觉得这很酷,你看,Linux之父Linus多年来用的是一款 MicroEmacs,它比GNU Emacs或XEmacs少许多功能,但Linus就是用它在维护Linux。 微软的大牛Don Box,Com之父,一直用Emacs,他说谁也不能夺走他的编辑器。他还在网上放了一段他用Emacs写C#程序的视频。编程大师们的选择,也是Emacs和Vim被追捧为神器的原因之一。4. 神器引发的圣战Vim用户和Emacs用户有着旗鼓相当的品位,应该互相欣赏才对。现实却是,忠诚于Vim的用户和忠诚于Emacs的用户互不相容,常常没完没了地打口水仗。Emacs用户说Vim的操作方式单一而古怪, Vim用户说Emacs体积庞大,启动缓慢。很有点一山不容二虎的意思,大概因为二者都处于神器的高度,才会斗争不断吧。也可能是因为二者截然不同的设计哲学吸引的用户在价值观上也互不认同。
为什么有的程序员极度推崇 Vim 和 Emacs,却对 IDE 嗤之以鼻
起初学习Linux和Vim, 纯粹是虚荣心或者说那个时期叛逆心理的作用, 当时对Linux和Vim一知半解但是总是对同学说, Vim多好多好, 其它编辑器都是渣渣. 当然当时对IDE还存在着崇拜心理, 只不过偶尔听到某某大神说, IDE会让人屏蔽很多细节, IDE什么都帮你做了, 你会变傻的. 从那时就有了一种, IDE挺强大, 但是Vim更利于学习, 学生么, 当然学习为主, 慢慢开始排斥IDE…
后来, 大学毕业, 工作是在嵌入式系统里编程, 或者是在linux服务器上写服务, 主要都是C语言的. 根本用不到IDE加之之前学习的, 基本上IDE的能够实现的功能, 用命令行+Vim基本都能实现. 逐渐自己慢慢在和别人的交流中就变化了. 出口Windows垃圾, IDE渣渣, 用IDE基本就是低端的象征, 当时的思想极端到自己用C语言, 连C++都看不上, 更别说JAVA或者C#之流, 所以IDE进一步在我的世界里疏远, 并且开始有主动鄙视IDE行为. 当时极端到什么程度, 到一台新电脑上, 总是把命令行窗口最大化或者干脆直接切文字终端, 别人看见以后总会投来膜拜的眼神, 自己洋洋得意, 其实在命令行下也没干什么…回想一下, 太天真.
在后来, 工作越来越忙, 看的代码写的代码越来越多. 由于工作原因Vim成为了必须用的东西, 因为好多项目, 都是用命令行编译, 好多vim编辑的痕迹, 自己为了更快速方便的工作, Vim就用的更多更好, 逐渐发现, Vim确实好用, 而且非常好用. 这个时候我就能真正的说, Vim真的增加了我的工作效率. 这时候一个事情改变了我的想法, 一个同样热爱命令行, 热爱vim同事, 但是他的工作是JAVA, 人家在浏览代码的时候只需要Ctrl+鼠标就可以完成跳转到类定义, 但是他还要用grep, 找关键词, 用vim打开, 然后修改. 我开始变的不理解他的行为, 开始转变对IDE的看法. 合适场景用合适的工具. 最后有意思的是, 那位vim达人最后因为公司让他长期搞Java, 他终于选择了离开, 去了一家知名的做路由器的公司做底层了, 听到这些的时候, 我心里其实蛮开心的.
现在, 我团羡开始做iOS编程, 等于说换了行业. 这时即使Vim再牛逼在快, 它也完成不了Xcode所能完成的事情, 从项目创建, 到自动添加所需的库, 自动的笔误的代码, 最后打包签名上传. 有人会抬杠说, 这些其实在Mac OS X中都可以用命令行做到. 我想说的是, 能做到又怎么样?你用命令行写的App能在总榜排到第几? 话说回来, 我现在是Xcode + XVim插件, 在编写程序的时候, 还是Vim习惯, 做其他事情的时候用XCode功能, 这不是两全其美么, 效率还奇高. 现在我是不愿意参加什么Vim牛逼还是IDE牛逼的圣战了, 如果讨论怎么把App或者游戏做到总榜前10我还有点兴趣.
总结:
回想一下, 如果一个人总是在说Vim或者Emacs牛逼IDE是渣渣不要怪他, 先看看他做的事情, 如果做linux kernel他能用什么IDE, 完全可以鄙视他; 如果他为开源贡献了xx行代码, 为linux贡献了xx代码, 牛人总有牛的道理, 偏执狂才能改变世界么; 但是如果他搞的是神马框架或者Java, C#之类的, 用Vim和Emacs是不是在折腾自己呢, 不如看看他用工具做出来的东西怎么样吧. 其实, 这些都是工具, 能用工具给养活自己, 甚至帮助别人, 对这个世界能有贡献是不是更重要的事情呢? 年轻的时候用外表, 用自己用的工具, 用Vim用Emacs来证明自己牛逼是太正常的一件事了, 因为自己还年轻, 不足以那那些纳盯实在的事情来证明.
最后:
如果让我选择用Vim还是IDE来证明自己, 我当然是愿意用Vim. 因为Vim才是我喜欢的范, 但是如果别人用IDE来证明了自己, 我塌茄拍也同样会拍手叫好, 因为他们已经证明了, 用什么重要么?
发布于 2013-12-07 19 条评论
赞同
19
反对,不会显示你的姓名
陈达野,"Vim用户"."Linux爱好者"."GFW受众"
知乎用户、赵文博、ccoder 等人赞同
科普:
1.vim里删除一行是dd,删除一百行是100dd,不需要进入什么命令行。除非您用的不是我们这个世界的vim。
2.有个名叫make的程序,只要在一个名叫makefile的文件里写好编译规则(也可以通过一些工具自动生成)就可以编译,不需要你输入大堆的编译命令。只要在vim里绑定一个快捷键就可以像vs一样的一键编译。vs里也有一个叫nmake的东西,用来干差不多的事,你可以在你的vs的安装目录里找到。我的vim配置里专门给F5绑定了一个函数来实现一键运行,会通过文件类型判断该怎么做。是python脚本就调用python,是shell脚本就调用/bin/bash,是html就调用浏览器,是c就调用gcc进行编译然后运行,我真的不知道要输入命令干嘛。
说说我用vim的原因:
1.我不是java程序员也不是c#程序员,用不着vs或者eclipse。
2.上面很多人说过了,ssh连接到linux服务器上,除了vim或者emacs还真不知道有啥编辑器好用。
3.我懒。用vim用不着正襟危坐。往椅子上一躺(那角度真的是躺),双手懒洋洋搭着键盘,手指啪嗒啪嗒的敲就行了,手肘从头到尾都不用挪位。
PS:作为一个vim爱好者我从不会鄙视用IDE的,我只鄙视用IE的。
编辑于 2013-08-20 9 条评论
赞同
388
反对,不会显示你的姓名
仲晨,人生的路啊,都是自己选的
赵胜利、周笑镭、Dragoon Bentus 等人赞同
实用是好事儿,但经常会丧失解决复杂问题的便捷性。
比如处理数据,简单的我也用Excel,但用着用着,碰到诸如特定需求的排序去重,不仅得绞尽脑汁旁门左道,还得查半天函数手册。下次,我不如直接写bash脚本或python处理来的快,尽管它们入门学习成本较大,但能够在未来的路上让我避免掉大量Excel本身的局限性。
[img]bvim与emacs的相似的差异
不知提问者问的“相似的差异”是什么意思?我就分开说说个人理解的相似和差异。平时对二者的使用都很多,算不上精通也可以算熟悉吧。
相似的地方,二者都可以当成可定制的编辑器来使用,可以高效地编辑文本。
差异:vim的功能基本上都是和编辑功能相关,而emacs的功能要远超这个范围,更像个操作系统。
emacs基于elisp语言,可扩展性更强,可以实现的功能也更多。在里面除子颂旅文本编辑,可以来操作远程的服务器,可以收发邮件,可以浏览网页,可以听歌,甚至可以煮咖啡……
使用vim和emacs的人群经常有些关于哪个才是No.1的编辑器争吵。个人感觉如果只是完成与文本相关的工作的话,vim的编辑效率更高。而emacs功能更强,具备一些vim不具备的能野雀凳力。其实emacs也有个叫evil的插件实现vim的键位,所以我是从vim转向emacs的,但在emacs中间岁扮也经常用evil来使用vim的文本编辑方式。
学习难度上,vim的学习曲线有点陡,开始时有点摸不着头脑,但理解了它之后会运用如飞。emacs的学习曲线很难说是什么样的,开始的时候起码是比较容易就可以开始打字的,但真要定制成适合自己,是要有一种折腾和钻研的精神的,否则不能说是真正用好了emacs。如果只是编辑文本相关的内容,或者是经常在term里面管理远程脚本,vim更适合,如果需要更多的功能,可以选emacs.
嵌入式软件开发也可以用vim/emacs吗
当然可以了,只要是软件开发,都李消哪可以使用vim./emacs,做为编程开发的编辑器,哪码vim/emacs一直是代表。vim和emacs还是有些不同,vim 和 emacs 分别被称为「 编辑器之神」与「 神之编辑器」,自有其独到之处,自己还是实践开发中选择适合自桥肢己的,个人比较喜欢 vim,因为真的太效率了。
Vim 和 Emacs 分别适合哪些人群?优劣势的对比如何
我用了四年Emacs,中间也用了一段时间Vi。现在主要用Emacs,用插件Evil-mode来模拟Vim键位,偶尔使用Vim来打开超大文件,或者很简单的操作。
Emacs Vs. VIM,Emacs和VIM之间嘴炮或宴戚如此之多,一定有各自巨牛逼的地方,这篇文章写得简短清晰,直达本质。Why Atom Can’t Replace Vim。它说Emacs 最牛逼之处Extensibility,可扩展性祥枯。而VIM最牛逼之处在于Composability,操作的组合衫陵能力。这也是我使用Emacs+Evil的原因,Extensibility和Composability两者可兼得。
Emacs插件很多,很强大,当然vim下面也有同样强大的插件,除了org-mode,一直用它做笔记,非常好用,强大到逆天。
小手指的问题不是问题,用了Evil-mode之后,Ctl键频率小很多很多,但我还是把Ctl和Caps Lock对调了。对调的好处不仅在于使用Emacs方便,几乎使用所有软件都会有好处,只要你经常使用快捷键,并且快捷键中有Ctl键。比如在Chrome里面关闭标签Ctl-w, 关闭各种窗口。在Office中复制Ctl-c, Ctl-v。总得来说对调两个键之后,生活美好了很多,不仅仅在Emacs中。
Emacs的乐趣,在我看来,使用Emacs最大的乐趣来自于它的强大的Extensibility,使用elisp来编写自己的插件。由于elisp基于Emacs这个牛逼平台,往往几十行,甚至几行elisp代码就可以写出强大的插件,大大方便你的操作。如果插件有通用性,还可以共享给他人,方便他人,并给开源社区作贡献。
如何学习Emacs?每个人都不一样,另外这个一点都不难。别被什么“陡峭的学习曲线”这种鬼话给吓住。我能想到的最快的方式就是看Emacs教学视频,如果你第一次看,肯定经常有“哇,居然能这样”的感觉,这样兴趣就来了,学得也会很快。网上有很多,自行google。
emacs与vim相比有哪些优点
两者的编辑模式有着比较明显的差异,也透露出来两者设计的哲学的不同。
vim更偏向于简单中的复杂。
而emacs则是复杂中的简单。
emacs可扩展性极强,在你逐渐深入的过程中,你会发现,它会成纤派长:文本编辑器--duang!--瑞士军刀,无所不能。当然,前提是你有时间,有精力陪她一起成长。对了,它的禅盯快捷键是以组合键的繁杂而闻名。(当然也有插件来解决毁袭贺这个问题)
vim犹如一把利刃,犀利,快捷。开箱即用。但是他的快捷键很有特色。键盘上的各种符号键也是利用的很广。
同等起点下,感觉倒是emacs更容易些。因为他不区分输入模式。而对于初识vim的用户,恐怕,不同模式的应对就是一个坎。(想起了退出vim的梗)
(当然,深入的使用我也没用过。因为我受不了emacs的启动时间,毕竟我只是用它作为普通的文本编辑器。我也有卸了vim,因为,有些sublime的功能,不好被替代。是的,我用sublime作为日常文本编辑使用,启动够快,界面够炫,而且,vim令人痴迷的hjkl快捷键,sublime虽然支持的不是很完美,但是也可以使用的。)
关于vimemacs和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。