summaryrefslogtreecommitdiff
path: root/lib/slop/result.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/slop/result.rb')
-rw-r--r--lib/slop/result.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/slop/result.rb b/lib/slop/result.rb
index 6f56248..469d05c 100644
--- a/lib/slop/result.rb
+++ b/lib/slop/result.rb
@@ -33,7 +33,11 @@ module Slop
# Returns an Option if it exists. Ignores any prefixed hyphens.
def option(flag)
- cleaned = -> (f) { f.to_s.sub(/\A--?/, '').tr('_', '-') }
+ cleaned = -> (f) do
+ key = f.to_s.sub(/\A--?/, '')
+ key = key.tr '-', '_' if parser.config[:underscore_flags]
+ key.to_sym
+ end
options.find do |o|
o.flags.any? { |f| cleaned.(f) == cleaned.(flag) }
end