Project

General

Profile

Feature #14855

Binding#irb の中では、呼び出し元の __FILE__ と __dir__ をとりたい

Added by takkanm (三村 益隆) over 2 years ago. Updated 9 months ago.

Status:
Closed
Priority:
Normal
Target version:
-
[ruby-dev:50580]

Description

現在、Binding#irb の中で呼び出した FILEdir が irb で設定されたもののままとなっています。
これだと、ソースコード中に埋め込んで試す際に不便なので、実際のソースコードのファイルが読み取れるとうれしいです。

そのパッチとして https://github.com/ruby/ruby/pull/1896 を作りました。

現時点は以下のようになります。

$ cat binding_irb.rb
binding.irb

$ ruby binding_irb.rb

From: binding_irb.rb @ line 1 :

 => 1: binding.irb

irb(main):001:0> __FILE__
=> "(irb)"
irb(main):002:0> __dir__
=> "."

このパッチを適用すると以下のようになります。

$ ruby binding_irb.rb

From: binding_irb.rb @ line 1 :

 => 1: binding.irb

irb(main):001:0> __FILE__
=> "/Users/takkanm/tmp/binding_irb.rb"
irb(main):002:0> __dir__
=> "/Users/takkanm/tmp"
irb(main):003:0>

Updated by hsbt (Hiroshi SHIBATA) 9 months ago

  • Assignee set to aycabta (aycabta .)
  • Status changed from Open to Assigned

Updated by hsbt (Hiroshi SHIBATA) 9 months ago

  • Status changed from Assigned to Closed

Also available in: Atom PDF