twitter_cldr 1.5.0 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (203) hide show
  1. data/Gemfile +32 -0
  2. data/History.txt +78 -0
  3. data/README.md +72 -62
  4. data/Rakefile +22 -0
  5. data/js/lib/compiler.rb +40 -0
  6. data/js/lib/mustache/bundle.coffee +14 -0
  7. data/js/lib/mustache/calendars/datetime.coffee +240 -0
  8. data/js/lib/mustache/calendars/timespan.coffee +52 -0
  9. data/js/lib/mustache/plurals/rules.coffee +14 -0
  10. data/js/lib/renderers/base.rb +18 -0
  11. data/js/lib/renderers/bundle.rb +18 -0
  12. data/js/lib/renderers/calendars/datetime_renderer.rb +34 -0
  13. data/js/lib/renderers/calendars/timespan_renderer.rb +39 -0
  14. data/js/lib/renderers/plurals/rules/plural_rules_compiler.rb +89 -0
  15. data/js/lib/renderers/plurals/rules/plural_rules_renderer.rb +26 -0
  16. data/js/lib/twitter_cldr_js.rb +85 -0
  17. data/js/spec/js/calendars/datetime_spec.js +418 -0
  18. data/js/spec/js/calendars/timespan_spec.js +91 -0
  19. data/js/spec/js/plurals/plural_rules_spec.js +28 -0
  20. data/js/spec/js/support/jasmine.yml +8 -0
  21. data/js/spec/rb/renderers/plurals/plural_rules_compiler_spec.rb +52 -0
  22. data/js/spec/rb/spec_helper.rb +13 -0
  23. data/lib/twitter_cldr.rb +2 -1
  24. data/lib/twitter_cldr/collation.rb +2 -1
  25. data/lib/twitter_cldr/collation/collator.rb +49 -31
  26. data/lib/twitter_cldr/collation/{sort_key.rb → sort_key_builder.rb} +31 -8
  27. data/lib/twitter_cldr/collation/trie.rb +116 -24
  28. data/lib/twitter_cldr/collation/trie_builder.rb +54 -28
  29. data/lib/twitter_cldr/collation/trie_with_fallback.rb +55 -0
  30. data/lib/twitter_cldr/core_ext/array.rb +14 -1
  31. data/lib/twitter_cldr/core_ext/calendars/datetime.rb +8 -2
  32. data/lib/twitter_cldr/core_ext/calendars/timespan.rb +5 -5
  33. data/lib/twitter_cldr/formatters/calendars/timespan_formatter.rb +10 -10
  34. data/lib/twitter_cldr/formatters/plurals/rules.rb +3 -5
  35. data/lib/twitter_cldr/resources.rb +11 -0
  36. data/lib/twitter_cldr/resources/import.rb +12 -0
  37. data/lib/twitter_cldr/resources/import/tailoring.rb +193 -0
  38. data/lib/twitter_cldr/{shared/resources.rb → resources/loader.rb} +17 -4
  39. data/lib/twitter_cldr/shared.rb +0 -1
  40. data/lib/twitter_cldr/tokenizers/base.rb +9 -9
  41. data/lib/twitter_cldr/tokenizers/calendars/datetime_tokenizer.rb +0 -4
  42. data/lib/twitter_cldr/tokenizers/calendars/timespan_tokenizer.rb +21 -7
  43. data/lib/twitter_cldr/utils.rb +11 -0
  44. data/lib/twitter_cldr/version.rb +1 -1
  45. data/resources/collation/tailoring/af.yml +3 -0
  46. data/resources/collation/tailoring/ar.yml +21 -0
  47. data/resources/collation/tailoring/ca.yml +9 -0
  48. data/resources/collation/tailoring/cs.yml +25 -0
  49. data/resources/collation/tailoring/da.yml +59 -0
  50. data/resources/collation/tailoring/de.yml +3 -0
  51. data/resources/collation/tailoring/el.yml +3 -0
  52. data/resources/collation/tailoring/en.yml +3 -0
  53. data/resources/collation/tailoring/es.yml +5 -0
  54. data/resources/collation/tailoring/eu.yml +3 -0
  55. data/resources/collation/tailoring/fa.yml +73 -0
  56. data/resources/collation/tailoring/fi.yml +61 -0
  57. data/resources/collation/tailoring/fil.yml +11 -0
  58. data/resources/collation/tailoring/fr.yml +3 -0
  59. data/resources/collation/tailoring/he.yml +3 -0
  60. data/resources/collation/tailoring/hi.yml +7 -0
  61. data/resources/collation/tailoring/hu.yml +125 -0
  62. data/resources/collation/tailoring/id.yml +3 -0
  63. data/resources/collation/tailoring/it.yml +3 -0
  64. data/resources/collation/tailoring/ja.yml +14647 -0
  65. data/resources/collation/tailoring/ko.yml +14953 -0
  66. data/resources/collation/tailoring/ms.yml +3 -0
  67. data/resources/collation/tailoring/nb.yml +59 -0
  68. data/resources/collation/tailoring/nl.yml +3 -0
  69. data/resources/collation/tailoring/pl.yml +37 -0
  70. data/resources/collation/tailoring/pt.yml +3 -0
  71. data/resources/collation/tailoring/ru.yml +3 -0
  72. data/resources/collation/tailoring/sv.yml +63 -0
  73. data/resources/collation/tailoring/th.yml +19 -0
  74. data/resources/collation/tailoring/tr.yml +27 -0
  75. data/resources/collation/tailoring/uk.yml +5 -0
  76. data/resources/collation/tailoring/ur.yml +163 -0
  77. data/resources/collation/tailoring/zh-Hant.yml +3 -0
  78. data/resources/collation/tailoring/zh.yml +149 -0
  79. data/resources/custom/locales/af/units.yml +19 -0
  80. data/resources/custom/locales/ar/units.yml +35 -0
  81. data/resources/custom/locales/ca/units.yml +19 -0
  82. data/resources/custom/locales/cs/units.yml +23 -0
  83. data/resources/custom/locales/da/units.yml +19 -0
  84. data/resources/custom/locales/de/units.yml +19 -0
  85. data/resources/custom/locales/el/units.yml +19 -0
  86. data/resources/custom/locales/en/units.yml +18 -0
  87. data/resources/custom/locales/es/units.yml +19 -0
  88. data/resources/custom/locales/eu/units.yml +19 -0
  89. data/resources/custom/locales/fa/units.yml +15 -0
  90. data/resources/custom/locales/fi/units.yml +19 -0
  91. data/resources/custom/locales/fil/units.yml +19 -0
  92. data/resources/custom/locales/fr/units.yml +19 -0
  93. data/resources/custom/locales/he/units.yml +19 -0
  94. data/resources/custom/locales/hi/units.yml +19 -0
  95. data/resources/custom/locales/hu/units.yml +15 -0
  96. data/resources/custom/locales/id/units.yml +15 -0
  97. data/resources/custom/locales/it/units.yml +19 -0
  98. data/resources/custom/locales/ja/units.yml +15 -0
  99. data/resources/custom/locales/ko/units.yml +15 -0
  100. data/resources/custom/locales/ms/units.yml +15 -0
  101. data/resources/custom/locales/nb/units.yml +19 -0
  102. data/resources/custom/locales/nl/units.yml +19 -0
  103. data/resources/custom/locales/pl/units.yml +23 -0
  104. data/resources/custom/locales/pt/units.yml +19 -0
  105. data/resources/custom/locales/ru/units.yml +27 -0
  106. data/resources/custom/locales/sv/units.yml +19 -0
  107. data/resources/custom/locales/th/units.yml +15 -0
  108. data/resources/custom/locales/tr/units.yml +15 -0
  109. data/resources/custom/locales/uk/units.yml +27 -0
  110. data/resources/custom/locales/ur/units.yml +19 -0
  111. data/resources/custom/locales/zh-Hant/units.yml +15 -0
  112. data/resources/custom/locales/zh/units.yml +15 -0
  113. data/resources/locales/af/units.yml +112 -65
  114. data/resources/locales/ar/units.yml +196 -126
  115. data/resources/locales/ca/units.yml +112 -70
  116. data/resources/locales/cs/units.yml +140 -91
  117. data/resources/locales/da/units.yml +98 -56
  118. data/resources/locales/de/units.yml +112 -70
  119. data/resources/locales/el/units.yml +119 -84
  120. data/resources/locales/en/units.yml +84 -42
  121. data/resources/locales/es/units.yml +112 -70
  122. data/resources/locales/eu/units.yml +105 -68
  123. data/resources/locales/fa/units.yml +98 -63
  124. data/resources/locales/fi/units.yml +112 -70
  125. data/resources/locales/fil/units.yml +98 -56
  126. data/resources/locales/fr/units.yml +112 -70
  127. data/resources/locales/he/units.yml +98 -56
  128. data/resources/locales/hi/units.yml +98 -56
  129. data/resources/locales/hu/units.yml +84 -49
  130. data/resources/locales/id/units.yml +84 -49
  131. data/resources/locales/it/units.yml +98 -56
  132. data/resources/locales/ja/units.yml +84 -49
  133. data/resources/locales/ko/units.yml +84 -49
  134. data/resources/locales/ms/units.yml +112 -63
  135. data/resources/locales/nb/units.yml +106 -64
  136. data/resources/locales/nl/units.yml +98 -56
  137. data/resources/locales/pl/units.yml +181 -112
  138. data/resources/locales/pt/units.yml +112 -70
  139. data/resources/locales/ru/units.yml +168 -112
  140. data/resources/locales/sv/units.yml +112 -70
  141. data/resources/locales/th/units.yml +84 -49
  142. data/resources/locales/tr/units.yml +84 -49
  143. data/resources/locales/uk/units.yml +168 -112
  144. data/resources/locales/ur/units.yml +112 -63
  145. data/resources/locales/zh-Hant/units.yml +84 -49
  146. data/resources/locales/zh/units.yml +84 -49
  147. data/spec/collation/collation_spec.rb +1 -1
  148. data/spec/collation/collator_spec.rb +120 -48
  149. data/spec/collation/sort_key_builder_spec.rb +80 -0
  150. data/spec/collation/tailoring_spec.rb +137 -0
  151. data/spec/collation/tailoring_tests/af.txt +321 -0
  152. data/spec/collation/tailoring_tests/ar.txt +188 -0
  153. data/spec/collation/tailoring_tests/ca.txt +446 -0
  154. data/spec/collation/tailoring_tests/cs.txt +273 -0
  155. data/spec/collation/tailoring_tests/da.txt +293 -0
  156. data/spec/collation/tailoring_tests/de.txt +414 -0
  157. data/spec/collation/tailoring_tests/el.txt +228 -0
  158. data/spec/collation/tailoring_tests/en.txt +399 -0
  159. data/spec/collation/tailoring_tests/es.txt +402 -0
  160. data/spec/collation/tailoring_tests/eu.txt +183 -0
  161. data/spec/collation/tailoring_tests/fa.txt +263 -0
  162. data/spec/collation/tailoring_tests/fi.txt +389 -0
  163. data/spec/collation/tailoring_tests/fil.txt +279 -0
  164. data/spec/collation/tailoring_tests/fr.txt +363 -0
  165. data/spec/collation/tailoring_tests/he.txt +167 -0
  166. data/spec/collation/tailoring_tests/hi.txt +230 -0
  167. data/spec/collation/tailoring_tests/hu.txt +773 -0
  168. data/spec/collation/tailoring_tests/id.txt +171 -0
  169. data/spec/collation/tailoring_tests/it.txt +231 -0
  170. data/spec/collation/tailoring_tests/ja.txt +4287 -0
  171. data/spec/collation/tailoring_tests/ko.txt +1761 -0
  172. data/spec/collation/tailoring_tests/ms.txt +531 -0
  173. data/spec/collation/tailoring_tests/nb.txt +375 -0
  174. data/spec/collation/tailoring_tests/nl.txt +273 -0
  175. data/spec/collation/tailoring_tests/pl.txt +225 -0
  176. data/spec/collation/tailoring_tests/pt.txt +405 -0
  177. data/spec/collation/tailoring_tests/ru.txt +213 -0
  178. data/spec/collation/tailoring_tests/sv.txt +353 -0
  179. data/spec/collation/tailoring_tests/th.txt +239 -0
  180. data/spec/collation/tailoring_tests/tr.txt +414 -0
  181. data/spec/collation/tailoring_tests/uk.txt +218 -0
  182. data/spec/collation/tailoring_tests/ur.txt +284 -0
  183. data/spec/collation/tailoring_tests/zh-Hant.txt +626 -0
  184. data/spec/collation/tailoring_tests/zh.txt +717 -0
  185. data/spec/collation/trie_builder_spec.rb +131 -51
  186. data/spec/collation/trie_spec.rb +301 -26
  187. data/spec/collation/trie_with_fallback_spec.rb +41 -0
  188. data/spec/core_ext/array_spec.rb +46 -3
  189. data/spec/core_ext/calendars/date_spec.rb +24 -24
  190. data/spec/core_ext/calendars/datetime_spec.rb +7 -0
  191. data/spec/core_ext/calendars/time_spec.rb +2 -2
  192. data/spec/formatters/calendars/timespan_formatter_spec.rb +47 -18
  193. data/spec/formatters/plurals/rules_spec.rb +3 -11
  194. data/spec/readme_spec.rb +15 -15
  195. data/spec/resources/loader_spec.rb +94 -0
  196. data/spec/spec_helper.rb +6 -0
  197. data/spec/tokenizers/calendars/timespan_tokenizer_spec.rb +1 -1
  198. data/spec/twitter_cldr_spec.rb +3 -3
  199. data/spec/utils_spec.rb +38 -0
  200. data/twitter_cldr.gemspec +25 -0
  201. metadata +156 -110
  202. data/spec/collation/sort_key_spec.rb +0 -56
  203. data/spec/shared/resources_spec.rb +0 -75
@@ -13,7 +13,7 @@ describe TimespanTokenizer do
13
13
 
14
14
  it "should return the correct list of tokens" do
15
15
  tokenizer = TimespanTokenizer.new(:locale => :es)
16
- got = tokenizer.tokens(:unit => :minute, :direction => :ago, :number => 7659)
16
+ got = tokenizer.tokens(:unit => :minute, :direction => :ago, :number => 7659, :type => :default)
17
17
 
18
18
  got[0].should == { :value => "Hace ", :type => :plaintext }
19
19
  got[1].should == { :value => "{0}", :type => :placeholder }
@@ -78,14 +78,14 @@ describe TwitterCldr do
78
78
 
79
79
  describe '#resources' do
80
80
  it 'returns @resources' do
81
- resources = TwitterCldr::Shared::Resources.new
82
- TwitterCldr.send :instance_variable_set, :@resources, resources
81
+ resources = TwitterCldr::Resources::Loader.new
82
+ TwitterCldr.instance_variable_set(:@resources, resources)
83
83
 
84
84
  TwitterCldr.resources.should == resources
85
85
  end
86
86
  end
87
87
 
88
- let(:resources) { TwitterCldr::Shared::Resources.new }
88
+ let(:resources) { TwitterCldr::Resources::Loader.new }
89
89
 
90
90
  describe '#get_resource' do
91
91
  it 'delegates to resources' do
data/spec/utils_spec.rb CHANGED
@@ -30,6 +30,44 @@ describe TwitterCldr::Utils do
30
30
 
31
31
  end
32
32
 
33
+ describe "#deep_merge!" do
34
+ it "combines two non-nested hashes with different keys" do
35
+ first = { :foo => "bar" }
36
+ TwitterCldr::Utils.deep_merge!(first, { :bar => "baz" }).should == { :foo => "bar", :bar => "baz" }
37
+ end
38
+
39
+ it "combines two non-nested hashes with the same keys" do
40
+ first = { :foo => "bar" }
41
+ TwitterCldr::Utils.deep_merge!(first, { :foo => "baz" }).should == { :foo => "baz" }
42
+ end
43
+
44
+ it "combines two nested hashes" do
45
+ first = { :foo => "bar", :second => { :bar => "baz", :twitter => "rocks" } }
46
+ second = { :foo => "baz", :third => { :whassup => "cool" }, :second => { :twitter => "rules" } }
47
+ TwitterCldr::Utils.deep_merge!(first, second)
48
+ first.should == { :foo => "baz", :second => { :bar => "baz", :twitter => "rules" }, :third => { :whassup => "cool" } }
49
+ end
50
+
51
+ it "replaces arrays with simple types" do
52
+ first = [1, 2, 3]
53
+ TwitterCldr::Utils.deep_merge!(first, [4, 5, 6]).should == [4, 5, 6]
54
+ end
55
+
56
+ it "merges a nested hash with a few simple array replacements" do
57
+ first = { :foo => "bar", :second => { :bar => "baz", :twitter => [1, 2, 3] } }
58
+ second = { :foo => [18], :third => { :whassup => "cool" }, :second => { :twitter => [4, 5, 6] } }
59
+ TwitterCldr::Utils.deep_merge!(first, second)
60
+ first.should == { :foo => [18], :second => { :bar => "baz", :twitter => [4, 5, 6] }, :third => { :whassup => "cool" } }
61
+ end
62
+
63
+ it "merges hashes within arrays" do
64
+ first = [1, { :foo => "bar" }, { :bar => "baz" }, 8]
65
+ second = [2, { :foo => "bar2" }, { :bar => "baz2", :twitter => "rules" }, 8, 9]
66
+ TwitterCldr::Utils.deep_merge!(first, second)
67
+ first.should == [2, { :foo => "bar2" }, { :bar => "baz2", :twitter => "rules" }, 8, 9]
68
+ end
69
+ end
70
+
33
71
  describe "#compute_cache_key" do
34
72
  it "returns a ruby hash of all the pieces concatenated with pipe characters" do
35
73
  TwitterCldr::Utils.compute_cache_key("space", "the", "final", "frontier").should == "space|the|final|frontier".hash
@@ -0,0 +1,25 @@
1
+ require File.join(File.dirname(__FILE__), 'lib', 'twitter_cldr', 'version')
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = "twitter_cldr"
5
+ s.version = ::TwitterCldr::VERSION
6
+ s.authors = ["Cameron Dutro"]
7
+ s.email = ["cdutro@twitter.com"]
8
+ s.homepage = "http://twitter.com"
9
+
10
+ s.description = s.summary = "Provides date, time, number, and list formatting functionality for various Twitter-supported locales in Ruby and Javascript."
11
+
12
+ s.platform = Gem::Platform::RUBY
13
+ s.has_rdoc = true
14
+ s.summary = "Text formatting using data from Unicode's Common Locale Data Repository (CLDR)."
15
+
16
+ s.add_dependency 'json', '>= 1.1.9'
17
+
18
+ s.require_path = 'lib'
19
+
20
+ gem_files = Dir["{js,lib,spec,resources}/**/*", "Gemfile", "History.txt", "LICENSE", "NOTICE", "README.md", "Rakefile", "twitter_cldr.gemspec"]
21
+ excluded_files = %w[spec/collation/CollationTest_CLDR_NON_IGNORABLE.txt spec/normalization/NormalizationTest.txt]
22
+ versioned_files = `git ls-files`.split("\n")
23
+
24
+ s.files = (gem_files - excluded_files) & versioned_files
25
+ end
metadata CHANGED
@@ -1,8 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twitter_cldr
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 15
4
5
  prerelease:
5
- version: 1.5.0
6
+ segments:
7
+ - 1
8
+ - 6
9
+ - 0
10
+ version: 1.6.0
6
11
  platform: ruby
7
12
  authors:
8
13
  - Cameron Dutro
@@ -10,7 +15,7 @@ autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
17
 
13
- date: 2012-06-28 00:00:00 Z
18
+ date: 2012-07-19 00:00:00 Z
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: json
@@ -20,108 +25,14 @@ dependencies:
20
25
  requirements:
21
26
  - - ">="
22
27
  - !ruby/object:Gem::Version
28
+ hash: 1
29
+ segments:
30
+ - 1
31
+ - 1
32
+ - 9
23
33
  version: 1.1.9
24
34
  type: :runtime
25
35
  version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: mustache
28
- prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
30
- none: false
31
- requirements:
32
- - - ~>
33
- - !ruby/object:Gem::Version
34
- version: 0.99.4
35
- type: :development
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
38
- name: rspec
39
- prerelease: false
40
- requirement: &id003 !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ~>
44
- - !ruby/object:Gem::Version
45
- version: 2.9.0
46
- type: :development
47
- version_requirements: *id003
48
- - !ruby/object:Gem::Dependency
49
- name: rr
50
- prerelease: false
51
- requirement: &id004 !ruby/object:Gem::Requirement
52
- none: false
53
- requirements:
54
- - - ~>
55
- - !ruby/object:Gem::Version
56
- version: 1.0.4
57
- type: :development
58
- version_requirements: *id004
59
- - !ruby/object:Gem::Dependency
60
- name: rake
61
- prerelease: false
62
- requirement: &id005 !ruby/object:Gem::Requirement
63
- none: false
64
- requirements:
65
- - - ~>
66
- - !ruby/object:Gem::Version
67
- version: 0.9.2
68
- type: :development
69
- version_requirements: *id005
70
- - !ruby/object:Gem::Dependency
71
- name: jasmine-headless-webkit
72
- prerelease: false
73
- requirement: &id006 !ruby/object:Gem::Requirement
74
- none: false
75
- requirements:
76
- - - ~>
77
- - !ruby/object:Gem::Version
78
- version: 0.9.0.rc1
79
- type: :development
80
- version_requirements: *id006
81
- - !ruby/object:Gem::Dependency
82
- name: therubyracer
83
- prerelease: false
84
- requirement: &id007 !ruby/object:Gem::Requirement
85
- none: false
86
- requirements:
87
- - - ~>
88
- - !ruby/object:Gem::Version
89
- version: 0.9.10
90
- type: :development
91
- version_requirements: *id007
92
- - !ruby/object:Gem::Dependency
93
- name: uglifier
94
- prerelease: false
95
- requirement: &id008 !ruby/object:Gem::Requirement
96
- none: false
97
- requirements:
98
- - - ~>
99
- - !ruby/object:Gem::Version
100
- version: 1.2.4
101
- type: :development
102
- version_requirements: *id008
103
- - !ruby/object:Gem::Dependency
104
- name: coffee-script
105
- prerelease: false
106
- requirement: &id009 !ruby/object:Gem::Requirement
107
- none: false
108
- requirements:
109
- - - ~>
110
- - !ruby/object:Gem::Version
111
- version: 2.2.0
112
- type: :development
113
- version_requirements: *id009
114
- - !ruby/object:Gem::Dependency
115
- name: zip
116
- prerelease: false
117
- requirement: &id010 !ruby/object:Gem::Requirement
118
- none: false
119
- requirements:
120
- - - ">="
121
- - !ruby/object:Gem::Version
122
- version: "0"
123
- type: :development
124
- version_requirements: *id010
125
36
  description: Provides date, time, number, and list formatting functionality for various Twitter-supported locales in Ruby and Javascript.
126
37
  email:
127
38
  - cdutro@twitter.com
@@ -132,15 +43,30 @@ extensions: []
132
43
  extra_rdoc_files: []
133
44
 
134
45
  files:
135
- - LICENSE
136
- - README.md
137
- - NOTICE
138
- - Rakefile
46
+ - js/lib/compiler.rb
47
+ - js/lib/mustache/bundle.coffee
48
+ - js/lib/mustache/calendars/datetime.coffee
49
+ - js/lib/mustache/calendars/timespan.coffee
50
+ - js/lib/mustache/plurals/rules.coffee
51
+ - js/lib/renderers/base.rb
52
+ - js/lib/renderers/bundle.rb
53
+ - js/lib/renderers/calendars/datetime_renderer.rb
54
+ - js/lib/renderers/calendars/timespan_renderer.rb
55
+ - js/lib/renderers/plurals/rules/plural_rules_compiler.rb
56
+ - js/lib/renderers/plurals/rules/plural_rules_renderer.rb
57
+ - js/lib/twitter_cldr_js.rb
58
+ - js/spec/js/calendars/datetime_spec.js
59
+ - js/spec/js/calendars/timespan_spec.js
60
+ - js/spec/js/plurals/plural_rules_spec.js
61
+ - js/spec/js/support/jasmine.yml
62
+ - js/spec/rb/renderers/plurals/plural_rules_compiler_spec.rb
63
+ - js/spec/rb/spec_helper.rb
139
64
  - lib/twitter_cldr/collation/collator.rb
140
65
  - lib/twitter_cldr/collation/implicit_collation_elements.rb
141
- - lib/twitter_cldr/collation/sort_key.rb
66
+ - lib/twitter_cldr/collation/sort_key_builder.rb
142
67
  - lib/twitter_cldr/collation/trie.rb
143
68
  - lib/twitter_cldr/collation/trie_builder.rb
69
+ - lib/twitter_cldr/collation/trie_with_fallback.rb
144
70
  - lib/twitter_cldr/collation.rb
145
71
  - lib/twitter_cldr/core_ext/array.rb
146
72
  - lib/twitter_cldr/core_ext/calendars/date.rb
@@ -179,12 +105,15 @@ files:
179
105
  - lib/twitter_cldr/normalization/nfkc.rb
180
106
  - lib/twitter_cldr/normalization/nfkd.rb
181
107
  - lib/twitter_cldr/normalization.rb
108
+ - lib/twitter_cldr/resources/import/tailoring.rb
109
+ - lib/twitter_cldr/resources/import.rb
110
+ - lib/twitter_cldr/resources/loader.rb
111
+ - lib/twitter_cldr/resources.rb
182
112
  - lib/twitter_cldr/shared/calendar.rb
183
113
  - lib/twitter_cldr/shared/code_point.rb
184
114
  - lib/twitter_cldr/shared/currencies.rb
185
115
  - lib/twitter_cldr/shared/languages.rb
186
116
  - lib/twitter_cldr/shared/numbers.rb
187
- - lib/twitter_cldr/shared/resources.rb
188
117
  - lib/twitter_cldr/shared/timezones.rb
189
118
  - lib/twitter_cldr/shared.rb
190
119
  - lib/twitter_cldr/tokenizers/base.rb
@@ -205,9 +134,45 @@ files:
205
134
  - spec/collation/CollationTest_CLDR_NON_IGNORABLE_Short.txt
206
135
  - spec/collation/collator_spec.rb
207
136
  - spec/collation/implicit_collation_elements_spec.rb
208
- - spec/collation/sort_key_spec.rb
137
+ - spec/collation/sort_key_builder_spec.rb
138
+ - spec/collation/tailoring_spec.rb
139
+ - spec/collation/tailoring_tests/af.txt
140
+ - spec/collation/tailoring_tests/ar.txt
141
+ - spec/collation/tailoring_tests/ca.txt
142
+ - spec/collation/tailoring_tests/cs.txt
143
+ - spec/collation/tailoring_tests/da.txt
144
+ - spec/collation/tailoring_tests/de.txt
145
+ - spec/collation/tailoring_tests/el.txt
146
+ - spec/collation/tailoring_tests/en.txt
147
+ - spec/collation/tailoring_tests/es.txt
148
+ - spec/collation/tailoring_tests/eu.txt
149
+ - spec/collation/tailoring_tests/fa.txt
150
+ - spec/collation/tailoring_tests/fi.txt
151
+ - spec/collation/tailoring_tests/fil.txt
152
+ - spec/collation/tailoring_tests/fr.txt
153
+ - spec/collation/tailoring_tests/he.txt
154
+ - spec/collation/tailoring_tests/hi.txt
155
+ - spec/collation/tailoring_tests/hu.txt
156
+ - spec/collation/tailoring_tests/id.txt
157
+ - spec/collation/tailoring_tests/it.txt
158
+ - spec/collation/tailoring_tests/ja.txt
159
+ - spec/collation/tailoring_tests/ko.txt
160
+ - spec/collation/tailoring_tests/ms.txt
161
+ - spec/collation/tailoring_tests/nb.txt
162
+ - spec/collation/tailoring_tests/nl.txt
163
+ - spec/collation/tailoring_tests/pl.txt
164
+ - spec/collation/tailoring_tests/pt.txt
165
+ - spec/collation/tailoring_tests/ru.txt
166
+ - spec/collation/tailoring_tests/sv.txt
167
+ - spec/collation/tailoring_tests/th.txt
168
+ - spec/collation/tailoring_tests/tr.txt
169
+ - spec/collation/tailoring_tests/uk.txt
170
+ - spec/collation/tailoring_tests/ur.txt
171
+ - spec/collation/tailoring_tests/zh-Hant.txt
172
+ - spec/collation/tailoring_tests/zh.txt
209
173
  - spec/collation/trie_builder_spec.rb
210
174
  - spec/collation/trie_spec.rb
175
+ - spec/collation/trie_with_fallback_spec.rb
211
176
  - spec/core_ext/array_spec.rb
212
177
  - spec/core_ext/calendars/date_spec.rb
213
178
  - spec/core_ext/calendars/datetime_spec.rb
@@ -236,12 +201,12 @@ files:
236
201
  - spec/normalization/normalization_spec.rb
237
202
  - spec/normalization/NormalizationTestShort.txt
238
203
  - spec/readme_spec.rb
204
+ - spec/resources/loader_spec.rb
239
205
  - spec/shared/calendar_spec.rb
240
206
  - spec/shared/code_point_spec.rb
241
207
  - spec/shared/currencies_spec.rb
242
208
  - spec/shared/languages_spec.rb
243
209
  - spec/shared/numbers_spec.rb
244
- - spec/shared/resources_spec.rb
245
210
  - spec/spec_helper.rb
246
211
  - spec/tokenizers/base_spec.rb
247
212
  - spec/tokenizers/calendars/date_tokenizer_spec.rb
@@ -256,6 +221,74 @@ files:
256
221
  - spec/utils/interpolation_spec.rb
257
222
  - spec/utils_spec.rb
258
223
  - resources/collation/FractionalUCA_SHORT.txt
224
+ - resources/collation/tailoring/af.yml
225
+ - resources/collation/tailoring/ar.yml
226
+ - resources/collation/tailoring/ca.yml
227
+ - resources/collation/tailoring/cs.yml
228
+ - resources/collation/tailoring/da.yml
229
+ - resources/collation/tailoring/de.yml
230
+ - resources/collation/tailoring/el.yml
231
+ - resources/collation/tailoring/en.yml
232
+ - resources/collation/tailoring/es.yml
233
+ - resources/collation/tailoring/eu.yml
234
+ - resources/collation/tailoring/fa.yml
235
+ - resources/collation/tailoring/fi.yml
236
+ - resources/collation/tailoring/fil.yml
237
+ - resources/collation/tailoring/fr.yml
238
+ - resources/collation/tailoring/he.yml
239
+ - resources/collation/tailoring/hi.yml
240
+ - resources/collation/tailoring/hu.yml
241
+ - resources/collation/tailoring/id.yml
242
+ - resources/collation/tailoring/it.yml
243
+ - resources/collation/tailoring/ja.yml
244
+ - resources/collation/tailoring/ko.yml
245
+ - resources/collation/tailoring/ms.yml
246
+ - resources/collation/tailoring/nb.yml
247
+ - resources/collation/tailoring/nl.yml
248
+ - resources/collation/tailoring/pl.yml
249
+ - resources/collation/tailoring/pt.yml
250
+ - resources/collation/tailoring/ru.yml
251
+ - resources/collation/tailoring/sv.yml
252
+ - resources/collation/tailoring/th.yml
253
+ - resources/collation/tailoring/tr.yml
254
+ - resources/collation/tailoring/uk.yml
255
+ - resources/collation/tailoring/ur.yml
256
+ - resources/collation/tailoring/zh-Hant.yml
257
+ - resources/collation/tailoring/zh.yml
258
+ - resources/custom/locales/af/units.yml
259
+ - resources/custom/locales/ar/units.yml
260
+ - resources/custom/locales/ca/units.yml
261
+ - resources/custom/locales/cs/units.yml
262
+ - resources/custom/locales/da/units.yml
263
+ - resources/custom/locales/de/units.yml
264
+ - resources/custom/locales/el/units.yml
265
+ - resources/custom/locales/en/units.yml
266
+ - resources/custom/locales/es/units.yml
267
+ - resources/custom/locales/eu/units.yml
268
+ - resources/custom/locales/fa/units.yml
269
+ - resources/custom/locales/fi/units.yml
270
+ - resources/custom/locales/fil/units.yml
271
+ - resources/custom/locales/fr/units.yml
272
+ - resources/custom/locales/he/units.yml
273
+ - resources/custom/locales/hi/units.yml
274
+ - resources/custom/locales/hu/units.yml
275
+ - resources/custom/locales/id/units.yml
276
+ - resources/custom/locales/it/units.yml
277
+ - resources/custom/locales/ja/units.yml
278
+ - resources/custom/locales/ko/units.yml
279
+ - resources/custom/locales/ms/units.yml
280
+ - resources/custom/locales/nb/units.yml
281
+ - resources/custom/locales/nl/units.yml
282
+ - resources/custom/locales/pl/units.yml
283
+ - resources/custom/locales/pt/units.yml
284
+ - resources/custom/locales/ru/units.yml
285
+ - resources/custom/locales/sv/units.yml
286
+ - resources/custom/locales/th/units.yml
287
+ - resources/custom/locales/tr/units.yml
288
+ - resources/custom/locales/uk/units.yml
289
+ - resources/custom/locales/ur/units.yml
290
+ - resources/custom/locales/zh/units.yml
291
+ - resources/custom/locales/zh-Hant/units.yml
259
292
  - resources/locales/af/calendars.yml
260
293
  - resources/locales/af/languages.yml
261
294
  - resources/locales/af/numbers.yml
@@ -651,6 +684,13 @@ files:
651
684
  - resources/unicode_data/yi_radicals.yml
652
685
  - resources/unicode_data/yi_syllables.yml
653
686
  - resources/unicode_data/yijing_hexagram_symbols.yml
687
+ - Gemfile
688
+ - History.txt
689
+ - LICENSE
690
+ - NOTICE
691
+ - README.md
692
+ - Rakefile
693
+ - twitter_cldr.gemspec
654
694
  homepage: http://twitter.com
655
695
  licenses: []
656
696
 
@@ -664,17 +704,23 @@ required_ruby_version: !ruby/object:Gem::Requirement
664
704
  requirements:
665
705
  - - ">="
666
706
  - !ruby/object:Gem::Version
707
+ hash: 3
708
+ segments:
709
+ - 0
667
710
  version: "0"
668
711
  required_rubygems_version: !ruby/object:Gem::Requirement
669
712
  none: false
670
713
  requirements:
671
714
  - - ">="
672
715
  - !ruby/object:Gem::Version
716
+ hash: 3
717
+ segments:
718
+ - 0
673
719
  version: "0"
674
720
  requirements: []
675
721
 
676
722
  rubyforge_project:
677
- rubygems_version: 1.8.17
723
+ rubygems_version: 1.8.10
678
724
  signing_key:
679
725
  specification_version: 3
680
726
  summary: Text formatting using data from Unicode's Common Locale Data Repository (CLDR).