lib/getopt.rb in gnn-rblibs-0.0.1 vs lib/getopt.rb in gnn-rblibs-0.0.3
- old
+ new
@@ -1,10 +1,14 @@
class GetOpt
def self.escape(str, quote=true)
str = str.to_s
- return str unless str.match(/[\\\"\'\s]/)
- str = str.gsub(/\\/, '\\\\').gsub(/\"/, '\\\"')
- return quote ? '"'+str+'"' : str
+ return "''" if str.empty?
+ str = str.dup
+
+ str.gsub!(/([^A-Za-z0-9_\-.,:\/@\n])/n, "\\\\\\1")
+ str.gsub!(/\n/, "'\n'")
+
+ return str
end
attr_accessor :args, :parsed, :rest, :parser
def initialize(args, *opts)