gettext 3.3.6 → 3.4.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/Rakefile +5 -3
  4. data/doc/text/news.md +168 -0
  5. data/gettext.gemspec +7 -4
  6. data/lib/gettext/mo.rb +12 -19
  7. data/lib/gettext/po_entry.rb +31 -21
  8. data/lib/gettext/po_parser.rb +65 -59
  9. data/lib/gettext/text_domain_manager.rb +6 -5
  10. data/lib/gettext/tools/msgcat.rb +9 -2
  11. data/lib/gettext/tools/msginit.rb +221 -50
  12. data/lib/gettext/tools/msgmerge.rb +24 -6
  13. data/lib/gettext/tools/parser/erubi.rb +88 -0
  14. data/lib/gettext/tools/parser/glade.rb +38 -40
  15. data/lib/gettext/tools/parser/gtk_builder_ui_definitions.rb +6 -3
  16. data/lib/gettext/tools/parser/ruby.rb +2 -2
  17. data/lib/gettext/tools/task.rb +3 -5
  18. data/lib/gettext/tools/xgettext.rb +15 -4
  19. data/lib/gettext/version.rb +3 -3
  20. data/locale/bg/LC_MESSAGES/gettext.mo +0 -0
  21. data/locale/bs/LC_MESSAGES/gettext.mo +0 -0
  22. data/locale/ca/LC_MESSAGES/gettext.mo +0 -0
  23. data/locale/cs/LC_MESSAGES/gettext.mo +0 -0
  24. data/locale/de/LC_MESSAGES/gettext.mo +0 -0
  25. data/locale/el/LC_MESSAGES/gettext.mo +0 -0
  26. data/locale/eo/LC_MESSAGES/gettext.mo +0 -0
  27. data/locale/es/LC_MESSAGES/gettext.mo +0 -0
  28. data/locale/et/LC_MESSAGES/gettext.mo +0 -0
  29. data/locale/fr/LC_MESSAGES/gettext.mo +0 -0
  30. data/locale/hr/LC_MESSAGES/gettext.mo +0 -0
  31. data/locale/hu/LC_MESSAGES/gettext.mo +0 -0
  32. data/locale/it/LC_MESSAGES/gettext.mo +0 -0
  33. data/locale/ja/LC_MESSAGES/gettext.mo +0 -0
  34. data/locale/ko/LC_MESSAGES/gettext.mo +0 -0
  35. data/locale/lv/LC_MESSAGES/gettext.mo +0 -0
  36. data/locale/nb/LC_MESSAGES/gettext.mo +0 -0
  37. data/locale/nl/LC_MESSAGES/gettext.mo +0 -0
  38. data/locale/pt_BR/LC_MESSAGES/gettext.mo +0 -0
  39. data/locale/ru/LC_MESSAGES/gettext.mo +0 -0
  40. data/locale/sr/LC_MESSAGES/gettext.mo +0 -0
  41. data/locale/uk/LC_MESSAGES/gettext.mo +0 -0
  42. data/locale/vi/LC_MESSAGES/gettext.mo +0 -0
  43. data/locale/zh/LC_MESSAGES/gettext.mo +0 -0
  44. data/locale/zh_TW/LC_MESSAGES/gettext.mo +0 -0
  45. data/po/bg/gettext.edit.po +80 -593
  46. data/po/bg/gettext.po +6 -423
  47. data/po/bs/gettext.edit.po +80 -593
  48. data/po/bs/gettext.po +6 -423
  49. data/po/ca/gettext.edit.po +80 -593
  50. data/po/ca/gettext.po +6 -423
  51. data/po/cs/gettext.edit.po +80 -593
  52. data/po/cs/gettext.po +6 -423
  53. data/po/de/gettext.edit.po +80 -593
  54. data/po/de/gettext.po +6 -423
  55. data/po/el/gettext.edit.po +80 -593
  56. data/po/el/gettext.po +6 -423
  57. data/po/eo/gettext.edit.po +80 -593
  58. data/po/eo/gettext.po +6 -423
  59. data/po/es/gettext.edit.po +80 -593
  60. data/po/es/gettext.po +6 -423
  61. data/po/et/gettext.edit.po +80 -593
  62. data/po/et/gettext.po +6 -423
  63. data/po/fr/gettext.edit.po +80 -593
  64. data/po/fr/gettext.po +6 -423
  65. data/po/gettext.pot +92 -665
  66. data/po/hr/gettext.edit.po +80 -593
  67. data/po/hr/gettext.po +6 -423
  68. data/po/hu/gettext.edit.po +80 -593
  69. data/po/hu/gettext.po +6 -423
  70. data/po/it/gettext.edit.po +80 -593
  71. data/po/it/gettext.po +6 -423
  72. data/po/ja/gettext.edit.po +81 -594
  73. data/po/ja/gettext.po +7 -424
  74. data/po/ko/gettext.edit.po +80 -593
  75. data/po/ko/gettext.po +6 -423
  76. data/po/lv/gettext.edit.po +80 -593
  77. data/po/lv/gettext.po +6 -423
  78. data/po/nb/gettext.edit.po +80 -593
  79. data/po/nb/gettext.po +6 -423
  80. data/po/nl/gettext.edit.po +80 -593
  81. data/po/nl/gettext.po +6 -423
  82. data/po/pt_BR/gettext.edit.po +80 -593
  83. data/po/pt_BR/gettext.po +6 -423
  84. data/po/ru/gettext.edit.po +80 -593
  85. data/po/ru/gettext.po +6 -423
  86. data/po/sr/gettext.edit.po +80 -593
  87. data/po/sr/gettext.po +6 -423
  88. data/po/sv/gettext.edit.po +80 -593
  89. data/po/sv/gettext.po +6 -423
  90. data/po/uk/gettext.edit.po +80 -593
  91. data/po/uk/gettext.po +6 -423
  92. data/po/vi/gettext.edit.po +80 -593
  93. data/po/vi/gettext.po +6 -423
  94. data/po/zh/gettext.edit.po +80 -593
  95. data/po/zh/gettext.po +6 -423
  96. data/po/zh_TW/gettext.edit.po +80 -593
  97. data/po/zh_TW/gettext.po +6 -423
  98. data/samples/cgi/po/helloerb1.pot +3 -3
  99. data/samples/cgi/po/helloerb2.pot +3 -3
  100. data/samples/cgi/po/hellolib.pot +3 -3
  101. data/samples/cgi/po/main.pot +3 -3
  102. data/samples/po/bg/hello_gtk_builder.edit.po +15 -0
  103. data/samples/po/bg/hello_gtk_builder.po +12 -0
  104. data/samples/po/bs/hello_gtk_builder.edit.po +15 -0
  105. data/samples/po/bs/hello_gtk_builder.po +12 -0
  106. data/samples/po/ca/hello_gtk_builder.edit.po +15 -0
  107. data/samples/po/ca/hello_gtk_builder.po +12 -0
  108. data/samples/po/cs/hello_gtk_builder.edit.po +15 -0
  109. data/samples/po/cs/hello_gtk_builder.po +12 -0
  110. data/samples/po/de/hello_gtk_builder.edit.po +15 -0
  111. data/samples/po/de/hello_gtk_builder.po +12 -0
  112. data/samples/po/el/hello_gtk_builder.edit.po +15 -0
  113. data/samples/po/el/hello_gtk_builder.po +12 -0
  114. data/samples/po/eo/hello_gtk_builder.edit.po +15 -0
  115. data/samples/po/eo/hello_gtk_builder.po +12 -0
  116. data/samples/po/es/hello_gtk_builder.edit.po +15 -0
  117. data/samples/po/es/hello_gtk_builder.po +12 -0
  118. data/samples/po/fr/hello_gtk_builder.edit.po +15 -0
  119. data/samples/po/fr/hello_gtk_builder.po +12 -0
  120. data/samples/po/hello.pot +3 -3
  121. data/samples/po/hello2.pot +4 -4
  122. data/samples/po/hello_glade2.pot +8 -5
  123. data/samples/po/hello_gtk2.pot +4 -4
  124. data/samples/po/hello_gtk_builder.pot +18 -4
  125. data/samples/po/hello_noop.pot +4 -4
  126. data/samples/po/hello_plural.pot +4 -4
  127. data/samples/po/hello_tk.pot +4 -4
  128. data/samples/po/hr/hello_gtk_builder.edit.po +15 -0
  129. data/samples/po/hr/hello_gtk_builder.po +12 -0
  130. data/samples/po/hu/hello_gtk_builder.edit.po +15 -0
  131. data/samples/po/hu/hello_gtk_builder.po +12 -0
  132. data/samples/po/it/hello_gtk_builder.edit.po +15 -0
  133. data/samples/po/it/hello_gtk_builder.po +12 -0
  134. data/samples/po/ja/hello_gtk_builder.edit.po +15 -0
  135. data/samples/po/ja/hello_gtk_builder.po +12 -0
  136. data/samples/po/ko/hello_gtk_builder.edit.po +15 -0
  137. data/samples/po/ko/hello_gtk_builder.po +12 -0
  138. data/samples/po/lv/hello_gtk_builder.edit.po +15 -0
  139. data/samples/po/lv/hello_gtk_builder.po +12 -0
  140. data/samples/po/nb/hello_gtk_builder.edit.po +15 -0
  141. data/samples/po/nb/hello_gtk_builder.po +12 -0
  142. data/samples/po/nl/hello_gtk_builder.edit.po +15 -0
  143. data/samples/po/nl/hello_gtk_builder.po +12 -0
  144. data/samples/po/pt_BR/hello_gtk_builder.edit.po +15 -0
  145. data/samples/po/pt_BR/hello_gtk_builder.po +12 -0
  146. data/samples/po/ru/hello_gtk_builder.edit.po +15 -0
  147. data/samples/po/ru/hello_gtk_builder.po +12 -0
  148. data/samples/po/sr/hello_gtk_builder.edit.po +15 -0
  149. data/samples/po/sr/hello_gtk_builder.po +12 -0
  150. data/samples/po/sv/hello_gtk_builder.edit.po +15 -0
  151. data/samples/po/sv/hello_gtk_builder.po +12 -0
  152. data/samples/po/uk/hello_gtk_builder.edit.po +15 -0
  153. data/samples/po/uk/hello_gtk_builder.po +12 -0
  154. data/samples/po/vi/hello_gtk_builder.edit.po +15 -0
  155. data/samples/po/vi/hello_gtk_builder.po +12 -0
  156. data/samples/po/zh/hello_gtk_builder.edit.po +15 -0
  157. data/samples/po/zh/hello_gtk_builder.po +12 -0
  158. data/samples/po/zh_TW/hello_gtk_builder.edit.po +15 -0
  159. data/samples/po/zh_TW/hello_gtk_builder.po +12 -0
  160. data/src/po_parser.ry +48 -42
  161. data/test/fixtures/_.rb +1 -1
  162. data/test/fixtures/erb/case.rhtml +16 -0
  163. data/test/fixtures/{gtk_builder_ui_definitions.ui~ → glade/3.glade} +12 -17
  164. data/test/fixtures/multi_text_domain.rb +12 -12
  165. data/test/fixtures/np_.rb +1 -1
  166. data/test/fixtures/ns_.rb +1 -1
  167. data/test/fixtures/p_.rb +1 -1
  168. data/test/fixtures/s_.rb +1 -1
  169. data/test/fixtures/simple.rb +5 -1
  170. data/test/fixtures/upper_nn_.rb +77 -0
  171. data/test/locale/fr/LC_MESSAGES/test1.mo +0 -0
  172. data/test/locale/fr_BE/LC_MESSAGES/test1.mo +0 -0
  173. data/test/locale/fr_BE_Foo/LC_MESSAGES/test1.mo +0 -0
  174. data/test/locale/ja/LC_MESSAGES/_.mo +0 -0
  175. data/test/po/_.pot +20 -4
  176. data/test/po/backslash.pot +6 -4
  177. data/test/po/fr/test1.po +7 -0
  178. data/test/po/fr_BE/test1.po +24 -0
  179. data/test/po/fr_BE_Foo/test1.po +20 -0
  180. data/test/po/hello.pot +3 -3
  181. data/test/po/ja/_.edit.po +27 -3
  182. data/test/po/ja/_.po +15 -0
  183. data/test/po/ja/hello.edit.po +0 -1
  184. data/test/po/non_ascii.pot +4 -4
  185. data/test/po/np_.pot +8 -5
  186. data/test/po/ns_.pot +6 -4
  187. data/test/po/p_.pot +3 -3
  188. data/test/po/s_.pot +6 -4
  189. data/test/po/untranslated.pot +4 -4
  190. data/test/test_gettext.rb +23 -0
  191. data/test/test_locale_path.rb +12 -4
  192. data/test/test_parser.rb +97 -17
  193. data/test/test_po_entry.rb +20 -4
  194. data/test/test_po_parser.rb +44 -1
  195. data/test/tools/parser/test_glade.rb +91 -0
  196. data/test/tools/parser/test_gtk_builder_ui_definitions.rb +19 -1
  197. data/test/tools/parser/test_ruby.rb +4 -4
  198. data/test/tools/test_msgcat.rb +21 -1
  199. data/test/tools/test_msginit.rb +82 -3
  200. data/test/tools/test_msgmerge.rb +75 -3
  201. data/test/tools/test_xgettext.rb +100 -3
  202. metadata +70 -19
  203. /data/test/fixtures/{gladeparser.glade → glade/2.glade} +0 -0
  204. /data/test/fixtures/ruby/{percent_i.rb → percent_lower_i.rb} +0 -0
  205. /data/test/fixtures/ruby/{percent_w.rb → percent_lower_w.rb} +0 -0
  206. /data/test/fixtures/ruby/{percent_I.rb → percent_upper_i.rb} +0 -0
  207. /data/test/fixtures/ruby/{percent_W.rb → percent_upper_w.rb} +0 -0
metadata CHANGED
@@ -1,16 +1,30 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gettext
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.6
4
+ version: 3.4.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou
8
8
  - Masao Mutoh
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-08-03 00:00:00.000000000 Z
12
+ date: 2023-10-21 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: erubi
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '0'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ version: '0'
14
28
  - !ruby/object:Gem::Dependency
15
29
  name: locale
16
30
  requirement: !ruby/object:Gem::Requirement
@@ -25,6 +39,34 @@ dependencies:
25
39
  - - ">="
26
40
  - !ruby/object:Gem::Version
27
41
  version: 2.0.5
42
+ - !ruby/object:Gem::Dependency
43
+ name: prime
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
49
+ type: :runtime
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: racc
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
28
70
  - !ruby/object:Gem::Dependency
29
71
  name: text
30
72
  requirement: !ruby/object:Gem::Requirement
@@ -40,7 +82,7 @@ dependencies:
40
82
  - !ruby/object:Gem::Version
41
83
  version: 1.3.0
42
84
  - !ruby/object:Gem::Dependency
43
- name: rake
85
+ name: kramdown
44
86
  requirement: !ruby/object:Gem::Requirement
45
87
  requirements:
46
88
  - - ">="
@@ -54,7 +96,7 @@ dependencies:
54
96
  - !ruby/object:Gem::Version
55
97
  version: '0'
56
98
  - !ruby/object:Gem::Dependency
57
- name: racc
99
+ name: rake
58
100
  requirement: !ruby/object:Gem::Requirement
59
101
  requirements:
60
102
  - - ">="
@@ -68,7 +110,7 @@ dependencies:
68
110
  - !ruby/object:Gem::Version
69
111
  version: '0'
70
112
  - !ruby/object:Gem::Dependency
71
- name: yard
113
+ name: red-datasets
72
114
  requirement: !ruby/object:Gem::Requirement
73
115
  requirements:
74
116
  - - ">="
@@ -82,7 +124,7 @@ dependencies:
82
124
  - !ruby/object:Gem::Version
83
125
  version: '0'
84
126
  - !ruby/object:Gem::Dependency
85
- name: kramdown
127
+ name: test-unit
86
128
  requirement: !ruby/object:Gem::Requirement
87
129
  requirements:
88
130
  - - ">="
@@ -96,7 +138,7 @@ dependencies:
96
138
  - !ruby/object:Gem::Version
97
139
  version: '0'
98
140
  - !ruby/object:Gem::Dependency
99
- name: test-unit
141
+ name: test-unit-rr
100
142
  requirement: !ruby/object:Gem::Requirement
101
143
  requirements:
102
144
  - - ">="
@@ -110,7 +152,7 @@ dependencies:
110
152
  - !ruby/object:Gem::Version
111
153
  version: '0'
112
154
  - !ruby/object:Gem::Dependency
113
- name: test-unit-rr
155
+ name: yard
114
156
  requirement: !ruby/object:Gem::Requirement
115
157
  requirements:
116
158
  - - ">="
@@ -170,6 +212,7 @@ files:
170
212
  - lib/gettext/tools/msginit.rb
171
213
  - lib/gettext/tools/msgmerge.rb
172
214
  - lib/gettext/tools/parser/erb.rb
215
+ - lib/gettext/tools/parser/erubi.rb
173
216
  - lib/gettext/tools/parser/glade.rb
174
217
  - lib/gettext/tools/parser/gtk_builder_ui_definitions.rb
175
218
  - lib/gettext/tools/parser/ruby.rb
@@ -1517,11 +1560,12 @@ files:
1517
1560
  - test/fixtures/backslash.rb
1518
1561
  - test/fixtures/erb/ascii.rhtml
1519
1562
  - test/fixtures/erb/ascii.rxml
1563
+ - test/fixtures/erb/case.rhtml
1520
1564
  - test/fixtures/erb/minus.rhtml
1521
1565
  - test/fixtures/erb/non_ascii.rhtml
1522
- - test/fixtures/gladeparser.glade
1566
+ - test/fixtures/glade/2.glade
1567
+ - test/fixtures/glade/3.glade
1523
1568
  - test/fixtures/gtk_builder_ui_definitions.ui
1524
- - test/fixtures/gtk_builder_ui_definitions.ui~
1525
1569
  - test/fixtures/hello.rb
1526
1570
  - test/fixtures/lower_n_.rb
1527
1571
  - test/fixtures/multi_text_domain.rb
@@ -1530,15 +1574,16 @@ files:
1530
1574
  - test/fixtures/ns_.rb
1531
1575
  - test/fixtures/ns_/custom.rb
1532
1576
  - test/fixtures/p_.rb
1533
- - test/fixtures/ruby/percent_I.rb
1534
- - test/fixtures/ruby/percent_W.rb
1535
- - test/fixtures/ruby/percent_i.rb
1536
- - test/fixtures/ruby/percent_w.rb
1577
+ - test/fixtures/ruby/percent_lower_i.rb
1578
+ - test/fixtures/ruby/percent_lower_w.rb
1579
+ - test/fixtures/ruby/percent_upper_i.rb
1580
+ - test/fixtures/ruby/percent_upper_w.rb
1537
1581
  - test/fixtures/s_.rb
1538
1582
  - test/fixtures/s_/custom.rb
1539
1583
  - test/fixtures/simple.rb
1540
1584
  - test/fixtures/untranslated.rb
1541
1585
  - test/fixtures/upper_n_.rb
1586
+ - test/fixtures/upper_nn_.rb
1542
1587
  - test/helper.rb
1543
1588
  - test/locale/cr/LC_MESSAGES/plural.mo
1544
1589
  - test/locale/da/LC_MESSAGES/plural.mo
@@ -1547,6 +1592,8 @@ files:
1547
1592
  - test/locale/fr/LC_MESSAGES/plural_error.mo
1548
1593
  - test/locale/fr/LC_MESSAGES/test1.mo
1549
1594
  - test/locale/fr/LC_MESSAGES/test2.mo
1595
+ - test/locale/fr_BE/LC_MESSAGES/test1.mo
1596
+ - test/locale/fr_BE_Foo/LC_MESSAGES/test1.mo
1550
1597
  - test/locale/ir/LC_MESSAGES/plural.mo
1551
1598
  - test/locale/ja/LC_MESSAGES/_.mo
1552
1599
  - test/locale/ja/LC_MESSAGES/backslash.mo
@@ -1579,6 +1626,8 @@ files:
1579
1626
  - test/po/fr/plural_error.po
1580
1627
  - test/po/fr/test1.po
1581
1628
  - test/po/fr/test2.po
1629
+ - test/po/fr_BE/test1.po
1630
+ - test/po/fr_BE_Foo/test1.po
1582
1631
  - test/po/hello.pot
1583
1632
  - test/po/ir/plural.po
1584
1633
  - test/po/ja/_.edit.po
@@ -1650,6 +1699,7 @@ files:
1650
1699
  - test/tools/files/simple_2.po
1651
1700
  - test/tools/files/simple_translation.rb
1652
1701
  - test/tools/files/version.po
1702
+ - test/tools/parser/test_glade.rb
1653
1703
  - test/tools/parser/test_gtk_builder_ui_definitions.rb
1654
1704
  - test/tools/parser/test_ruby.rb
1655
1705
  - test/tools/test.pot
@@ -1660,9 +1710,10 @@ files:
1660
1710
  - test/tools/test_xgettext.rb
1661
1711
  homepage: https://ruby-gettext.github.io/
1662
1712
  licenses:
1663
- - Ruby or LGPLv3+
1713
+ - Ruby
1714
+ - LGPL-3.0+
1664
1715
  metadata: {}
1665
- post_install_message:
1716
+ post_install_message:
1666
1717
  rdoc_options: []
1667
1718
  require_paths:
1668
1719
  - lib
@@ -1677,8 +1728,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1677
1728
  - !ruby/object:Gem::Version
1678
1729
  version: '0'
1679
1730
  requirements: []
1680
- rubygems_version: 3.2.0.rc.1
1681
- signing_key:
1731
+ rubygems_version: 3.5.0.dev
1732
+ signing_key:
1682
1733
  specification_version: 4
1683
1734
  summary: Gettext is a pure Ruby libary and tools to localize messages.
1684
1735
  test_files:
File without changes