早先在App Store购买了CodeRunner这个小工具,不用打开庞大的IDE就可以运行片段代码,还支持多种语言,挺好用的。现在碰到个问题,运行ruby代码的时候,它总是调用系统自带的ruby解释器,根本不受RVM的控制:(
请问哪位朋友有解决方案发出来分享下,不胜感激。
CodeRunner的地址在这里,不了解的朋友可以围观下:
http://itunes.apple.com/cn/app/coderunner/id433335799?mt=12
自问自答,通过查看~/.profile了解了RVM的加载方式,于是乎 ,可以这样解决——
1、打开CodeRunner的配置界面-Languages选项卡,并选择左侧的Ruby,如图所示:
2、将你的~/.profile文件中设置RVM加载的命令拷贝到Run Command文本框,默认的“ruby $filename”前面,记得加上两个&符号哦,例如我这里最终的配置字符串是:
[[ -s /Users/scriptfans/.rvm/scripts/rvm ]] && source /Users/scriptfans/.rvm/scripts/rvm && ruby $filename
3、关闭配置,写一段ruby code,例如:
puts RUBY_VERSION
是不是跟终端输出的一致了呀,证明RVM已经起作用了,嘿嘿:)
为啥外链图片不能正常显示呢?囧啊,我还是上传得了。
还是不能显示,无语
新版RVM需要自己指定TERM参数以便确定终端类型,以及使用输出颜色,所以需要修改一下.profile,要不然每次运行代码都会输出提示'tput: No value for $TERM and no -T specified',不仅是ruby,其他语言也会受影响(新版CodeRunner会自动加载用户PATH配置,导致了这个问题),解决方案如下:
1.升级CodeRunner为最新版本,它增加了自动识别用户配置的功能;
2.恢复CodeRunner的Run Command为默认配置'ruby $filename';
3.将~/.profile文件中关于rvm的设置项修改一下,在 source 之前加入TERM=xterm-256color,保存即可。象这样:
[[ -s /Users/scriptfans/.rvm/scripts/rvm ]] && TERM=xterm-256color source /Users/scriptfans/.rvm/scripts/rvm