gettext 3.4.7 → 3.4.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/doc/text/news.md +29 -0
- data/lib/gettext/po_entry.rb +28 -19
- data/lib/gettext/po_parser.rb +7 -3
- data/lib/gettext/tools/msgcat.rb +9 -2
- data/lib/gettext/tools/msgmerge.rb +11 -6
- data/lib/gettext/tools/xgettext.rb +9 -4
- data/lib/gettext/version.rb +3 -3
- data/locale/ja/LC_MESSAGES/gettext.mo +0 -0
- data/po/bg/gettext.edit.po +60 -56
- data/po/bg/gettext.po +3 -0
- data/po/bs/gettext.edit.po +60 -56
- data/po/bs/gettext.po +3 -0
- data/po/ca/gettext.edit.po +60 -56
- data/po/ca/gettext.po +3 -0
- data/po/cs/gettext.edit.po +60 -56
- data/po/cs/gettext.po +3 -0
- data/po/de/gettext.edit.po +60 -56
- data/po/de/gettext.po +3 -0
- data/po/el/gettext.edit.po +60 -56
- data/po/el/gettext.po +3 -0
- data/po/eo/gettext.edit.po +60 -56
- data/po/eo/gettext.po +3 -0
- data/po/es/gettext.edit.po +60 -56
- data/po/es/gettext.po +3 -0
- data/po/et/gettext.edit.po +60 -56
- data/po/et/gettext.po +3 -0
- data/po/fr/gettext.edit.po +60 -56
- data/po/fr/gettext.po +3 -0
- data/po/gettext.pot +72 -67
- data/po/hr/gettext.edit.po +60 -56
- data/po/hr/gettext.po +3 -0
- data/po/hu/gettext.edit.po +60 -56
- data/po/hu/gettext.po +3 -0
- data/po/it/gettext.edit.po +60 -56
- data/po/it/gettext.po +3 -0
- data/po/ja/gettext.edit.po +61 -57
- data/po/ja/gettext.po +4 -1
- data/po/ko/gettext.edit.po +60 -56
- data/po/ko/gettext.po +3 -0
- data/po/lv/gettext.edit.po +60 -56
- data/po/lv/gettext.po +3 -0
- data/po/nb/gettext.edit.po +60 -56
- data/po/nb/gettext.po +3 -0
- data/po/nl/gettext.edit.po +60 -56
- data/po/nl/gettext.po +3 -0
- data/po/pt_BR/gettext.edit.po +60 -56
- data/po/pt_BR/gettext.po +3 -0
- data/po/ru/gettext.edit.po +60 -56
- data/po/ru/gettext.po +3 -0
- data/po/sr/gettext.edit.po +60 -56
- data/po/sr/gettext.po +3 -0
- data/po/sv/gettext.edit.po +60 -56
- data/po/sv/gettext.po +3 -0
- data/po/uk/gettext.edit.po +60 -56
- data/po/uk/gettext.po +3 -0
- data/po/vi/gettext.edit.po +60 -56
- data/po/vi/gettext.po +3 -0
- data/po/zh/gettext.edit.po +60 -56
- data/po/zh/gettext.po +3 -0
- data/po/zh_TW/gettext.edit.po +60 -56
- data/po/zh_TW/gettext.po +3 -0
- data/src/po_parser.ry +7 -3
- data/test/locale/ja/LC_MESSAGES/_.mo +0 -0
- data/test/po/ja/_.edit.po +3 -3
- data/test/test_po_entry.rb +14 -0
- data/test/test_po_parser.rb +6 -0
- data/test/tools/test_msgcat.rb +21 -1
- data/test/tools/test_msgmerge.rb +41 -3
- data/test/tools/test_xgettext.rb +15 -3
- metadata +2 -2
data/src/po_parser.ry
CHANGED
@@ -264,7 +264,11 @@ require "gettext/po"
|
|
264
264
|
end
|
265
265
|
|
266
266
|
def on_comment(comment)
|
267
|
-
|
267
|
+
if comment.start_with?(POFormat::FLAG_MARK)
|
268
|
+
content = comment[POFormat::FLAG_MARK.size..-1]
|
269
|
+
flags = parse_flags_line(content)
|
270
|
+
@fuzzy = flags.include?("fuzzy")
|
271
|
+
end
|
268
272
|
if @data.instance_of?(PO)
|
269
273
|
if comment == "#"
|
270
274
|
@translator_comments << ""
|
@@ -279,7 +283,7 @@ require "gettext/po"
|
|
279
283
|
when POFormat::REFERENCE_COMMENT_MARK
|
280
284
|
@references.concat(parse_references_line(content))
|
281
285
|
when POFormat::FLAG_MARK
|
282
|
-
@flags.concat(
|
286
|
+
@flags.concat(flags)
|
283
287
|
when POFormat::PREVIOUS_COMMENT_MARK
|
284
288
|
@previous << content
|
285
289
|
else
|
@@ -348,7 +352,7 @@ require "gettext/po"
|
|
348
352
|
end
|
349
353
|
|
350
354
|
def parse_flags_line(line)
|
351
|
-
line.split(
|
355
|
+
line.split(",").collect(&:strip)
|
352
356
|
end
|
353
357
|
|
354
358
|
def clear
|
Binary file
|
data/test/po/ja/_.edit.po
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
msgid ""
|
6
6
|
msgstr ""
|
7
7
|
"Project-Id-Version: PACKAGE VERSION\n"
|
8
|
-
"PO-Revision-Date:
|
8
|
+
"PO-Revision-Date: 2023-10-22 06:37+0900\n"
|
9
9
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
10
10
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
11
11
|
"MIME-Version: 1.0\n"
|
@@ -84,8 +84,8 @@ msgid "#"
|
|
84
84
|
msgstr ""
|
85
85
|
|
86
86
|
#: ../fixtures/_.rb:96
|
87
|
-
msgid "
|
88
|
-
msgstr ""
|
87
|
+
msgid "\\taaa'bbb\\ccc"
|
88
|
+
msgstr "AAA"
|
89
89
|
|
90
90
|
#: ../fixtures/_.rb:100
|
91
91
|
msgid ""
|
data/test/test_po_entry.rb
CHANGED
@@ -344,6 +344,20 @@ EOP
|
|
344
344
|
assert_equal(expected_po, entry.to_s)
|
345
345
|
end
|
346
346
|
|
347
|
+
def test_multiple_flags
|
348
|
+
entry = GetText::POEntry.new(:normal)
|
349
|
+
entry.msgid = "msgid"
|
350
|
+
entry.msgstr = "msgstr"
|
351
|
+
entry.flags = ["It's the flag.", "fuzzy"]
|
352
|
+
|
353
|
+
expected_po = <<-EOP
|
354
|
+
#, It's the flag., fuzzy
|
355
|
+
msgid "msgid"
|
356
|
+
msgstr "msgstr"
|
357
|
+
EOP
|
358
|
+
assert_equal(expected_po, entry.to_s)
|
359
|
+
end
|
360
|
+
|
347
361
|
def test_previous
|
348
362
|
entry = GetText::POEntry.new(:normal)
|
349
363
|
entry.msgid = "msgid"
|
data/test/test_po_parser.rb
CHANGED
data/test/tools/test_msgcat.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright (C) 2014-
|
1
|
+
# Copyright (C) 2014-2023 Sutou Kouhei <kou@clear-code.com>
|
2
2
|
#
|
3
3
|
# License: Ruby's or LGPL
|
4
4
|
#
|
@@ -243,6 +243,7 @@ msgstr ""
|
|
243
243
|
@po = <<-PO
|
244
244
|
# translator comment
|
245
245
|
#: a.rb:1
|
246
|
+
#: a.rb:2
|
246
247
|
msgid "Hello"
|
247
248
|
msgstr ""
|
248
249
|
PO
|
@@ -252,6 +253,25 @@ msgstr ""
|
|
252
253
|
assert_equal(<<-PO, run_msgcat([@po], "--no-location"))
|
253
254
|
# translator comment
|
254
255
|
msgid "Hello"
|
256
|
+
msgstr ""
|
257
|
+
PO
|
258
|
+
end
|
259
|
+
|
260
|
+
def test_wrap
|
261
|
+
assert_equal(<<-PO, run_msgcat([@po], "--wrap"))
|
262
|
+
# translator comment
|
263
|
+
#: a.rb:1 a.rb:2
|
264
|
+
msgid "Hello"
|
265
|
+
msgstr ""
|
266
|
+
PO
|
267
|
+
end
|
268
|
+
|
269
|
+
def test_use_one_line_per_reference
|
270
|
+
assert_equal(<<-PO, run_msgcat([@po], "--wrap", "--use-one-line-per-reference"))
|
271
|
+
# translator comment
|
272
|
+
#: a.rb:1
|
273
|
+
#: a.rb:2
|
274
|
+
msgid "Hello"
|
255
275
|
msgstr ""
|
256
276
|
PO
|
257
277
|
end
|
data/test/tools/test_msgmerge.rb
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
#
|
2
|
-
#
|
3
|
-
# Copyright (C) 2012-2020 Sutou Kouhei <kou@clear-code.com>
|
1
|
+
# Copyright (C) 2012-2023 Sutou Kouhei <kou@clear-code.com>
|
4
2
|
# Copyright (C) 2010 Eddie Lau <tatonlto@gmail.com>
|
5
3
|
#
|
6
4
|
# License: Ruby's or LGPL
|
@@ -654,6 +652,46 @@ msgstr ""
|
|
654
652
|
end
|
655
653
|
end
|
656
654
|
|
655
|
+
class TestUseOneLinePerReference < self
|
656
|
+
def pot_content
|
657
|
+
super + <<-POT
|
658
|
+
|
659
|
+
#: hello.rb:10
|
660
|
+
#: hello.rb:20
|
661
|
+
#: hello.rb:30
|
662
|
+
msgid "Good morning"
|
663
|
+
msgstr ""
|
664
|
+
POT
|
665
|
+
end
|
666
|
+
|
667
|
+
def test_with_wrap
|
668
|
+
@msgmerge.run("--update",
|
669
|
+
"--wrap",
|
670
|
+
"--use-one-line-per-reference",
|
671
|
+
@po_file_path, @pot_file_path)
|
672
|
+
assert_equal(<<-PO, File.read(@po_file_path))
|
673
|
+
#{po_header(@pot_formatted_time, @po_formatted_time)}
|
674
|
+
#: hello.rb:1
|
675
|
+
msgid "Hello"
|
676
|
+
msgstr ""
|
677
|
+
|
678
|
+
#: hello.rb:2
|
679
|
+
msgid "World"
|
680
|
+
msgstr "Translated World"
|
681
|
+
|
682
|
+
#: hello.rb:3
|
683
|
+
msgid "Good-bye"
|
684
|
+
msgstr ""
|
685
|
+
|
686
|
+
#: hello.rb:10
|
687
|
+
#: hello.rb:20
|
688
|
+
#: hello.rb:30
|
689
|
+
msgid "Good morning"
|
690
|
+
msgstr ""
|
691
|
+
PO
|
692
|
+
end
|
693
|
+
end
|
694
|
+
|
657
695
|
class TestWidth < self
|
658
696
|
def pot_content
|
659
697
|
<<-POT
|
data/test/tools/test_xgettext.rb
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
#
|
2
|
-
#
|
3
|
-
# Copyright (C) 2012-2020 Sutou Kouhei <kou@clear-code.com>
|
1
|
+
# Copyright (C) 2012-2023 Sutou Kouhei <kou@clear-code.com>
|
4
2
|
# Copyright (C) 2012 Haruka Yoshihara <yoshihara@clear-code.com>
|
5
3
|
#
|
6
4
|
# License: Ruby's or LGPL
|
@@ -116,6 +114,20 @@ msgid "Hello"
|
|
116
114
|
msgstr ""
|
117
115
|
EOP
|
118
116
|
end
|
117
|
+
|
118
|
+
def test_use_one_line_per_reference
|
119
|
+
pot_content = generate(<<-RUBY, "--use-one-line-per-reference")
|
120
|
+
_("Hello")
|
121
|
+
_("Hello")
|
122
|
+
RUBY
|
123
|
+
assert_equal(<<-POT, pot_content)
|
124
|
+
#{header}
|
125
|
+
#: ../lib/xgettext.rb:1
|
126
|
+
#: ../lib/xgettext.rb:2
|
127
|
+
msgid "Hello"
|
128
|
+
msgstr ""
|
129
|
+
POT
|
130
|
+
end
|
119
131
|
end
|
120
132
|
|
121
133
|
class TestParser < self
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gettext
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.4.
|
4
|
+
version: 3.4.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kouhei Sutou
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-
|
12
|
+
date: 2023-10-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: erubi
|