起初学习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本身的局限性。