diff options
Diffstat (limited to 'lib/irb')
-rw-r--r-- | lib/irb/context.rb | 5 | ||||
-rw-r--r-- | lib/irb/init.rb | 5 | ||||
-rw-r--r-- | lib/irb/input-method.rb | 5 | ||||
-rw-r--r-- | lib/irb/lc/help-message | 2 | ||||
-rw-r--r-- | lib/irb/lc/ja/help-message | 2 |
5 files changed, 18 insertions, 1 deletions
diff --git a/lib/irb/context.rb b/lib/irb/context.rb index 0d358de6ff..3827bda438 100644 --- a/lib/irb/context.rb +++ b/lib/irb/context.rb @@ -54,6 +54,7 @@ module IRB @use_multiline = nil end @use_colorize = IRB.conf[:USE_COLORIZE] + @use_autocomplete = IRB.conf[:USE_AUTOCOMPLETE] @verbose = IRB.conf[:VERBOSE] @io = nil @@ -185,6 +186,8 @@ module IRB # # A copy of the default <code>IRB.conf[:USE_COLORIZE]</code> attr_reader :use_colorize + # A copy of the default <code>IRB.conf[:USE_AUTOCOMPLETE]</code> + attr_reader :use_autocomplete # A copy of the default <code>IRB.conf[:INSPECT_MODE]</code> attr_reader :inspect_mode @@ -311,6 +314,8 @@ module IRB alias use_readline? use_singleline # Alias for #use_colorize alias use_colorize? use_colorize + # Alias for #use_autocomplete + alias use_autocomplete? use_autocomplete # Alias for #rc alias rc? rc alias ignore_sigint? ignore_sigint diff --git a/lib/irb/init.rb b/lib/irb/init.rb index 5923c54a29..3c27b4ffff 100644 --- a/lib/irb/init.rb +++ b/lib/irb/init.rb @@ -45,6 +45,7 @@ module IRB # :nodoc: @CONF[:USE_SINGLELINE] = false unless defined?(ReadlineInputMethod) @CONF[:USE_COLORIZE] = !ENV['NO_COLOR'] + @CONF[:USE_AUTOCOMPLETE] = true @CONF[:INSPECT_MODE] = true @CONF[:USE_TRACER] = false @CONF[:USE_LOADER] = false @@ -274,6 +275,10 @@ module IRB # :nodoc: @CONF[:USE_COLORIZE] = true when "--nocolorize" @CONF[:USE_COLORIZE] = false + when "--autocomplete" + @CONF[:USE_AUTOCOMPLETE] = true + when "--noautocomplete" + @CONF[:USE_AUTOCOMPLETE] = false when /^--prompt-mode(?:=(.+))?/, /^--prompt(?:=(.+))?/ opt = $1 || argv.shift prompt_mode = opt.upcase.tr("-", "_").intern diff --git a/lib/irb/input-method.rb b/lib/irb/input-method.rb index 4d55e4ef3d..3dec9d0ceb 100644 --- a/lib/irb/input-method.rb +++ b/lib/irb/input-method.rb @@ -295,6 +295,10 @@ module IRB end end Reline.dig_perfect_match_proc = IRB::InputCompletor::PerfectMatchedProc + Reline.autocompletion = IRB.conf[:USE_AUTOCOMPLETE] + if IRB.conf[:USE_AUTOCOMPLETE] + Reline.add_dialog_proc(:show_doc, SHOW_DOC_DIALOG, Reline::DEFAULT_DIALOG_CONTEXT) + end end def check_termination(&block) @@ -361,7 +365,6 @@ module IRB Reline.output = @stdout Reline.prompt_proc = @prompt_proc Reline.auto_indent_proc = @auto_indent_proc if @auto_indent_proc - Reline.add_dialog_proc(:show_doc, SHOW_DOC_DIALOG, Reline::DEFAULT_DIALOG_CONTEXT) if l = readmultiline(@prompt, false, &@check_termination_proc) HISTORY.push(l) if !l.empty? @line[@line_no += 1] = l + "\n" diff --git a/lib/irb/lc/help-message b/lib/irb/lc/help-message index 9c3ea859ad..30f49947da 100644 --- a/lib/irb/lc/help-message +++ b/lib/irb/lc/help-message @@ -30,6 +30,8 @@ Usage: irb.rb [options] [programfile] [arguments] --nosingleline Don't use singleline editor module --colorize Use colorization --nocolorize Don't use colorization + --autocomplete Use autocompletion + --noautocomplete Don't use autocompletion --prompt prompt-mode/--prompt-mode prompt-mode Switch prompt mode. Pre-defined prompt modes are `default', `simple', `xmp' and `inf-ruby' diff --git a/lib/irb/lc/ja/help-message b/lib/irb/lc/ja/help-message index 9794a8e24e..238535afb7 100644 --- a/lib/irb/lc/ja/help-message +++ b/lib/irb/lc/ja/help-message @@ -29,6 +29,8 @@ Usage: irb.rb [options] [programfile] [arguments] --nosingleline シングルラインエディタを利用しない. --colorize 色付けを利用する. --nocolorize 色付けを利用しない. + --autocomplete オートコンプリートを利用する. + --noautocomplete オートコンプリートを利用しない. --prompt prompt-mode/--prompt-mode prompt-mode プロンプトモードを切替えます. 現在定義されているプ ロンプトモードは, default, simple, xmp, inf-rubyが |