Закодированный «require 'debug'» не может найти исходный файл

С этим минимальным рубиновым кодом:

require 'debug'
puts

в файле с именем, например, script.rb

если я запускаю это так:ruby -rdebug script.rb

а затем нажмитеl в приглашении отладки я получаю список, как и ожидалось

если я вместо этого запускаю его как обычноruby script.rb

при нажатииl Я получил:

(rdb:1) l
[-3, 6] in script.rb
No sourcefile available for script.rb

Сообщение об ошибке в лучшем случае вводит в заблуждение: рабочий каталог не изменился, и файл определенно все еще там!

Я не могу найти документацию по этому поведению (я пробовал и на jruby и на mri, и поведение такое же)

Я знаю о 'debugger' и 'pry', но они служат другому сценарию использования:

Я привык к другим языкам сценариев со встроенным модулем отладки, который позволяет мне помещать оператор в любое место кода, чтобы поместить меня в оболочку отладки, проверять код, переменные и тому подобное ... преимущество в том, что он встроен это доступно везде, без необходимости настраивать среду для этого, или даже когда я на машине, которая не моя

Очевидно, я мог бы обойти это, всегда вызывая переводчика с-rdebug и вручную установить точку останова, но я считаю, что это больше работы, чем альтернатива

Ответы на вопрос(2)

Ваш ответ на вопрос