From 3b6c91c7a5bcb8a937f3a7fa1d47238709067d6e Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 6 Nov 2003 02:01:23 +0000 Subject: * lib/optparse.rb (OptionParser::Completion#complete): default not to ignore case on completion. [ruby-talk:84726] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@4907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/optparse.rb | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/optparse.rb b/lib/optparse.rb index f0b97ba12..96609b219 100644 --- a/lib/optparse.rb +++ b/lib/optparse.rb @@ -80,7 +80,8 @@ Keyword completion module. completion pattern. =end #'#"#`# def complete(key, pat = nil) - pat ||= Regexp.new('\A' + Regexp.quote(key).gsub(/\w+(?=.)/, '\&\w*'), true) + pat ||= Regexp.new('\A' + Regexp.quote(key).gsub(/\w+(?=.)/, '\&\w*'), + ignore_case?) canon, sw, k, v = nil each do |k, *v| (if Regexp === k @@ -109,6 +110,10 @@ Keyword completion module. def convert(opt = nil, val = nil, *) val end + + def ignore_case? + false + end end =begin private @@ -122,6 +127,11 @@ Map from option/keyword string to object with completion. class OptionMap < Hash include Completion end + class OptionCaseMap < OptionMap + def ignore_case? + true + end + end =begin @@ -383,7 +393,7 @@ summary feature. def initialize @atype = {} @short = OptionMap.new - @long = OptionMap.new + @long = OptionCaseMap.new @list = [] end -- cgit