Лучший способ, который я могу придумать, это исправить модуль Kernel
. В соответствии с docs Kernel::load
ищет $:
для имени файла. Мы можем сделать то же самое и напечатать путь, если найдем его.
module Kernel
def load_and_print(string)
$:.each do |p|
if File.exists? File.join(p, string)
puts File.join(p, string)
break
end
end
load_original(string)
end
alias_method :load_original, :load
alias_method :load, :load_and_print
end
Мы используем alias_method
для хранения оригинального load
метода, который мы вызываем в конце нашего.