[前][次][番号順一覧][スレッド一覧]

ruby-changes:9651

From: yugui <ko1@a...>
Date: Tue, 30 Dec 2008 19:32:41 +0900 (JST)
Subject: [ruby-changes:9651] Ruby:r21192 (ruby_1_9_1): merges r21171 from trunk into ruby_1_9_1.

yugui	2008-12-30 19:32:16 +0900 (Tue, 30 Dec 2008)

  New Revision: 21192

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=21192

  Log:
    merges r21171 from trunk into ruby_1_9_1.
    * bin/erb: accepts options in more flexible styles.

  Modified files:
    branches/ruby_1_9_1/ChangeLog
    branches/ruby_1_9_1/bin/erb

Index: ruby_1_9_1/ChangeLog
===================================================================
--- ruby_1_9_1/ChangeLog	(revision 21191)
+++ ruby_1_9_1/ChangeLog	(revision 21192)
@@ -1,3 +1,7 @@
+Mon Dec 29 17:53:24 2008  Yuki Sonoda (Yugui)  <yugui@y...>
+
+	* bin/erb: accepts options in more flexible styles.
+
 Mon Dec 29 17:25:17 2008  Yuki Sonoda (Yugui)  <yugui@y...>
 
 	* lib/erb.rb (ERB): m17n of ERB. adds rdoc.
Index: ruby_1_9_1/bin/erb
===================================================================
--- ruby_1_9_1/bin/erb	(revision 21191)
+++ ruby_1_9_1/bin/erb	(revision 21192)
@@ -12,9 +12,17 @@
       arg = self.shift
       return nil if arg == '--'
       if arg =~ /^-(.)(.*)/
-        return arg if $1 == '-'
-        raise 'unknown switch "-"' if $2.index('-')
-        self.unshift "-#{$2}" if $2.size > 0
+        if $1 == '-'
+          arg, @maybe_arg = arg.split(/=/, 2)
+          return arg 
+        end
+        raise 'unknown switch "-"' if $2[0] == ?- and $1 != 'T'
+        if $2.size > 0
+          self.unshift "-#{$2}" 
+          @maybe_arg = $2
+        else
+          @maybe_arg = nil
+        end
         "-#{$1}"
       else
         self.unshift arg
@@ -23,7 +31,9 @@
     end
     
     def ARGV.req_arg
-      self.shift || raise('missing argument')
+      (@maybe_arg || self.shift || raise('missing argument')).tap {
+        @maybe_arg = nil
+      }
     end
 
     def trim_mode_opt(trim_mode, disable_percent)
@@ -94,11 +104,11 @@
   -n               print ruby script with line number
   -v               enable verbose mode
   -d               set $DEBUG to true
-  -r [library]     load a library
-  -S [safe_level]  set $SAFE (0..4)
+  -r library       load a library
+  -S safe_level    set $SAFE (0..4)
   -E ex[:in]       set default external/internal encodings
   -U               set default encoding to UTF-8.
-  -T [trim_mode]   specify trim_mode (0..2, -)
+  -T trim_mode     specify trim_mode (0..2, -)
   -P               ignore lines which start with "%"
 EOU
         exit 1

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]