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.
- data/Gemfile +32 -0
- data/History.txt +78 -0
- data/README.md +72 -62
- data/Rakefile +22 -0
- data/js/lib/compiler.rb +40 -0
- data/js/lib/mustache/bundle.coffee +14 -0
- data/js/lib/mustache/calendars/datetime.coffee +240 -0
- data/js/lib/mustache/calendars/timespan.coffee +52 -0
- data/js/lib/mustache/plurals/rules.coffee +14 -0
- data/js/lib/renderers/base.rb +18 -0
- data/js/lib/renderers/bundle.rb +18 -0
- data/js/lib/renderers/calendars/datetime_renderer.rb +34 -0
- data/js/lib/renderers/calendars/timespan_renderer.rb +39 -0
- data/js/lib/renderers/plurals/rules/plural_rules_compiler.rb +89 -0
- data/js/lib/renderers/plurals/rules/plural_rules_renderer.rb +26 -0
- data/js/lib/twitter_cldr_js.rb +85 -0
- data/js/spec/js/calendars/datetime_spec.js +418 -0
- data/js/spec/js/calendars/timespan_spec.js +91 -0
- data/js/spec/js/plurals/plural_rules_spec.js +28 -0
- data/js/spec/js/support/jasmine.yml +8 -0
- data/js/spec/rb/renderers/plurals/plural_rules_compiler_spec.rb +52 -0
- data/js/spec/rb/spec_helper.rb +13 -0
- data/lib/twitter_cldr.rb +2 -1
- data/lib/twitter_cldr/collation.rb +2 -1
- data/lib/twitter_cldr/collation/collator.rb +49 -31
- data/lib/twitter_cldr/collation/{sort_key.rb → sort_key_builder.rb} +31 -8
- data/lib/twitter_cldr/collation/trie.rb +116 -24
- data/lib/twitter_cldr/collation/trie_builder.rb +54 -28
- data/lib/twitter_cldr/collation/trie_with_fallback.rb +55 -0
- data/lib/twitter_cldr/core_ext/array.rb +14 -1
- data/lib/twitter_cldr/core_ext/calendars/datetime.rb +8 -2
- data/lib/twitter_cldr/core_ext/calendars/timespan.rb +5 -5
- data/lib/twitter_cldr/formatters/calendars/timespan_formatter.rb +10 -10
- data/lib/twitter_cldr/formatters/plurals/rules.rb +3 -5
- data/lib/twitter_cldr/resources.rb +11 -0
- data/lib/twitter_cldr/resources/import.rb +12 -0
- data/lib/twitter_cldr/resources/import/tailoring.rb +193 -0
- data/lib/twitter_cldr/{shared/resources.rb → resources/loader.rb} +17 -4
- data/lib/twitter_cldr/shared.rb +0 -1
- data/lib/twitter_cldr/tokenizers/base.rb +9 -9
- data/lib/twitter_cldr/tokenizers/calendars/datetime_tokenizer.rb +0 -4
- data/lib/twitter_cldr/tokenizers/calendars/timespan_tokenizer.rb +21 -7
- data/lib/twitter_cldr/utils.rb +11 -0
- data/lib/twitter_cldr/version.rb +1 -1
- data/resources/collation/tailoring/af.yml +3 -0
- data/resources/collation/tailoring/ar.yml +21 -0
- data/resources/collation/tailoring/ca.yml +9 -0
- data/resources/collation/tailoring/cs.yml +25 -0
- data/resources/collation/tailoring/da.yml +59 -0
- data/resources/collation/tailoring/de.yml +3 -0
- data/resources/collation/tailoring/el.yml +3 -0
- data/resources/collation/tailoring/en.yml +3 -0
- data/resources/collation/tailoring/es.yml +5 -0
- data/resources/collation/tailoring/eu.yml +3 -0
- data/resources/collation/tailoring/fa.yml +73 -0
- data/resources/collation/tailoring/fi.yml +61 -0
- data/resources/collation/tailoring/fil.yml +11 -0
- data/resources/collation/tailoring/fr.yml +3 -0
- data/resources/collation/tailoring/he.yml +3 -0
- data/resources/collation/tailoring/hi.yml +7 -0
- data/resources/collation/tailoring/hu.yml +125 -0
- data/resources/collation/tailoring/id.yml +3 -0
- data/resources/collation/tailoring/it.yml +3 -0
- data/resources/collation/tailoring/ja.yml +14647 -0
- data/resources/collation/tailoring/ko.yml +14953 -0
- data/resources/collation/tailoring/ms.yml +3 -0
- data/resources/collation/tailoring/nb.yml +59 -0
- data/resources/collation/tailoring/nl.yml +3 -0
- data/resources/collation/tailoring/pl.yml +37 -0
- data/resources/collation/tailoring/pt.yml +3 -0
- data/resources/collation/tailoring/ru.yml +3 -0
- data/resources/collation/tailoring/sv.yml +63 -0
- data/resources/collation/tailoring/th.yml +19 -0
- data/resources/collation/tailoring/tr.yml +27 -0
- data/resources/collation/tailoring/uk.yml +5 -0
- data/resources/collation/tailoring/ur.yml +163 -0
- data/resources/collation/tailoring/zh-Hant.yml +3 -0
- data/resources/collation/tailoring/zh.yml +149 -0
- data/resources/custom/locales/af/units.yml +19 -0
- data/resources/custom/locales/ar/units.yml +35 -0
- data/resources/custom/locales/ca/units.yml +19 -0
- data/resources/custom/locales/cs/units.yml +23 -0
- data/resources/custom/locales/da/units.yml +19 -0
- data/resources/custom/locales/de/units.yml +19 -0
- data/resources/custom/locales/el/units.yml +19 -0
- data/resources/custom/locales/en/units.yml +18 -0
- data/resources/custom/locales/es/units.yml +19 -0
- data/resources/custom/locales/eu/units.yml +19 -0
- data/resources/custom/locales/fa/units.yml +15 -0
- data/resources/custom/locales/fi/units.yml +19 -0
- data/resources/custom/locales/fil/units.yml +19 -0
- data/resources/custom/locales/fr/units.yml +19 -0
- data/resources/custom/locales/he/units.yml +19 -0
- data/resources/custom/locales/hi/units.yml +19 -0
- data/resources/custom/locales/hu/units.yml +15 -0
- data/resources/custom/locales/id/units.yml +15 -0
- data/resources/custom/locales/it/units.yml +19 -0
- data/resources/custom/locales/ja/units.yml +15 -0
- data/resources/custom/locales/ko/units.yml +15 -0
- data/resources/custom/locales/ms/units.yml +15 -0
- data/resources/custom/locales/nb/units.yml +19 -0
- data/resources/custom/locales/nl/units.yml +19 -0
- data/resources/custom/locales/pl/units.yml +23 -0
- data/resources/custom/locales/pt/units.yml +19 -0
- data/resources/custom/locales/ru/units.yml +27 -0
- data/resources/custom/locales/sv/units.yml +19 -0
- data/resources/custom/locales/th/units.yml +15 -0
- data/resources/custom/locales/tr/units.yml +15 -0
- data/resources/custom/locales/uk/units.yml +27 -0
- data/resources/custom/locales/ur/units.yml +19 -0
- data/resources/custom/locales/zh-Hant/units.yml +15 -0
- data/resources/custom/locales/zh/units.yml +15 -0
- data/resources/locales/af/units.yml +112 -65
- data/resources/locales/ar/units.yml +196 -126
- data/resources/locales/ca/units.yml +112 -70
- data/resources/locales/cs/units.yml +140 -91
- data/resources/locales/da/units.yml +98 -56
- data/resources/locales/de/units.yml +112 -70
- data/resources/locales/el/units.yml +119 -84
- data/resources/locales/en/units.yml +84 -42
- data/resources/locales/es/units.yml +112 -70
- data/resources/locales/eu/units.yml +105 -68
- data/resources/locales/fa/units.yml +98 -63
- data/resources/locales/fi/units.yml +112 -70
- data/resources/locales/fil/units.yml +98 -56
- data/resources/locales/fr/units.yml +112 -70
- data/resources/locales/he/units.yml +98 -56
- data/resources/locales/hi/units.yml +98 -56
- data/resources/locales/hu/units.yml +84 -49
- data/resources/locales/id/units.yml +84 -49
- data/resources/locales/it/units.yml +98 -56
- data/resources/locales/ja/units.yml +84 -49
- data/resources/locales/ko/units.yml +84 -49
- data/resources/locales/ms/units.yml +112 -63
- data/resources/locales/nb/units.yml +106 -64
- data/resources/locales/nl/units.yml +98 -56
- data/resources/locales/pl/units.yml +181 -112
- data/resources/locales/pt/units.yml +112 -70
- data/resources/locales/ru/units.yml +168 -112
- data/resources/locales/sv/units.yml +112 -70
- data/resources/locales/th/units.yml +84 -49
- data/resources/locales/tr/units.yml +84 -49
- data/resources/locales/uk/units.yml +168 -112
- data/resources/locales/ur/units.yml +112 -63
- data/resources/locales/zh-Hant/units.yml +84 -49
- data/resources/locales/zh/units.yml +84 -49
- data/spec/collation/collation_spec.rb +1 -1
- data/spec/collation/collator_spec.rb +120 -48
- data/spec/collation/sort_key_builder_spec.rb +80 -0
- data/spec/collation/tailoring_spec.rb +137 -0
- data/spec/collation/tailoring_tests/af.txt +321 -0
- data/spec/collation/tailoring_tests/ar.txt +188 -0
- data/spec/collation/tailoring_tests/ca.txt +446 -0
- data/spec/collation/tailoring_tests/cs.txt +273 -0
- data/spec/collation/tailoring_tests/da.txt +293 -0
- data/spec/collation/tailoring_tests/de.txt +414 -0
- data/spec/collation/tailoring_tests/el.txt +228 -0
- data/spec/collation/tailoring_tests/en.txt +399 -0
- data/spec/collation/tailoring_tests/es.txt +402 -0
- data/spec/collation/tailoring_tests/eu.txt +183 -0
- data/spec/collation/tailoring_tests/fa.txt +263 -0
- data/spec/collation/tailoring_tests/fi.txt +389 -0
- data/spec/collation/tailoring_tests/fil.txt +279 -0
- data/spec/collation/tailoring_tests/fr.txt +363 -0
- data/spec/collation/tailoring_tests/he.txt +167 -0
- data/spec/collation/tailoring_tests/hi.txt +230 -0
- data/spec/collation/tailoring_tests/hu.txt +773 -0
- data/spec/collation/tailoring_tests/id.txt +171 -0
- data/spec/collation/tailoring_tests/it.txt +231 -0
- data/spec/collation/tailoring_tests/ja.txt +4287 -0
- data/spec/collation/tailoring_tests/ko.txt +1761 -0
- data/spec/collation/tailoring_tests/ms.txt +531 -0
- data/spec/collation/tailoring_tests/nb.txt +375 -0
- data/spec/collation/tailoring_tests/nl.txt +273 -0
- data/spec/collation/tailoring_tests/pl.txt +225 -0
- data/spec/collation/tailoring_tests/pt.txt +405 -0
- data/spec/collation/tailoring_tests/ru.txt +213 -0
- data/spec/collation/tailoring_tests/sv.txt +353 -0
- data/spec/collation/tailoring_tests/th.txt +239 -0
- data/spec/collation/tailoring_tests/tr.txt +414 -0
- data/spec/collation/tailoring_tests/uk.txt +218 -0
- data/spec/collation/tailoring_tests/ur.txt +284 -0
- data/spec/collation/tailoring_tests/zh-Hant.txt +626 -0
- data/spec/collation/tailoring_tests/zh.txt +717 -0
- data/spec/collation/trie_builder_spec.rb +131 -51
- data/spec/collation/trie_spec.rb +301 -26
- data/spec/collation/trie_with_fallback_spec.rb +41 -0
- data/spec/core_ext/array_spec.rb +46 -3
- data/spec/core_ext/calendars/date_spec.rb +24 -24
- data/spec/core_ext/calendars/datetime_spec.rb +7 -0
- data/spec/core_ext/calendars/time_spec.rb +2 -2
- data/spec/formatters/calendars/timespan_formatter_spec.rb +47 -18
- data/spec/formatters/plurals/rules_spec.rb +3 -11
- data/spec/readme_spec.rb +15 -15
- data/spec/resources/loader_spec.rb +94 -0
- data/spec/spec_helper.rb +6 -0
- data/spec/tokenizers/calendars/timespan_tokenizer_spec.rb +1 -1
- data/spec/twitter_cldr_spec.rb +3 -3
- data/spec/utils_spec.rb +38 -0
- data/twitter_cldr.gemspec +25 -0
- metadata +156 -110
- data/spec/collation/sort_key_spec.rb +0 -56
- 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 }
|
data/spec/twitter_cldr_spec.rb
CHANGED
@@ -78,14 +78,14 @@ describe TwitterCldr do
|
|
78
78
|
|
79
79
|
describe '#resources' do
|
80
80
|
it 'returns @resources' do
|
81
|
-
resources = TwitterCldr::
|
82
|
-
TwitterCldr.
|
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::
|
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
|
-
|
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-
|
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
|
-
-
|
136
|
-
-
|
137
|
-
-
|
138
|
-
-
|
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/
|
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/
|
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.
|
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).
|