それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

ruby の ri でgemのドキュメントが見られない

mac OSX の ri がgems パッケージを見てくれない。

ri はgems ファイルを探してくれないので、ri は使えないものだと思ってた。

takuya@~$ ri Sequel
Nothing known about Sequel
takuya@~$

OSX バンドルの ri が見てくれないだけだった。

takuya@~$ which ri
/usr/bin/ri

そういえば、rbenv の ruby は実行遅いから直接叩いてたんだった。

rbenv の ri だと見れた

 takuya@~$ rbenv exec ri Sequel::sqlite --no-pager
Sequel::sqlite

(from gem sequel-4.42.0)
------------------------------------------------------------------------------
略

rbenv の ri のパスを指定したら見られた

rbenv exec ri で見られるのなら、/usr/bin/ri にパスを指定してみたら、見られる。

takuya@~$ ri   Sequel::sqlite -d  `gem environment gemdir`/doc/sequel-*/ri --no-pager
Sequel::sqlite

(from
/Users/takuya/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/doc/sequel-4.42.0/ri)
------------------------------------------------------------------------------

Top level module for holding all SQLite-related modules and classes for
Sequel.
------------------------------------------------------------------------------
Constants:

SQLITE_TYPES:
  Hash with string keys and callable values for converting SQLite types.

TYPE_TRANSLATOR:
  [not documented]


Class methods:

  mock_adapter_setup

念のため、gems の環境変数を確認

takuya@~$ gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 2.5.2
  - RUBY VERSION: 2.3.3 (2016-11-21 patchlevel 222) [x86_64-darwin15]
  - INSTALLATION DIRECTORY: /Users/takuya/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0
  - USER INSTALLATION DIRECTORY: /Users/takuya/.gem/ruby/2.3.0
  - RUBY EXECUTABLE: /Users/takuya/.rbenv/versions/2.3.3/bin/ruby
  - EXECUTABLE DIRECTORY: /Users/takuya/.rbenv/versions/2.3.3/bin
  - SPEC CACHE DIRECTORY: /Users/takuya/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: /Users/takuya/.rbenv/versions/2.3.3/etc
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-15
  - GEM PATHS:
     - /Users/takuya/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0
     - /Users/takuya/.gem/ruby/2.3.0
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
     - :sources => ["http://rubygems.org/", "http://gems.github.com"]
     - :benchmark => false
(略

パスの解決めんどくさいのでalias することに

alias でいいや

alias ri=`rbenv which ri`