将 VS Code 打造成 Ruby IDE

2016-03-05 20:56:59 +08:00
 rebornix

Visual Studio Code 在支持了插件开发之后,提供了扩展调试器( Debugger )的 API 。也就是说,我们可以通过写插件,给 VS Code 提供调试各种语言、框架的功能。现在 VS Code 的 Marketplace 已经有了 Go 、 PHP 、 Python 、 Mono 等 Debugger 插件。

研习 TypeScript 和 Ruby 有一段时间了,我一直琢磨写点什么试试手。惊讶滴发现 VS Code 居然还没有人写过 Ruby 的 Debugger ,而隔壁 Atom 已经有可以用的 Ruby Debugger 原型了,于是我果断开始造这个轮子。

为了和 Ruby scripts 进行通讯,我使用了 ruby-debug-ide 并实现了对应的 protocol 。而这也是 RubyMine 、 NetBeans 这几个 Ruby IDE 的做法,也就是,我们完全可以实现一样的功能,把 VS Code 变成一个功能完备的 Ruby IDE !

刚刚撸了一个礼拜,完成了以下功能,代码在 GitHub 上:

还有以下很多功能需要实现:

虽然完成了基本的 ruby scripts 的调试功能,限于时间和人力,但是还有很多 corner case 和功能没完成。如果你

欢迎一起来撸这个插件

如果你对撸这串代码没兴趣,也欢迎大家试用,提一提意见、爆一些八阿哥;或者给它一个 star !

17091 次点击
所在节点    分享创造
22 条回复
sneezry
2016-03-05 21:12:13 +08:00
老师翻译完 Angular 那本书之后再写本 Ruby 的书吧😃
rebornix
2016-03-05 21:31:43 +08:00
@sneezry 那本书黄了,图灵的老师。。。。我不说了。。。
sneezry
2016-03-05 21:35:15 +08:00
@rebornix 估计是被 2.0 搞的,那老师继续要 2.0 的书啊,老师本来就是想搞 2.0 嘛,或者干脆你自己写一本,如果是原创我更容易帮你联系编辑了
rebornix
2016-03-05 21:46:56 +08:00
@sneezry 他们怕了...让我撸完这个代码就来搞!
sneezry
2016-03-05 21:49:31 +08:00
@rebornix 哈哈,赞!
hbkdsm
2016-03-05 22:04:51 +08:00
Ruby 社区几乎没人用 VSCode 吧,没有 Ruby debugger 也不奇怪。 RubyMine 太强大, Vim ST 插件生态很完善, TextMate 还有很多老用户。而且写 Rails 的基本不会使用 Windows 作为开发机,为啥要换编辑器?

VSCode 要吸引 ruby 程序员,光这一个插件不够啊

CoffeeScript, ERB, Slim, Haml, SCSS, Ember.js 都得跟上。
bdbai
2016-03-05 22:07:37 +08:00
@hbkdsm VSCode 可以跨平台呀
rebornix
2016-03-05 22:21:27 +08:00
@hbkdsm

首先说编辑器, VS Code 跨平台,性能也很很好。应该讲,是多一个不错的选择。否则,大家有了 Vim/Emacs ,干嘛还要开发别的编辑器呢。

其次谈 IDE , RubyMine 是很强大,但是是收费的; Vim 加上插件自然是无敌的,但是曲线这么高,我不做太多的讨论了,毕竟我日常也是使用 Vim ; ST 的话,对 Ruby 的支持都是基于插件,那么二者的比较,就回到上一条了。

最后, VS Code 开源且支持插件,就是让大家想怎么玩怎么玩,没有什么“ VSCode 要吸引 Ruby 程序员”。

至于 Ruby 社区有没有人用 VS Code ,咱们就看着这个插件的下载数量会变成啥样吧
hbkdsm
2016-03-05 22:42:56 +08:00
@rebornix 嗯 VS Code 支持插件确实是件大好事
Mireas
2016-03-06 16:07:29 +08:00
一直在用 VSC...比 N++好看,比 Atom 流畅,比 SublimeText 有信仰,就是插件不够多=。=平时也就开开单文件改改小地方了。
chmlai
2016-03-06 16:36:16 +08:00
VSC 现在的 vim mode 能用了吗?
rebornix
2016-03-06 16:51:47 +08:00
rebornix
2016-03-06 16:52:55 +08:00
@Mireas 你平时写什么代码呀? debugger 已经有蛮多了,不过你说的对,现在插件还太少了。团队人少,所以工程推进也不够快。
Mireas
2016-03-06 17:00:57 +08:00
@rebornix 前端,没找到自动补全来着
Delbert
2016-03-06 22:08:08 +08:00
@hbkdsm VSCode 是跨平台的,不是只有 Windows
msg7086
2016-03-08 02:04:57 +08:00
@hbkdsm Rails 为啥不能用 Windows 做开发机?
hbkdsm
2016-03-08 02:35:15 +08:00
@msg7086 明知故问。。。
msg7086
2016-03-08 02:42:53 +08:00
@hbkdsm 我用 Windows 写了很久的 Rails 了。所以还请赐教为什么不能用。
rebornix
2016-03-08 09:03:19 +08:00
@msg7086 ruby-china 上非常醒目地写着不要用 Windows 我觉得可能和早年配置麻烦,严重不兼容有关,现在已经好多了。

不过,我的这个插件对 Windows 平台上的 六个 Ruby 版本都进行了测试,力争人人能用。
hbkdsm
2016-03-08 09:23:25 +08:00
@msg7086

赐教不敢当,"写 Rails 的基本不会使用 Windows 作为开发机",我没说“不能用”,你在 Windows 上面用 Virtualbox/Vagrant 或 VMWare 装虚拟机,当然可以开发 Rails 啊,一点问题没有。

我说“基本不会使用”,只是基于自己有限的认知,接触身边的开发者得出的观察结果:“大多数人不会选择 Windows 作为开发机”。

这应该不是我一个人的结论,你还记得下面这句话是谁说的吗?

“好像用 Windows 开发 Rails 的人好少啊……”

出处在 https://ruby-china.org/topics/27020 第 43 楼

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/261371

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX