in lib/rdoc/ri/driver.rb [1513:1548]
def setup_pager
return if @use_stdout
jruby = RUBY_ENGINE == 'jruby'
pagers = [ENV['RI_PAGER'], ENV['PAGER'], 'pager', 'less', 'more']
pagers.compact.uniq.each do |pager|
next unless pager
pager_cmd = pager.split(' ').first
next unless in_path? pager_cmd
if jruby then
case io = find_pager_jruby(pager)
when nil then break
when false then next
else io
end
else
io = IO.popen(pager, 'w') rescue next
end
next if $? and $?.pid == io.pid and $?.exited?
@paging = true
return io
end
@use_stdout = true
nil
end