分享 说说我的开发工具 Sublime Text 2 和对 Vim 的研究

ery · 2012年06月15日 · 最后由 liwen_zhang 回复于 2013年08月03日 · 69039 次阅读

刚才看见<<为什么你们用 Vim 和 Textmate 而不用 IDE>> http://ruby-china.org/topics/622

很惊讶,这个帖子还没有沉, 但是又想了想,当时这个帖子对自己的帮助。 觉得其实还是不沉的好, 因为这个社区,毕竟还有很多新人。 于是写了一些回复,发现写了很多, 于是想新建一个帖子吧, 说说我现在的开发工具-Sublime 以及那个 Vim。 我的系统是 Ubuntu 12.04。

关于 Sublime(Sublime Text 2)

最近六个月, 我一直在用 Sublime 做 Rails 开发 我爱死 Sublime 啦, Sublime 最让人满意的是, 速度极快,编码的时候,感觉非常的流畅。

以下是 @camel 曾经提到的四个问题:

1、代码自动完成 Sublime 的自动完成功能很不错, 而且支持 Snippet

不过,没有大型 IDE 中的那种“函数名自动提示“的效果, 就是,变量名后面,输入个点, 就自动列出所有可以使用的函数。 对于,Ruby 这种动态语言, 想实现这种效果,开发成本太高了。 我不奢望啦。

2、查看源码 我用 CTags 实现查阅源码 Sublime 有 CTags 的插件 如果你之前和我一样, 没用过 CTags 的话, 那么先 google 一下 CTags 吧。

3、Debug 我不知道 Sublime 中, 如何做 Rails 或者 Ruby 的 debug。 但是我用 Pry 做 Debug(感谢@gene_wu的推荐) 用 Pry 做 Debug 真的很爽

4、速度 Sublime 非常流畅

以下是我常用的组件

Package Control Alignment Simple Rails Navigator Rails Related Files CTags Coffeescript RubyTest

关于 Vim

我用 Vim 只有一年的时间, 我对 Vim 不是很熟悉, 只会一些最基本的用法, 而且主要是在 ssh 登录服务器的时候使用, 在桌面环境下,我用 Gedit,或者其他编辑器。

我用了将近一个月的时间, 研究了一下,使用 Vim 进行开发 Rails。 我在 Vim 中安装了不少的组件, 我发现, 需要做太多的配置, 需要记住太多的快捷键,

最后, 我在使用 Vim 开发 Rails 的时候, 依然感觉很吃力,依然不是很顺畅。

由于,工作和时间的原因, 我决定,暂时不再投入大量的时间研究 Vim。 我决定,利用今后用琐碎的时间继续研究。

最后, 我的结论是, 用 Vim 做为 Rails 的开发工具, 入门成本有点高, 要想达到熟练的程度,需要太多的时间。 我投了一个月,没达到理想效果。

最后, 我又还是回到了 Sublime 中。 我很庆幸,Ubuntu 中有 Sublime。 稍后,有时间我一定会去买一个序列号。 我不希望 Sublime 的开发因为资金的原因停止。 目前我们的开发团队严重依赖 Sublime。

所以, 我推荐大家使用 Sublime, 如果你觉得好, 那么我建议你也买个序列号。

我装了 subl 就习惯性的不去用 vim 了

@huobazi 我更是懒得打 subl 4 个字母,直接 alias 成 s 了,vim 也快捷成 v 了 ^_^

我是习惯了 vim 的 hjkl,不习惯鼠标或小箭头了。

Sublime Text 的光标都那么潇洒,那么出众,就像黑暗中的萤火虫

工具用个顺手的就行,现在这两个都在用

vim 的话我现在在看这个人出的教学视频来学习 vim 爽爽快快學 Vim(1) 爽爽快快學 Vim(2) 爽爽快快學 Vim(3) - Vim Plugins

视频中提到的 vim 配置文件地址:eddie-vim

vim 装多了插件会变得很慢 我一直用 vim,说真的,在做一些高级语言的编辑的话,这不是很适合 以前写 C,代码基本上都是自己写的 现在写 ruby,经常会引用或使用代码,用 vim 不是很方便 我现在只有一个使用 vi/vim 的理由:那就是只要是服务器,基本上都有...

昨天,我删掉了 win7 和 ubuntu10 的双系统,换上 ubuntu12。 编辑起我也准备抛弃其它,慢慢适应 vim,无它: vim 的操作方式,一致的 unix 哲学,强大的社区,而且免费!

#7 楼 @feitian124 用过 sublime 吗?

@ery 用过啊,不过没深入。ubuntu 下不能输入中文,试用版保存时会偶尔提示购买(貌似)。 当然这个不是你死我活的决定,只是我想专注 vim 先。

#9 楼 @feitian124 如果我有充裕的时间,我也会专注的研究一下 Vim,呵呵。 但是目前我急于解决手中的开发任务,所有没有那么多时间投入到 Vim 的研究和学习中,很遗憾。 不过我在做一些简单的任务的时候,会使用 Vim 开发,但是总觉得很别扭。

vim 只是学习曲线比较抖

@ery 哈哈,很高兴那个帖子是我发起的。 但现在编码基本只用 Vim,原因就是:想到哪就可以写到啊,畅快淋漓! 但 vim 惟一不爽的是对中文支持不好,经常是忘记切换模式,本来输中文敲的键盘全部变成命令。 所以我还现在是 Vim+Sublime。

以前也算用了 sublime 很久了,是在 win 下用的,现在尝试了一段时间在 Linux 下用 vim,觉得很舒服,渐渐想不用 sublime 了

#12 楼 @camel "想到哪就可以写到啊" 是什么意思?

#13 楼 @lucky215 能说说为什么觉得 Vim 舒服吗?

用惯了 vim,之前试用 sublime 觉界面方得很不错,也试了下他的 vim 模式,但还是回到了 vim,没勇气又花时间去学习和设置一个新的编辑器了,目前自己的 vim 装了十多个插件,1.6g 的本本打开也是搜搜的,vim 唯一不满意就是他的脚本代码很丑

@ery 在 win 下我感觉不到,在 Linux 下,主要是加上 shell,我有点命令行控,现在渐渐都不喜欢用鼠标,真希望全部键盘控制

#15 楼 @ery 支持 sublime text 2,我个人觉得比 textmate 好,可惜插件是 python 写不是 ruby.

同样也支持 vim,vim 的感觉就像在做文本手术,很多东西不如 sublime 方便,比如项目内查找需要用 ack 或者 grep 插件,sublime 可以直接 Command + Shift + F,但是这两个东西还是值得投资学习的,因为命令行也能用。

使用 sublime 有好几个月了,之前一直是 vim,单项目的话还是喜欢 vim,多项目只有用 sublime 了,方便于参考代码。vim 要学的话其实也还好,不需要一下记太多,一点一点来就好了。我通常会想自己有一个操作,然后就去搜 vim 的相应的使用什么。在 Mac 下使用 gvim,最喜欢 vim 的一点是自己想打开某个文件的话就直接 tabnew + 文件路径,思路快,确实是想到哪做到哪。

我也在用 sublime,感觉非常棒,很强大。偶尔用用 vim,一直没有深入 vim,有同事只用 vim,用熟了也是很强大的。

用 vim 三个多月,已经能够工作中使用。vim 最爽的地方还是可以随自己的喜好定制,不过熟练之后通常又会还原到久经考验的默认设置。vim 脚本虽然很丑,但还是值得花写时间了解,能写一些简单的功能很重要。虽然还有很多细节不尽人意,不过基本不影响使用。看大家都说 Sublime Text 2 好,忍不住也想去尝尝鲜了。

回错了…

匿名 #24 2012年06月16日

Vim 最适合那种 API 函数不太多,命名不太长的语言,所以我的看法如下

适合使用 Vim 开发的:C/C++、Lua、Perl、PHP、Ruby、Lisp

适合借助 IDE 开发的:Java、C#、Python、JavaScript

我们选适合的工具做适合的事,不过貌似我是写什么都用 Vim 的,呵呵,习惯了,效率也就不成问题了

Sublime text 的 vim 模式支持 vim 的绝大多数操作方式,而且还有很多自带的操作方式作为补充,支持多选块移动等,支持 textmate 的 bundle 扩展,实在找不出再多理由不用如此神器了

#17 楼 @reducm

用惯了vim,之前试用sublime觉界面方得很不错,也试了下他的vim模式,但还是回到了vim,没勇气又花时间去学习和设置一个新的编辑器了,目前自己的vim装了十多个插件,1.6g的本本打开也是搜搜的,vim唯一不满意就是他的脚本代码很丑

和我的感觉一样啊。

非常同意的:

没勇气又花时间去学习和设置一个新的编辑器了 vim唯一不满意就是他的脚本代码很丑

ps:

我想试试 emacs 的原因就是 emacs 的脚本是 lisp。。。

我是什么编辑器都用,tm,subl,vim,不过还是觉得 vim 好一些,以前不会配置 vim,认为 vim 难搞,但是现在熟悉了之后,感觉很自然。推荐一下 vgod 的 vim 配置: https://github.com/vgod/vimrc.git

#26 楼 @jinleileiking 我最早用 linux 的时候是先学 emacs 来着,也习惯了他的上下左右移动,现在在 vim 里面的 insert 模式还是绑定了许多 emacs 的光标移动,和删行删词语等 (ubuntu 系统按键也绑定成 emacs); 后来在开发 ruby 的时候,发觉 emacs 的插件比较少(或许搜索花费精力不够),遂转使用 vim 用得很欢乐

打算过段时间开始学习 lisp 的时候再折腾重新折腾 emacs

这是永远的战场,没有最好,只有合适

论 IDE 的功能,Vim 很多地方不如其他编辑器。Vim 不可替代的地方在于对文本的处理,尤其是一些插件比如 surround 对它的扩展。一旦习惯了 Vim 的操作,基本就不可能去用其他的编辑器了。我想这也是很多 Vimer 换了很多编辑器最终还是用回 Vim 的原因。

我原来也用过一段时间的 Sublime Text,界面不错,速度非常快。有些东西我没掰,但相信扩展也会很不错。只是我实在不习惯什么都按 shift 等组合键的方式,但 Vim 模式有很多细节做的不完善,有些操作必须动鼠标,比如从编辑区域转到目录树去选择文件,选择括号内的所有内容,单引号换双引号(这属于 Vim 插件功能了)等等。我记得似乎当时还不能用 Ctrl+F 和 Ctrl+B 来翻页?这些别人看起来很细节很平常的东西,对 Vim 中毒已深的我来说却很不方便。

说这些没有比较的意思,Sublime Text 挺好的,简洁犀利,我绝对甚至超过 Ruby 界吹的神乎其神的 TextMate,界面也很炫,这点 Vim 这辈子是没指望了。

#30 楼 @darkbaby123 你所说的 vim 对细节的不完善,其实还是对 vim 不熟悉造成的。同时,还有很多插件会帮你解决这些所谓的问题。当然,了解 vim 会是漫长的一个过程,有人用了 10 年的 vim,都觉得对它了解的还不够。如果能够正真会用 vim,那就是神乎其技!

#14 楼 @ery 就是很快,不卡,写代码时没有停顿

#24 楼 @ruchee 求推荐 python IDE ,JavaScript IDE

#33 楼 @chendahui007 我说下我用过的 python IDE 吧。WingIDE 和 PyCharm。

WingIDE:如果在 windows 平台,开发的不是 Django 项目,WingIDE 比较适合,功能强大却又小巧,安装文件比 Gvim 和 EMACS 的还小,虽然它在功能上接近重量级,但体积上是轻量级,启动速度也很快,码字没有卡顿的感觉,跟轻型编辑器差不多,代码自动完成比编辑器智能的多。不过 WingIDE 也有缺点,MAC 平台我没用过,听说在这个平台上显示效果不好。在 linux 平台字体也都不好看,就算是同一款字体,在 windows 和 linux 平台显示效果也大相径庭。适合 windows 平台,对 Django 的支持不够

PyCharm:重量级的 python IDE,功能和速度都是重量级,各种强大、各种贴心,对 Django 的支持无微不至,优点就不多说了。最大的缺点就是速度,让人纠结的速度,启动速度慢就忍了,输入的时候经常也很卡顿,输入速度跟不上思维的速度,这太痛苦了。用 i7 的 CPU、16G 内存可能会好点

匿名 #35 2012年06月18日

#33 楼 @chendahui007 我很久没用过 IDE 了,要说推荐,Eclipse 官方发布的 JavaScript 版+PyDev 就完全足够了

#34 楼 @gaicitadie 我在 linux(arch) 平台学习

#36 楼 @chendahui007 arch 没用过,在 ubuntu 上 pycharm 的显示效果很棒,用 Courier 10 pitch 字体,ubuntu 自带的,不知道 arch 上有没有,pycharm 在 linux 平台比在 windows 平台快一些,用最新的 jdk7,当然跟 sublime text 2 的速度还是没法比

只要见到 Sublime Text 2 就++

#6 楼 @azhao 的确,现在我的 vim 就在 Console 里面都很慢了,sign

@ery 相互探讨,有好东西大家分享。

你提到的 ctags,我试用了一下,的确爽歪歪。

vim 里面的 Rails 怎么只执行 unit test 文件里的一个 test 呢,我以前只是土鳖用:Rake 会执行所有方法

#40 楼 @gene_wu 等到插件都用上 autoload 就会好了。

用了一段时间 sublime text 2,感觉很多地方还是没有 vim 用着顺手,现在不用他了

#44 楼 @kikyous 请问你用 vim 多久啦?

#45 楼 @ery 不知道是大一还是大二开始用的,现在因该有两年了

我刚刚买了一个序列号

#46 楼 @kikyous 我猜想,如果用惯了 Vim,那么恐怕再用其他任何编辑器,都会觉得很别扭。

在 sublime 里有 vim 插件 vintage 的路过

sublime 里的 vintage 其实觉得不好用,感觉和用 vim 还是用很大的区别,所以我一直关闭 vintage 模式。

感觉 vim 好用

匿名 #52 2012年07月15日

唉 TextMate 不思进取啊,被人替代了

我现在写完什么文档都习惯性的 :wq 囧。。。。。。。。。。

用了一个星期的 sublime, 昨天果断买了 sublime. 好东西啊

Open source Textmate is too late

😓,难道 st2 碰到资金问题了?最近更新比较少,希望不要啊...

用 Sublime Text 2 并开启 Vintage Mode…… 写代码的时候少碰鼠标,挺好的

匿名 #58 2012年12月01日

vim 的精髓在于它的“编辑语言”,流畅的编辑体验,xcode 中用 xvim,觉得非常嗨!针对 macvim&gvim,要是弄得更容易用起来就好了。就像 textmate,一大堆菜单,不用怎么学习就能嗨起来,遗憾的是没有靠谱的 vim bundle~

好像有人说:unix 不是商标,不是某种实现,是一种精神;vim 应该也是类似的吧。 ps:vimL 看起来弱弱的,好在 Ta 支持了一大票的扩展语言~

#53 楼 @superbatironmans5 我也是...不过我一般都用 ZZ 保存退出~~

Sublime Text 2 不错,是澳洲人写的,让 @fredwu 问问好了;-)

#7 楼 @feitian124 感觉 ubuntu12.10 还有些 bugs 啊,经常弹出内部异常提示框,我现在也只在自己的 pc 上装了一个 ubuntu,公司 win+ubuntu 双系统,但尽量不去碰 win。你用得还习惯不

sublime 作者是澳洲人,Google 的前员工,利用 20% 的时间开发的 sublime,后来辞去了在 google 的工作,全身心投入到 sublime 的开发

怎么没有人谈谈 rubymine 呢?

自从 在 Sublime 2 中装了一堆插件之后,大概 10 个以上,它的启动速度就是牛慢无比,而且在 Ubuntu 12.04 下有种种问题,就弃之不用了

我一直是 vim 的忠实 fan,个人觉得用 vim 无论是在速度、开发效率都是很不错的。而且用的很嗨、很爽!不过有一点你说的对,学习成本会高一点,你开始需要用一两天时间去熟悉各快捷键,不过当你熟悉之后会用的很爽,慢慢的你会挖掘更多好玩的东西! 过这段时间后我会尝试 sublime,看看感觉如何!

需要 登录 后方可回复, 如果你还没有账号请 注册新账号