[ruby/irb] Add --extra-doc-dir option to show doc dialog

https://github.com/ruby/irb/commit/3f79cb506f
This commit is contained in:
aycabta 2021-10-11 20:35:27 +09:00 коммит произвёл git
Родитель dcaaf79ca0
Коммит 866a09dd9e
3 изменённых файлов: 12 добавлений и 1 удалений

Просмотреть файл

@ -125,6 +125,8 @@ module IRB
end
self.save_history = IRB.conf[:SAVE_HISTORY] if IRB.conf[:SAVE_HISTORY]
@extra_doc_dirs = IRB.conf[:EXTRA_DOC_DIRS]
@echo = IRB.conf[:ECHO]
if @echo.nil?
@echo = true
@ -241,6 +243,9 @@ module IRB
#
# If set to +false+, <code>^D</code> will quit irb.
attr_accessor :ignore_eof
# Specify the installation locations of the ri file to be displayed in the
# document dialog.
attr_accessor :extra_doc_dirs
# Whether to echo the return value to output or not.
#
# Uses <code>IRB.conf[:ECHO]</code> if available, or defaults to +true+.

Просмотреть файл

@ -51,6 +51,7 @@ module IRB # :nodoc:
@CONF[:USE_LOADER] = false
@CONF[:IGNORE_SIGINT] = true
@CONF[:IGNORE_EOF] = false
@CONF[:EXTRA_DOC_DIRS] = []
@CONF[:ECHO] = nil
@CONF[:ECHO_ON_ASSIGNMENT] = nil
@CONF[:VERBOSE] = nil
@ -257,6 +258,9 @@ module IRB # :nodoc:
@CONF[:USE_MULTILINE] = true
when "--nomultiline", "--noreidline"
@CONF[:USE_MULTILINE] = false
when /^--extra-doc-dir(?:=(.+))?/
opt = $1 || argv.shift
@CONF[:EXTRA_DOC_DIRS] << opt
when "--echo"
@CONF[:ECHO] = true
when "--noecho"

Просмотреть файл

@ -329,7 +329,9 @@ module IRB
name = result[pointer]
name = IRB::InputCompletor.retrieve_completion_data(name, doc_namespace: true)
driver = RDoc::RI::Driver.new
options = {}
options[:extra_doc_dirs] = IRB.conf[:EXTRA_DOC_DIRS] unless IRB.conf[:EXTRA_DOC_DIRS].empty?
driver = RDoc::RI::Driver.new(options)
if key.match?(dialog.name)
begin