最近读本机器学习的教材,用 R 做练习,直接用 R Console 感觉不方便保留脚本,用 RStudio 好像又没太大必要。所以又翻了一圈,终于搞定直接在 Sublime Text 3 下面装插件,将语句或者脚本送到 R Console 里去,算是最轻量级的解决方案了吧。
装 ST 和 R 本身就不说了,不清楚的可以翻我之前的文章。R 装好以后, R Console 就是自带的。网上 ST2 的配置简单,一般推荐直接装Enhanced-R
。然而 ST3 似乎并没有这个包,估计是没兼容。所以让我们装备上 R-Box
和 SendCode
。安装方式就是Command+Shift+P
,调出指令后Package Control——Install Package
,找上面这俩包就行了。
R-Box
安装好以后,随便新建一个”.R”结尾的脚本,应该可以看到 ST 3 的右下角出现R Extended
的标识,说明能正常识别 R 脚本文件了。此时,Command+B
是可以正常编译这个脚本的,只不过它是在 ST 3 里调用编译、执行,只返回是否成功的结果。
此外,这时工具栏多了个选项:
所以,让我们继续Command+Shift+P
调出指令,输入SendCode
后选择Choose REPL Program
,如下图:
下一步记得选择R GUI
:
也可以看到,SendCode
是挺强大的,还能选择RStudio
什么的。
那么现在只要在你的 R 脚本里选中一段代码,或者把光标停在你要运行的那一行代码,Command+Enter
就可以激活 R Console 并自动运行啦。方便不?
最后,通往罗马的道路当然不止一条,从上面SendCode
选择运行程序的地方可以看到,我还装了一个叫SublimeREPL
的包。装了它之后,也可以设置再继续将代码送到 R Console 运行(或者参照这里单独配置,即不需要SendCode
),并且这时候, R Console 可以变成 ST 3 的一个tab,也就是你在 ST 3 里可以切换tab看运行结果,似乎还可以配置脚本和 R Console 俩tab并列显示。我试了试,在这个模式下,任何显示数据的函数,比如fix()
,都会调用X11
新建窗口来显示;而 R Console 原生运行时是一个类似Excel的窗口,前者”手感“不好,所以我放弃了。有简洁窗口癖好的朋友可以尝试。
这方面(macOS + Sublime Text 3 + R)中文资料也不多,希望有所帮助。