概要
Date や String のメソッドに関しては pry-doc のリファレンスを参照することができますがクラスそのものにジャンプすることはできません (Can’t find the location になる)
一応たどる方法があるので紹介します
環境
- macOS 11.7
- emacs 28.1
方法: pry で show-source を実行し CRuby のソースコードを入手する
emacs で pry バッファに移動して以下のように show-source Date
を実行しましょう
[11] pry(main)> show-source Date
Identifier not found - do you want to install CRuby sources to attempt to resolve the identifier there?
This allows the lookup of C internals Y/N Y
Downloading and setting up Ruby 3_1_2 source...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 14.3M 0 14.3M 0 0 2518k 0 --:--:-- 0:00:05 --:--:-- 2429k
Generating tagfile!
...Finished!
これで再度 Date からジャンプすればソースコードを参照できるようになります
最後に
ちなみに Date を継承している DateTime はこの方法でも参照できないようです
おそらく pry-doc で show-source DateTime
すると親クラスの Date のソースが確認できるのでそもそも無理なのかもしれません
そもそもビルトイン関係の実装まで確認したいケースは少ないと思いますが一応これで確認できます
面倒な場合は emacs からでなく直接 CRuby のソースをダウンロードして見るのでもいいと思います
0 件のコメント:
コメントを投稿