diff --git a/ChangeLog b/ChangeLog index 71d342e187b6d9..f36e3726a0bdc0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Apr 13 13:57:36 2010 Keiju Ishitsuka + + * lib/irb/completion.rb (CompletionProc): fix [ruby-dev:40953] + [Bug #3126]. Thanks Kazuhiro NISHIYAMA. + Tue Apr 13 09:32:12 2010 NARUSE, Yui * transcode.c (transcode_loop): insert output the value when diff --git a/lib/irb/completion.rb b/lib/irb/completion.rb index a345c23af78abb..e059bc40559852 100644 --- a/lib/irb/completion.rb +++ b/lib/irb/completion.rb @@ -81,10 +81,10 @@ module InputCompletor candidates.grep(/^#{receiver}/).collect{|e| "::" + e} # when /^(((::)?[A-Z][^:.\(]*)+)::?([^:.]*)$/ - when /^([A-Z].*)::([^:.]+)*$/ + when /^([A-Z].*)::([^:.]*)$/ # Constant or class methods receiver = $1 - message = Regexp.quote($4) + message = Regexp.quote($2) begin candidates = eval("#{receiver}.constants.collect{|m| m.to_s}", bind) candidates |= eval("#{receiver}.methods.collect{|m| m.to_s}", bind) @@ -134,7 +134,7 @@ module InputCompletor when /^([^."].*)\.([^.]*)$/ # variable receiver = $1 - message = Regexp.quote($3) + message = Regexp.quote($2) gv = eval("global_variables", bind).collect{|m| m.to_s} lv = eval("local_variables", bind).collect{|m| m.to_s}