summaryrefslogtreecommitdiffstats
path: root/lib/optparse.rb
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-11-06 02:01:23 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-11-06 02:01:23 +0000
commit3b6c91c7a5bcb8a937f3a7fa1d47238709067d6e (patch)
treed85170871bc382ba636cc7149f7255306a3c4ee1 /lib/optparse.rb
parent9e1ea49dd3469c8d2a29f1f2d9b0de62b0591fc9 (diff)
downloadruby-3b6c91c7a5bcb8a937f3a7fa1d47238709067d6e.tar.gz
ruby-3b6c91c7a5bcb8a937f3a7fa1d47238709067d6e.tar.xz
ruby-3b6c91c7a5bcb8a937f3a7fa1d47238709067d6e.zip
* 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
Diffstat (limited to 'lib/optparse.rb')
-rw-r--r--lib/optparse.rb14
1 files changed, 12 insertions, 2 deletions
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