开发工具 如何用 TextMate 查看 Gem 的代码

xiaolai · 2012年11月17日 · 最后由 xiaoronglv 回复于 2014年01月13日 · 3604 次阅读

今天刚学到的(http://lixiaolai.com/alpha/notes/TextMate2.html#gem):

用 TextMate 查看 Gem 代码

将以下脚本保存到/usr/local/bin目录:

#!/bin/sh

usage()
{
     echo "Usage: $(basename $0) <gem>" 1>&2
     exit 1
}

GEM="$1"

[ -z "$GEM" ] && usage
mate "$(gem environment gemdir)/gems/$GEM"

并将其设置为“可执行脚本”:

chmod +x /usr/local/bin/mategem

~/.bash_profile文件中加入以下内容:

_mategem()
{
    local curw
    COMPREPLY=()
    curw=${COMP_WORDS[COMP_CWORD]}
    local gems="$(gem environment gemdir)/gems"
    COMPREPLY=($(compgen -W '$(ls $gems)' -- $curw));
    return 0
}
complete -F _mategem -o dirnames mategem

而后重新载入~/.bash_profile

source ~/.bash_profile

以后就可以输入“mategem bootstrap ⇥”而后得到mategem bootstrap-sass-2.1.1.0……超级方便!

(learned from http://effectif.com/mac-os-x/textmate/opening-ruby-gems-in-textmate)

如果用 bundler 就可以 bundle open GEM_NAME

显示 gem 目录 bundle show GEM_NAME

你可能还需要修改默认 editor export EDITOR=mate

#1 楼 @allenwei 嗯,可是 bundler 命令不支持自动补全

#2 楼 @xiaolai 我在 zsh 下面可以自动补全,不知道 bash 啥样

话说 vim 也可以看 gem 源码

还是感觉 rubymine 好,ctrl 点击就可以跳到源码,方便的很,

gem install gem-open
gem open xxx

更简单一些。

#1 楼 @allenwei

Thanks.

刚好用到。

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