i18n_data 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (129) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/cache/file_data_provider/countries-AF.txt +1 -1
  5. data/cache/file_data_provider/countries-AM.txt +1 -1
  6. data/cache/file_data_provider/countries-AR.txt +1 -1
  7. data/cache/file_data_provider/countries-AS.txt +1 -1
  8. data/cache/file_data_provider/countries-AZ.txt +1 -1
  9. data/cache/file_data_provider/countries-BE.txt +62 -62
  10. data/cache/file_data_provider/countries-BG.txt +1 -1
  11. data/cache/file_data_provider/countries-BN.txt +123 -123
  12. data/cache/file_data_provider/countries-BN_IN.txt +1 -1
  13. data/cache/file_data_provider/countries-BR.txt +1 -1
  14. data/cache/file_data_provider/countries-BS.txt +1 -1
  15. data/cache/file_data_provider/countries-CA.txt +1 -1
  16. data/cache/file_data_provider/countries-CS.txt +5 -5
  17. data/cache/file_data_provider/countries-CY.txt +1 -1
  18. data/cache/file_data_provider/countries-DA.txt +2 -2
  19. data/cache/file_data_provider/countries-DE.txt +1 -1
  20. data/cache/file_data_provider/countries-DZ.txt +1 -1
  21. data/cache/file_data_provider/countries-EL.txt +2 -2
  22. data/cache/file_data_provider/countries-EN.txt +1 -1
  23. data/cache/file_data_provider/countries-EO.txt +1 -1
  24. data/cache/file_data_provider/countries-ES.txt +4 -4
  25. data/cache/file_data_provider/countries-ET.txt +2 -2
  26. data/cache/file_data_provider/countries-EU.txt +2 -2
  27. data/cache/file_data_provider/countries-FA.txt +1 -1
  28. data/cache/file_data_provider/countries-FI.txt +1 -1
  29. data/cache/file_data_provider/countries-FO.txt +1 -1
  30. data/cache/file_data_provider/countries-FR.txt +1 -1
  31. data/cache/file_data_provider/countries-GA.txt +3 -3
  32. data/cache/file_data_provider/countries-GL.txt +1 -1
  33. data/cache/file_data_provider/countries-GU.txt +1 -1
  34. data/cache/file_data_provider/countries-HE.txt +1 -1
  35. data/cache/file_data_provider/countries-HI.txt +10 -10
  36. data/cache/file_data_provider/countries-HU.txt +1 -1
  37. data/cache/file_data_provider/countries-HY.txt +75 -75
  38. data/cache/file_data_provider/countries-IA.txt +249 -0
  39. data/cache/file_data_provider/countries-ID.txt +1 -1
  40. data/cache/file_data_provider/countries-IS.txt +6 -6
  41. data/cache/file_data_provider/countries-IT.txt +1 -1
  42. data/cache/file_data_provider/countries-JA.txt +1 -1
  43. data/cache/file_data_provider/countries-KA.txt +1 -1
  44. data/cache/file_data_provider/countries-KK.txt +1 -1
  45. data/cache/file_data_provider/countries-KM.txt +1 -1
  46. data/cache/file_data_provider/countries-KN.txt +1 -1
  47. data/cache/file_data_provider/countries-KO.txt +1 -1
  48. data/cache/file_data_provider/countries-KU.txt +1 -1
  49. data/cache/file_data_provider/countries-LT.txt +1 -1
  50. data/cache/file_data_provider/countries-LV.txt +1 -1
  51. data/cache/file_data_provider/countries-MI.txt +169 -169
  52. data/cache/file_data_provider/countries-MK.txt +1 -1
  53. data/cache/file_data_provider/countries-ML.txt +1 -1
  54. data/cache/file_data_provider/countries-MN.txt +1 -1
  55. data/cache/file_data_provider/countries-MR.txt +1 -1
  56. data/cache/file_data_provider/countries-MS.txt +1 -1
  57. data/cache/file_data_provider/countries-MT.txt +1 -1
  58. data/cache/file_data_provider/countries-NB.txt +2 -2
  59. data/cache/file_data_provider/countries-NE.txt +1 -1
  60. data/cache/file_data_provider/countries-NN.txt +7 -7
  61. data/cache/file_data_provider/countries-OC.txt +1 -1
  62. data/cache/file_data_provider/countries-OR.txt +1 -1
  63. data/cache/file_data_provider/countries-PA.txt +1 -1
  64. data/cache/file_data_provider/countries-PL.txt +1 -1
  65. data/cache/file_data_provider/countries-PS.txt +1 -1
  66. data/cache/file_data_provider/countries-PT.txt +1 -1
  67. data/cache/file_data_provider/countries-PT_BR.txt +8 -8
  68. data/cache/file_data_provider/countries-RO.txt +1 -1
  69. data/cache/file_data_provider/countries-RU.txt +1 -1
  70. data/cache/file_data_provider/countries-RW.txt +1 -1
  71. data/cache/file_data_provider/countries-SI.txt +1 -1
  72. data/cache/file_data_provider/countries-SK.txt +1 -1
  73. data/cache/file_data_provider/countries-SL.txt +1 -1
  74. data/cache/file_data_provider/countries-SO.txt +1 -1
  75. data/cache/file_data_provider/countries-SQ.txt +1 -1
  76. data/cache/file_data_provider/countries-SR.txt +1 -1
  77. data/cache/file_data_provider/countries-SV.txt +2 -2
  78. data/cache/file_data_provider/countries-SW.txt +1 -1
  79. data/cache/file_data_provider/countries-TA.txt +1 -1
  80. data/cache/file_data_provider/countries-TE.txt +1 -1
  81. data/cache/file_data_provider/countries-TH.txt +1 -1
  82. data/cache/file_data_provider/countries-TI.txt +1 -1
  83. data/cache/file_data_provider/countries-TK.txt +1 -1
  84. data/cache/file_data_provider/countries-TL.txt +1 -1
  85. data/cache/file_data_provider/countries-TR.txt +1 -1
  86. data/cache/file_data_provider/countries-TT.txt +228 -228
  87. data/cache/file_data_provider/countries-UG.txt +2 -2
  88. data/cache/file_data_provider/countries-UK.txt +1 -1
  89. data/cache/file_data_provider/countries-VE.txt +1 -1
  90. data/cache/file_data_provider/countries-VI.txt +1 -1
  91. data/cache/file_data_provider/countries-WA.txt +1 -1
  92. data/cache/file_data_provider/countries-WO.txt +1 -1
  93. data/cache/file_data_provider/countries-XH.txt +1 -1
  94. data/cache/file_data_provider/countries-ZH_HK.txt +1 -1
  95. data/cache/file_data_provider/countries-ZH_TW.txt +1 -1
  96. data/cache/file_data_provider/countries-ZU.txt +1 -1
  97. data/cache/file_data_provider/languages-BG.txt +7 -7
  98. data/cache/file_data_provider/{languages-BN_IN.txt → languages-BN.txt} +0 -0
  99. data/cache/file_data_provider/languages-DA.txt +184 -184
  100. data/cache/file_data_provider/languages-DE.txt +1 -1
  101. data/cache/file_data_provider/languages-HR.txt +4 -4
  102. data/cache/file_data_provider/languages-PT.txt +20 -20
  103. data/cache/file_data_provider/languages-TH.txt +12 -12
  104. data/cache/file_data_provider/languages-TR.txt +10 -10
  105. data/cache/file_data_provider/languages-TT.txt +150 -150
  106. data/cache/file_data_provider/languages-VI.txt +1 -1
  107. data/cache/file_data_provider/languages-ZH_TW.txt +1 -1
  108. data/lib/i18n_data.rb +7 -2
  109. data/lib/i18n_data/file_data_provider.rb +23 -2
  110. data/lib/i18n_data/live_data_provider.rb +25 -4
  111. data/lib/i18n_data/version.rb +1 -1
  112. metadata +31 -59
  113. metadata.gz.sig +0 -0
  114. data/.gitignore +0 -3
  115. data/.travis.yml +0 -4
  116. data/Gemfile +0 -6
  117. data/Gemfile.lock +0 -28
  118. data/Rakefile +0 -77
  119. data/Readme.md +0 -61
  120. data/example_output/all_names_for_DE.txt +0 -85
  121. data/example_output/all_names_for_FR.txt +0 -85
  122. data/example_output/all_names_for_GB.txt +0 -85
  123. data/example_output/all_names_for_US.txt +0 -85
  124. data/gem-public_cert.pem +0 -20
  125. data/i18n_data.gemspec +0 -14
  126. data/spec/i18n_data/file_data_provider_spec.rb +0 -29
  127. data/spec/i18n_data/live_data_provider_spec.rb +0 -45
  128. data/spec/i18n_data_spec.rb +0 -176
  129. data/spec/spec_helper.rb +0 -2
@@ -17,7 +17,7 @@ BM;;Tiếng Bam-ba-ra
17
17
  EU;;Tiếng Baxcơ
18
18
  BE;;Tiếng Be-la-ruxợ
19
19
  BN;;Tiếng Băng Gan
20
- BH;;Hệ ngôn ngữ Tai
20
+ BH;;Hệ ngôn ngữ Bihari
21
21
  BI;;Tiếng Bix-la-ma
22
22
  BS;;Tiếng Bô-xni-a
23
23
  BR;;Tiếng Boue-ton (Pháp)
@@ -17,7 +17,7 @@ BM;;班巴拉語
17
17
  EU;;巴斯克語
18
18
  BE;;白俄語
19
19
  BN;;孟加拉語
20
- BH;;泰語諸語言
20
+ BH;;比哈諸語言
21
21
  BI;;比斯拉馬語
22
22
  BS;;波士尼亞語
23
23
  BR;;布里敦語
@@ -1,12 +1,17 @@
1
1
  require 'i18n_data/version'
2
2
 
3
3
  module I18nData
4
- class NoTranslationAvailable < Exception
4
+
5
+ class BaseException < Exception
5
6
  def to_s
6
- "NoTranslationAvailable -- #{super}"
7
+ "#{self.class} -- #{super}"
7
8
  end
8
9
  end
9
10
 
11
+ class NoTranslationAvailable < BaseException; end
12
+ class AccessDenied < BaseException; end
13
+ class Unknown < BaseException; end
14
+
10
15
  class << self
11
16
  def languages(language_code='EN')
12
17
  fetch :languages, language_code do
@@ -12,18 +12,39 @@ module I18nData
12
12
 
13
13
  def write_cache(provider)
14
14
  languages = provider.codes(:languages, 'EN').keys + ['zh_CN', 'zh_TW', 'zh_HK','bn_IN','pt_BR']
15
- languages.each do |language_code|
15
+ unless progress_bar = build_progress_bar(languages.count)
16
+ $stderr.puts 'i18n_data: Updating file cache, will take about 8 minutes...'
17
+ end
18
+
19
+ languages.map do |language_code|
16
20
  [:languages, :countries].each do |type|
17
21
  begin
18
22
  data = provider.send(:codes, type, language_code)
19
23
  write_to_file(data, cache_file_for(type, language_code))
20
24
  rescue NoTranslationAvailable
25
+ $stderr.puts "No translation available for #{type} #{language_code}" if $DEBUG
26
+ rescue AccessDenied
27
+ $stderr.puts "Access denied for #{type} #{language_code}"
21
28
  end
22
29
  end
30
+ progress_bar.increment if progress_bar
23
31
  end
24
32
  end
25
33
 
26
- private
34
+ private
35
+
36
+ def build_progress_bar(max_count)
37
+ return unless $stderr.tty?
38
+ require 'ruby-progressbar'
39
+ ProgressBar.create(
40
+ :format => '%t %E: |%w|',
41
+ :title => 'writing translation cache data',
42
+ :total => max_count
43
+ )
44
+ rescue LoadError
45
+ $stderr.puts ':: i18n_data file write cache update ::'
46
+ $stderr.puts 'for progress install "ruby-progressbar" gem'
47
+ end
27
48
 
28
49
  def read_from_file(file)
29
50
  return nil unless File.exist?(file)
@@ -51,9 +51,16 @@ module I18nData
51
51
 
52
52
  begin
53
53
  url = TRANSLATIONS[type]+"#{code}.po"
54
- data = open(url).read
55
- rescue
56
- raise NoTranslationAvailable, "for #{type} and language code = #{code} (#{$!})"
54
+ data = get(url)
55
+ rescue => e
56
+ case e.to_s
57
+ when /\A404 /
58
+ raise NoTranslationAvailable, "for #{type} and language code = #{code} (#{$!})"
59
+ when /\A502 /
60
+ raise AccessDenied, "for #{type} and language code = #{code} (#{$!})"
61
+ else
62
+ raise Unknown, "#{e.to_s} for #{type} and language code = #{code} (#{$!})"
63
+ end
57
64
  end
58
65
 
59
66
  data = data.force_encoding('utf-8') if data.respond_to?(:force_encoding) # 1.9
@@ -96,9 +103,23 @@ module I18nData
96
103
  end]
97
104
  end
98
105
 
106
+ def get(url)
107
+ $stderr.puts "GET #{url}" if $DEBUG
108
+ @@cache ||= {}
109
+ return @@cache[url] if @@cache.include? url
110
+ @@cache[url] = open(url).read
111
+ end
112
+
99
113
  def xml(type)
100
- xml = open(XML_CODES[type]).read
114
+ xml = get(XML_CODES[type])
101
115
  REXML::Document.new(xml)
116
+ rescue => e
117
+ case e.to_s
118
+ when /\A502 /
119
+ raise AccessDenied, "for index of #{type} (#{$!})"
120
+ else
121
+ raise Unknown, "#{e.to_s} for index of #{type} (#{$!})"
122
+ end
102
123
  end
103
124
  end
104
125
  end
@@ -1,3 +1,3 @@
1
1
  module I18nData
2
- VERSION = Version = "0.4.0"
2
+ VERSION = Version = "0.4.1"
3
3
  end
metadata CHANGED
@@ -1,42 +1,36 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: i18n_data
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
5
- prerelease:
4
+ version: 0.4.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Michael Grosser
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain:
12
- - !binary |-
13
- LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURNakNDQWhxZ0F3SUJB
14
- Z0lCQURBTkJna3Foa2lHOXcwQkFRVUZBREEvTVJBd0RnWURWUVFEREFkdGFX
15
- Tm8KWVdWc01SY3dGUVlLQ1pJbWlaUHlMR1FCR1JZSFozSnZjM05sY2pFU01C
16
- QUdDZ21TSm9tVDhpeGtBUmtXQW1sMApNQjRYRFRFek1ESXdNekU0TVRNeE1W
17
- b1hEVEUwTURJd016RTRNVE14TVZvd1B6RVFNQTRHQTFVRUF3d0hiV2xqCmFH
18
- RmxiREVYTUJVR0NnbVNKb21UOGl4a0FSa1dCMmR5YjNOelpYSXhFakFRQmdv
19
- SmtpYUprL0lzWkFFWkZnSnAKZERDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFB
20
- RGdnRVBBRENDQVFvQ2dnRUJBTW9yWG8vaGdiVXE5NytrSUk5SApNc1FjTGRD
21
- Lzd3UTFaUDJPc2hWSFBrZVAwcUg4TUJIR2c2ZVlpc09YMnViTmFnRjlZVENa
22
- V25ocmRLcndwTE9PCmNQTGFaYmpVamxqSjNjUVIzQjhZbjF2ZVY1SWhHODZR
23
- c2VUQmp5bXpKV3NMcHFKMVVaR3BmQjl0WGNzRnR1eE8KNnZIdmNJSGR6dmMv
24
- T1VrSUN0dExiSCsxcWI2cnNIVWNlcWgrSnJINEdyc0o1SDRoQWZJZHlTMlhN
25
- SzdZUktiaApoK0lCdTZkRldKSkJ5ekZzWW1WMVBEWGxuM1VCbWdBdDY1Y21D
26
- dTRxUGZUaGlvQ0dEemJTSnJHREdMbXcvcEZYCkZQcFZDbTF6Z1lTYjF2NlFu
27
- ZjNjZ1hhMmYyd1lHbTE3K3pBVnlJRHB3cnlGcnU5eUYvakp4RTM4ei9EUnNk
28
- OVIKLzg4Q0F3RUFBYU01TURjd0NRWURWUjBUQkFJd0FEQWRCZ05WSFE0RUZn
29
- UVVzaU5uWEh0S2VNWVljcjR5SlZtUQpXT05MK0l3d0N3WURWUjBQQkFRREFn
30
- U3dNQTBHQ1NxR1NJYjNEUUVCQlFVQUE0SUJBUUFseU43a0tvL05RQ1EwCkFP
31
- elpMWjNXQWVQdlN0a0NGSUo1M3RzdjVLeW80cE1BbGx2K0JnUHp6QnQ3cWk2
32
- MDVtRlNMNnpCZDl1TG91K1cKQ28zczQ4cDFkeTdDampBZlZRZG1WTkhGM013
33
- WHRmQzJPRXl2U1FQaTR4S1I4aWJhOHdhM3hwOUxWbzFQdUxwdwovNkRzckNo
34
- V3c3NEhmc0pONnFKT0s2ODRoSmVUOGxCWUFVZmlDM3dEMG93b1BTZytYdHlB
35
- QWRkaXNSK0tWNVkxCk5tVkh1THRRY05UWnkrZ1JodDNhaEpSTXVDNlF5TG1r
36
- VHNmKzZNYWVud0FNa0FnSGRzd0dzSnp0T25ObkJhM0YKeTBrQ1NXbUs2RCt4
37
- L1NiZlM2cjdLZTA3TVJxemlKZEI5R3VFMSswY0lSdUZoOEVRK0xONkhYQ0tN
38
- NXBvbi9HVQp5Y3dNWGZsMAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
39
- date: 2013-02-13 00:00:00.000000000 Z
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDcDCCAligAwIBAgIBATANBgkqhkiG9w0BAQUFADA/MRAwDgYDVQQDDAdtaWNo
14
+ YWVsMRcwFQYKCZImiZPyLGQBGRYHZ3Jvc3NlcjESMBAGCgmSJomT8ixkARkWAml0
15
+ MB4XDTE0MDIwNDIwMjk0MVoXDTE1MDIwNDIwMjk0MVowPzEQMA4GA1UEAwwHbWlj
16
+ aGFlbDEXMBUGCgmSJomT8ixkARkWB2dyb3NzZXIxEjAQBgoJkiaJk/IsZAEZFgJp
17
+ dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMorXo/hgbUq97+kII9H
18
+ MsQcLdC/7wQ1ZP2OshVHPkeP0qH8MBHGg6eYisOX2ubNagF9YTCZWnhrdKrwpLOO
19
+ cPLaZbjUjljJ3cQR3B8Yn1veV5IhG86QseTBjymzJWsLpqJ1UZGpfB9tXcsFtuxO
20
+ 6vHvcIHdzvc/OUkICttLbH+1qb6rsHUceqh+JrH4GrsJ5H4hAfIdyS2XMK7YRKbh
21
+ h+IBu6dFWJJByzFsYmV1PDXln3UBmgAt65cmCu4qPfThioCGDzbSJrGDGLmw/pFX
22
+ FPpVCm1zgYSb1v6Qnf3cgXa2f2wYGm17+zAVyIDpwryFru9yF/jJxE38z/DRsd9R
23
+ /88CAwEAAaN3MHUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFLIj
24
+ Z1x7SnjGGHK+MiVZkFjjS/iMMB0GA1UdEQQWMBSBEm1pY2hhZWxAZ3Jvc3Nlci5p
25
+ dDAdBgNVHRIEFjAUgRJtaWNoYWVsQGdyb3NzZXIuaXQwDQYJKoZIhvcNAQEFBQAD
26
+ ggEBAExBcUWfGuamYn+IddOA0Ws8jUKwB14RXoZRDrTiTAlMm3Bkg2OKyxS3uJXa
27
+ 6Z+LwFiZwVYk62yHXqNzEJycQk4SEmY+xDWLj0p7X6qEeU4QZKwR1TwJ5z3PTrZ6
28
+ irJgM3q7NIBRvmTzRaAghWcQn+Eyr5YLOfMksjVBMUMnzh5/ZDgq53LphgJbGwvz
29
+ ScJAgfNclLHnjk9q1mT1s0e1FPWbiAL3siBIR5HpH8qtSEiivTf2ntciebOqS93f
30
+ F5etKHZg0j3eHO31/i2HnswY04lqGImUu6aM5EnijFTB7PPW2KwKKM4+kKDYFdlw
31
+ /0WV1Ng2/Y6qsHwmqGg2VlYj2h4=
32
+ -----END CERTIFICATE-----
33
+ date: 2014-03-15 00:00:00.000000000 Z
40
34
  dependencies: []
41
35
  description:
42
36
  email: michael@grosser.it
@@ -44,12 +38,6 @@ executables: []
44
38
  extensions: []
45
39
  extra_rdoc_files: []
46
40
  files:
47
- - .gitignore
48
- - .travis.yml
49
- - Gemfile
50
- - Gemfile.lock
51
- - Rakefile
52
- - Readme.md
53
41
  - cache/file_data_provider/countries-AF.txt
54
42
  - cache/file_data_provider/countries-AM.txt
55
43
  - cache/file_data_provider/countries-AR.txt
@@ -85,6 +73,7 @@ files:
85
73
  - cache/file_data_provider/countries-HR.txt
86
74
  - cache/file_data_provider/countries-HU.txt
87
75
  - cache/file_data_provider/countries-HY.txt
76
+ - cache/file_data_provider/countries-IA.txt
88
77
  - cache/file_data_provider/countries-ID.txt
89
78
  - cache/file_data_provider/countries-IS.txt
90
79
  - cache/file_data_provider/countries-IT.txt
@@ -152,7 +141,7 @@ files:
152
141
  - cache/file_data_provider/languages-AZ.txt
153
142
  - cache/file_data_provider/languages-BE.txt
154
143
  - cache/file_data_provider/languages-BG.txt
155
- - cache/file_data_provider/languages-BN_IN.txt
144
+ - cache/file_data_provider/languages-BN.txt
156
145
  - cache/file_data_provider/languages-BR.txt
157
146
  - cache/file_data_provider/languages-BS.txt
158
147
  - cache/file_data_provider/languages-CA.txt
@@ -223,49 +212,32 @@ files:
223
212
  - cache/file_data_provider/languages-ZH_HK.txt
224
213
  - cache/file_data_provider/languages-ZH_TW.txt
225
214
  - cache/file_data_provider/languages-ZU.txt
226
- - example_output/all_names_for_DE.txt
227
- - example_output/all_names_for_FR.txt
228
- - example_output/all_names_for_GB.txt
229
- - example_output/all_names_for_US.txt
230
- - gem-public_cert.pem
231
- - i18n_data.gemspec
232
215
  - lib/i18n_data.rb
233
216
  - lib/i18n_data/file_data_provider.rb
234
217
  - lib/i18n_data/live_data_provider.rb
235
218
  - lib/i18n_data/version.rb
236
- - spec/i18n_data/file_data_provider_spec.rb
237
- - spec/i18n_data/live_data_provider_spec.rb
238
- - spec/i18n_data_spec.rb
239
- - spec/spec_helper.rb
240
219
  homepage: https://github.com/grosser/i18n_data
241
220
  licenses:
242
221
  - MIT
222
+ metadata: {}
243
223
  post_install_message:
244
224
  rdoc_options: []
245
225
  require_paths:
246
226
  - lib
247
227
  required_ruby_version: !ruby/object:Gem::Requirement
248
- none: false
249
228
  requirements:
250
- - - ! '>='
229
+ - - '>='
251
230
  - !ruby/object:Gem::Version
252
231
  version: '0'
253
- segments:
254
- - 0
255
- hash: 3936433807610975866
256
232
  required_rubygems_version: !ruby/object:Gem::Requirement
257
- none: false
258
233
  requirements:
259
- - - ! '>='
234
+ - - '>='
260
235
  - !ruby/object:Gem::Version
261
236
  version: '0'
262
- segments:
263
- - 0
264
- hash: 3936433807610975866
265
237
  requirements: []
266
238
  rubyforge_project:
267
- rubygems_version: 1.8.24
239
+ rubygems_version: 2.0.14
268
240
  signing_key:
269
- specification_version: 3
241
+ specification_version: 4
270
242
  summary: country/language names and 2-letter-code pairs, in 85 languages
271
243
  test_files: []
metadata.gz.sig CHANGED
Binary file
data/.gitignore DELETED
@@ -1,3 +0,0 @@
1
- Manifest
2
- pkg
3
- output
@@ -1,4 +0,0 @@
1
- rvm:
2
- - ree
3
- - 1.9.2
4
- - 1.9.3
data/Gemfile DELETED
@@ -1,6 +0,0 @@
1
- source :rubygems
2
- gemspec
3
-
4
- gem "bump"
5
- gem "rake"
6
- gem "rspec", "~>2"
@@ -1,28 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- i18n_data (0.4.0)
5
-
6
- GEM
7
- remote: http://rubygems.org/
8
- specs:
9
- bump (0.3.9)
10
- diff-lcs (1.1.3)
11
- rake (10.0.3)
12
- rspec (2.12.0)
13
- rspec-core (~> 2.12.0)
14
- rspec-expectations (~> 2.12.0)
15
- rspec-mocks (~> 2.12.0)
16
- rspec-core (2.12.2)
17
- rspec-expectations (2.12.1)
18
- diff-lcs (~> 1.1.3)
19
- rspec-mocks (2.12.2)
20
-
21
- PLATFORMS
22
- ruby
23
-
24
- DEPENDENCIES
25
- bump
26
- i18n_data!
27
- rake
28
- rspec (~> 2)
data/Rakefile DELETED
@@ -1,77 +0,0 @@
1
- require 'bundler/gem_tasks'
2
- require 'bump/tasks'
3
- $LOAD_PATH << "lib"
4
- require 'i18n_data'
5
-
6
- task :default do
7
- sh "rspec spec/"
8
- end
9
-
10
- desc "write all languages to output"
11
- task :all_languages do
12
- I18nData.languages.keys.each do |lc|
13
- `rake languages LANGUAGE=#{lc}`
14
- end
15
- end
16
-
17
- desc "write languages to output/languages_{language}"
18
- task :languages do
19
- raise unless language = ENV['LANGUAGE']
20
- `mkdir output -p`
21
- data = I18nData.languages(language.upcase)
22
- File.open("output/languages_#{language.downcase}.yml",'w') {|f|f.puts data.to_yaml}
23
- end
24
-
25
- desc "write all countries to output"
26
- task :all_countries do
27
- I18nData.languages.keys.each do |lc|
28
- `rake countries LANGUAGE=#{lc}`
29
- end
30
- end
31
-
32
- desc "write countries to output/countries_{language}"
33
- task :countries do
34
- raise unless language = ENV['LANGUAGE']
35
- `mkdir output -p`
36
- data = I18nData.countries(language.upcase)
37
- File.open("output/countries_#{language.downcase}.yml",'w') {|f|f.puts data.to_yaml}
38
- end
39
-
40
- desc "write example output, just to show off :D"
41
- task :example_output do
42
- `mkdir example_output -p`
43
-
44
- #all names for germany, france, united kingdom and unites states
45
- ['DE','FR','GB','US'].each do |cc|
46
- names = I18nData.languages.keys.map do |lc|
47
- begin
48
- [I18nData.countries(lc)[cc], I18nData.languages[lc]]
49
- rescue I18nData::NoTranslationAvailable
50
- nil
51
- end
52
- end
53
- File.open("example_output/all_names_for_#{cc}.txt",'w') do |f|
54
- f.puts names.reject(&:nil?).map{|x|x*" ---- "} * "\n"
55
- end
56
- end
57
- end
58
-
59
- desc "show stats"
60
- task :stats do
61
- dir = "cache/file_data_provider"
62
- [:languages, :countries].each do |type|
63
- files = FileList["#{dir}/#{type}*"]
64
- lines = File.readlines(files.first).reject{|l|l.empty?}
65
- puts "#{lines.size} #{type} in #{files.size} languages"
66
- end
67
- end
68
-
69
- desc "write cache for I18nData::FileDataProvider"
70
- task :write_cache_for_file_data_provider do
71
- raise "use 1.9+, we need sorted hashes or diff is giant" if RUBY_VERSION < "1.9"
72
- require 'i18n_data/file_data_provider'
73
- require 'i18n_data/live_data_provider'
74
- sh "rm -rf cache/file_data_provider" # clean everything so old stuff goes away
75
- puts "writing new caches, this can take a few minutes..."
76
- I18nData::FileDataProvider.write_cache(I18nData::LiveDataProvider)
77
- end
data/Readme.md DELETED
@@ -1,61 +0,0 @@
1
- - Present users coutries/languages in their language
2
- - Convert a country/language-name to its 2-letter-code
3
- - List of 2-letter-code/name pairs for all countries/languages in all languages
4
-
5
- ###Translations
6
- Through [pkg-isocodes](http://git.debian.org/?p=iso-codes/iso-codes.git):
7
-
8
- - 185 Language codes (iso 639 - 2 letter) in 68 Languages
9
- - 246 Country codes (iso 3166 - 2 letter) in 86 Languages
10
- - contry specific codes e.g. zh_TW are also available, have a look at the isocodes website for all options
11
-
12
- Install
13
- =======
14
-
15
- gem install i18n_data
16
-
17
- Usage
18
- =====
19
-
20
- require 'i18n_data'
21
- ...
22
- I18nData.languages # {"DE"=>"German",...}
23
- I18nData.languages('DE') # {"DE"=>"Deutsch",...}
24
- I18nData.languages('FR') # {"DE"=>"Allemand",...}
25
- ...
26
-
27
- I18nData.countries # {"DE"=>"Germany",...}
28
- I18nData.countries('DE') # {"DE"=>"Deutschland",...}
29
- ...
30
-
31
- I18nData.language_code('German') # DE
32
- I18nData.language_code('Deutsch') # DE
33
- I18nData.language_code('Allemand') # DE
34
- ..
35
-
36
- I18nData.country_code('Germany') # DE
37
- I18nData.country_code('Deutschland') # DE
38
- ..
39
-
40
- Data Providers
41
- ==============
42
- - FileDataProvider: _FAST_ (default) (loading data from cache-files)
43
- - LiveDataProvider: _SLOW_ (fetching up-to-date data from svn repos)
44
-
45
- Development
46
- =======
47
- - update FileDataProvider caches after each code-change to make changes available to users `rake write_cache_for_file_data_provider`
48
- - FileDataProvider tests might fail if caches are not updates
49
-
50
- TODO
51
- ====
52
- - include other language/country code formats (3-letter codes...) ?
53
- - parse list of files on isocodes for write_cache instead of hardcoding country-specific ones
54
-
55
- Author
56
- ======
57
- [Michael Grosser](http://grosser.it)<br/>
58
- michael@grosser.it<br/>
59
- License: MIT<br/>
60
- [![Build Status](https://travis-ci.org/grosser/i18n_data.png)](https://travis-ci.org/grosser/i18n_data)
61
-