summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-08-05 04:55:00 +0000
committertadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-08-05 04:55:00 +0000
commita15fe4d1f2e17830a037bb029c4578f1555d5eba (patch)
tree24a1ca1681a04b33420026b7580f78984bb57132
parentf567761a7be7ebb09f83bbdd761c0355a8cf0486 (diff)
"%\n" means "\n".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--lib/date/format.rb13
2 files changed, 13 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 5997f2ebd4..2370babb31 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Sat Aug 5 13:54:03 2006 Tadayoshi Funaba <tadf@dotrb.org>
+
+ * lib/date/format.rb (str[fp]time): "%\n" means "\n".
+
Fri Aug 4 15:21:00 2006 Eric Hodel <drbrain@segment7.net>
* lib: Merge RDoc and .document from HEAD.
diff --git a/lib/date/format.rb b/lib/date/format.rb
index 52eecaf2a2..04fadd84a2 100644
--- a/lib/date/format.rb
+++ b/lib/date/format.rb
@@ -1,4 +1,4 @@
-# format.rb: Written by Tadayoshi Funaba 1999-2005
+# format.rb: Written by Tadayoshi Funaba 1999-2006
# $Id: format.rb,v 2.15 2005-02-06 13:28:48+09 tadf Exp $
require 'rational'
@@ -52,7 +52,7 @@ class Date
def self.__strptime(str, fmt, elem)
fmt.scan(/%[EO]?.|./mo) do |c|
- cc = c.sub(/\A%[EO]?(.)\Z/o, '%\\1')
+ cc = c.sub(/\A%[EO]?(.)\z/mo, '%\\1')
case cc
when /\A\s/o
str.sub!(/\A[\s\v]+/o, '')
@@ -213,6 +213,8 @@ class Date
warn("warning: %3 is deprecated; use '%F'")
end
return unless __strptime(str, '%F', elem)
+ when /\A%(.)/m
+ return unless str.sub!(Regexp.new('\\A' + Regexp.quote($1)), '')
else
return unless str.sub!(Regexp.new('\\A' + Regexp.quote(c)), '')
end
@@ -491,7 +493,7 @@ class Date
def strftime(fmt='%F')
o = ''
fmt.scan(/%[EO]?.|./mo) do |c|
- cc = c.sub(/^%[EO]?(.)$/o, '%\\1')
+ cc = c.sub(/\A%[EO]?(.)\z/mo, '%\\1')
case cc
when '%A'; o << DAYNAMES[wday]
when '%a'; o << ABBR_DAYNAMES[wday]
@@ -571,7 +573,10 @@ class Date
warn("warning: %3 is deprecated; use '%F'")
end
o << strftime('%F')
- else; o << c
+ when /\A%(.)/m
+ o << $1
+ else
+ o << c
end
end
o