mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/optparse.rb (OptionParser::Completion#complete): default not to
ignore case on completion. [ruby-talk:84726] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
4646ba6b2a
commit
2a40bbeea0
2 changed files with 16 additions and 3 deletions
|
@ -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
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue