11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
# File 'lib/in_the_zone/ldml_format.rb', line 11
def convert_to_strftime( pattern )
return pattern.gsub(@patterns) do |match|
token = match.slice( 0, 1 )
len = match.length
case token
when 'y', 'Y'
"%Y"
when 'M'
if (len === 1)
"%-m"
elsif (len < 3)
"%m"
elsif (len === 3)
"%b"
elsif (len === 4)
"%B"
else
"%^b"
end
when 'w'
"%U"
when 'd'
if (len === 1)
"%-d"
else
"%d"
end
when 'D'
"%j"
when 'e', 'E'
if ( (token == 'e') && (len < 3) )
"%w"
elsif (len < 4)
"%a"
else
"%A"
end
when 'a'
"%P"
when 'A'
"%p"
when 'h'
len > 1 ? "%I" : "%l"
when 'H'
len > 1 ? "%H" : "%k"
when 'm'
"%M"
when 's'
"%S"
when 'L'
case len
when 1
"%D"
when 2
"%B %d %Y"
when 3
"%B %d %Y %l:%M %p"
else
"%A, %B %d %Y %l:%M %p"
end
else " " * len
end
end
end
|