experteer-gettext 2.0.4.1 → 2.0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. data/Rakefile +80 -79
  2. data/VERSION +1 -1
  3. data/lib/gettext/core_ext/string.rb +2 -2
  4. data/lib/gettext/parser/ruby.rb +37 -60
  5. data/lib/gettext/poparser.rb +121 -126
  6. data/lib/gettext/textdomain_manager.rb +1 -1
  7. data/lib/gettext/tools/rgettext.rb +53 -18
  8. data/lib/gettext/version.rb +1 -1
  9. data/po/bg/rgettext.po +56 -56
  10. data/po/bs/rgettext.po +56 -56
  11. data/po/ca/rgettext.po +57 -56
  12. data/po/cs/rgettext.po +61 -60
  13. data/po/de/rgettext.po +56 -56
  14. data/po/el/rgettext.po +55 -54
  15. data/po/eo/rgettext.po +56 -56
  16. data/po/es/rgettext.po +55 -55
  17. data/po/et/rgettext.po +55 -54
  18. data/po/fr/rgettext.po +58 -57
  19. data/po/hr/rgettext.po +56 -56
  20. data/po/hu/rgettext.po +57 -56
  21. data/po/it/rgettext.po +58 -58
  22. data/po/ja/rgettext.po +57 -56
  23. data/po/ko/rgettext.po +62 -61
  24. data/po/lv/rgettext.po +57 -56
  25. data/po/nb/rgettext.po +57 -56
  26. data/po/nl/rgettext.po +61 -61
  27. data/po/pt_BR/rgettext.po +57 -56
  28. data/po/rgettext.pot +45 -45
  29. data/po/ru/rgettext.po +57 -56
  30. data/po/sr/rgettext.po +56 -56
  31. data/po/sv/rgettext.po +53 -53
  32. data/po/ua/rgettext.po +57 -56
  33. data/po/vi/rgettext.po +55 -55
  34. data/po/zh/rgettext.po +55 -54
  35. data/po/zh_TW/rgettext.po +55 -54
  36. data/samples/cgi/po/bg/main.po +1 -1
  37. data/test/test_gettext.rb +0 -1
  38. data/test/test_parser.rb +72 -116
  39. data/test/test_string.rb +0 -8
  40. data/test/testlib/gettext.rb +0 -17
  41. data/test/testlib/ngettext.rb +1 -6
  42. data/test/testlib/pgettext.rb +0 -5
  43. metadata +2 -66
  44. data/gettext.gemspec +0 -493
  45. data/lib/gettext/translation_target.rb +0 -93
  46. data/test/README +0 -1
  47. data/test/Rakefile +0 -17
  48. data/test/po/cr/plural.po +0 -23
  49. data/test/po/da/plural.po +0 -22
  50. data/test/po/da/plural_error.po +0 -22
  51. data/test/po/fr/plural.po +0 -28
  52. data/test/po/fr/plural_error.po +0 -20
  53. data/test/po/fr/test1.po +0 -23
  54. data/test/po/fr/test2.po +0 -19
  55. data/test/po/ir/plural.po +0 -23
  56. data/test/po/ja/npgettext.po +0 -46
  57. data/test/po/ja/nsgettext.po +0 -65
  58. data/test/po/ja/pgettext.po +0 -41
  59. data/test/po/ja/plural.po +0 -28
  60. data/test/po/ja/plural_error.po +0 -20
  61. data/test/po/ja/rubyparser.po +0 -43
  62. data/test/po/ja/sgettext.po +0 -47
  63. data/test/po/ja/test1.po +0 -23
  64. data/test/po/ja/test2.po +0 -19
  65. data/test/po/ja/test3.po +0 -19
  66. data/test/po/la/plural.po +0 -23
  67. data/test/po/la/plural_error.po +0 -21
  68. data/test/po/li/plural.po +0 -23
  69. data/test/po/li/plural_error.po +0 -27
  70. data/test/po/po/plural.po +0 -23
  71. data/test/po/sl/plural.po +0 -24
  72. data/test/test_po_generation.rb +0 -20
  73. data/test/test_translation_target.rb +0 -29
  74. data/test/testlib/erb.rhtml +0 -15
  75. data/test/testlib/erb.rxml +0 -16
  76. data/test/testlib/gladeparser.glade +0 -183
  77. data/test/tools/files/app.pot +0 -0
  78. data/test/tools/files/de/app.po +0 -0
  79. data/test/tools/files/en/app.po +0 -0
  80. data/test/tools/files/en/test.po +0 -21
  81. data/test/tools/files/simple_1.po +0 -2
  82. data/test/tools/files/simple_2.po +0 -2
  83. data/test/tools/files/version.po +0 -7
  84. data/test/tools/test.pot +0 -21
@@ -1,93 +0,0 @@
1
- module GetText
2
- class ParseError < StandardError
3
- end
4
-
5
- # Contains data related to the expression or sentence that
6
- # is to be translated (translation target).
7
- # Implements a sort of state machine to assist the parser.
8
- class TranslationTarget
9
- attr_accessor :type, :msgid, :occurrences # obligatory attributes
10
- attr_accessor :plural, :msgctxt, :extracted_comment # optional attributes
11
-
12
- def initialize(new_type)
13
- @type = new_type
14
- @occurrences = Array.new
15
- @param_number = 0
16
- end
17
-
18
- # Supports parsing by setting attributes by and by.
19
- def set_current_attribute(str)
20
- case @param_number
21
- when 0
22
- set_string_value :msgid, str
23
- when 1
24
- case type
25
- when :plural
26
- set_string_value :plural, str
27
- when :msgctxt, :msgctxt_plural
28
- set_string_value :msgctxt, str
29
- else
30
- raise ParseError, 'no more string parameters expected'
31
- end
32
- when 2
33
- if :msgctxt_plural
34
- set_string_value plural, str
35
- else
36
- raise ParseError, 'no more string parameters expected'
37
- end
38
- end
39
- end
40
-
41
- def advance_to_next_attribute
42
- @param_number += 1
43
- end
44
-
45
- # Support for extracted comments. Explanation s.
46
- # http://www.gnu.org/software/gettext/manual/gettext.html#Names
47
- def add_extracted_comment(new_comment)
48
- @extracted_comment = @extracted_comment.to_s + new_comment
49
- to_s
50
- end
51
-
52
- # Returns a parameter representation suitable for po-files
53
- # and other purposes.
54
- def escaped(param_name)
55
- orig = self.send param_name
56
- orig.gsub(/"/, '\"').gsub(/\r/, '')
57
- end
58
-
59
- # Checks if the other translation target is mergeable with
60
- # the current one. Relevant are msgid and translation context (msgctxt).
61
- def matches?(other)
62
- other.msgid == self.msgid && other.msgctxt == self.msgctxt
63
- end
64
-
65
- # Merges two translation targets with the same msgid and returns the merged
66
- # result. If one is declared as plural and the other not, then the one
67
- # with the plural wins.
68
- def merge(other)
69
- return self if other.nil?
70
- raise ParseError, "Translation targets do not match: \n" \
71
- " self: #{self.inspect}\n other: '#{other.inspect}'" unless matches?(other)
72
- if other.plural && !self.plural
73
- res = other
74
- res.occurrences.concat self.occurrences
75
- else
76
- res = self
77
- res.occurrences.concat other.occurrences
78
- end
79
- res
80
- end
81
-
82
- private
83
-
84
- # sets or extends the value of a translation target params like msgid,
85
- # msgctxt etc.
86
- # param is symbol with the name of param
87
- # value - new value
88
- def set_string_value(param, value)
89
- send "#{param}=", (send(param) || '') + value.gsub(/\n/, '\n')
90
- end
91
- end
92
-
93
- end
data/test/README DELETED
@@ -1 +0,0 @@
1
- Go to gettext dir and run "rake makemo" prior to running any tests!
data/test/Rakefile DELETED
@@ -1,17 +0,0 @@
1
- $LOAD_PATH.unshift "../lib"
2
-
3
- task :default => :test
4
-
5
- desc "Create mo files"
6
- task :makemo do
7
- require 'gettext/tools'
8
- GetText.create_mofiles(:mo_root => "locale")
9
- end
10
-
11
- desc 'Run all tests'
12
- task :test do
13
- Dir.glob("**/test_*.rb").each do |path|
14
- puts ""
15
- ruby "-I../lib:../../locale/lib -rubygems #{path}"
16
- end
17
- end
data/test/po/cr/plural.po DELETED
@@ -1,23 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR ORGANIZATION
3
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
- #
5
- #, fuzzy
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: PACKAGE VERSION\n"
9
- "POT-Creation-Date: 2002-10-21 15:32:15+0900\n"
10
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
- "Language-Team: LANGUAGE <LL@li.org>\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=US-ASCII\n"
15
- "Content-Transfer-Encoding: ENCODING\n"
16
- "Plural-Forms: nplurals=3; plural= n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
17
-
18
- #: hello_plural.rb:11
19
- msgid "one"
20
- msgid_plural "two"
21
- msgstr[0] "cr_one"
22
- msgstr[1] "cr_two"
23
- msgstr[2] "cr_three"
data/test/po/da/plural.po DELETED
@@ -1,22 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR ORGANIZATION
3
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
- #
5
- #, fuzzy
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: PACKAGE VERSION\n"
9
- "POT-Creation-Date: 2002-10-21 15:32:15+0900\n"
10
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
- "Language-Team: LANGUAGE <LL@li.org>\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=US-ASCII\n"
15
- "Content-Transfer-Encoding: ENCODING\n"
16
- "Plural-Forms: nplurals=2; plural= n != 1;\n"
17
-
18
- #: hello_plural.rb:11
19
- msgid "one"
20
- msgid_plural "two"
21
- msgstr[0] "da_one"
22
- msgstr[1] "da_plural"
@@ -1,22 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR ORGANIZATION
3
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
- #
5
- #, fuzzy
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: PACKAGE VERSION\n"
9
- "POT-Creation-Date: 2002-10-21 15:32:15+0900\n"
10
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
- "Language-Team: LANGUAGE <LL@li.org>\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=US-ASCII\n"
15
- "Content-Transfer-Encoding: ENCODING\n"
16
- "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
17
-
18
- #: hello_plural.rb:11
19
- msgid "first"
20
- msgid_plural "second"
21
- msgstr[0] "da_first"
22
- msgstr[1] "da_second"
data/test/po/fr/plural.po DELETED
@@ -1,28 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR ORGANIZATION
3
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
- #
5
- #, fuzzy
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: PACKAGE VERSION\n"
9
- "POT-Creation-Date: 2002-10-21 15:32:15+0900\n"
10
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
- "Language-Team: LANGUAGE <LL@li.org>\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=US-ASCII\n"
15
- "Content-Transfer-Encoding: ENCODING\n"
16
- "Plural-Forms: nplurals=2; plural=n>1;\n"
17
-
18
- #: hello_plural.rb:11
19
- msgid "one"
20
- msgid_plural "two"
21
- msgstr[0] "fr_one"
22
- msgstr[1] "fr_plural"
23
-
24
- #: hello_plural.rb:14
25
- msgid "single"
26
- msgid_plural "plural"
27
- msgstr[0] "fr_hitotsu"
28
- msgstr[1] "fr_fukusu"
@@ -1,20 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR ORGANIZATION
3
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
- #
5
- #, fuzzy
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: PACKAGE VERSION\n"
9
- "POT-Creation-Date: 2002-10-21 15:32:15+0900\n"
10
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
- "Language-Team: LANGUAGE <LL@li.org>\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=US-ASCII\n"
15
- "Content-Transfer-Encoding: ENCODING\n"
16
-
17
- #: hello_plural.rb:11
18
- msgid "first"
19
- msgid_plural "second"
20
- msgstr[0] "fr_first"
data/test/po/fr/test1.po DELETED
@@ -1,23 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR ORGANIZATION
3
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
- #
5
- #, fuzzy
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: PACKAGE VERSION\n"
9
- "POT-Creation-Date: 2002-01-01 02:24:56+0900\n"
10
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
- "Language-Team: LANGUAGE <LL@li.org>\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=utf-8\n"
15
- "Content-Transfer-Encoding: ENCODING\n"
16
-
17
- #: simple.rb:10
18
- msgid "language"
19
- msgstr "french"
20
-
21
- #: simple.rb:14
22
- msgid "one is %d."
23
- msgstr "FRENCH:ONE IS %d."
data/test/po/fr/test2.po DELETED
@@ -1,19 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR ORGANIZATION
3
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
- #
5
- #, fuzzy
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: PACKAGE VERSION\n"
9
- "POT-Creation-Date: 2001-10-28 01:39:53+0900\n"
10
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
- "Language-Team: LANGUAGE <LL@li.org>\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=utf-8\n"
15
- "Content-Transfer-Encoding: ENCODING\n"
16
-
17
- #: test.rb:9 test.rb:11
18
- msgid "LANGUAGE"
19
- msgstr "FRENCH"
data/test/po/ir/plural.po DELETED
@@ -1,23 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR ORGANIZATION
3
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
- #
5
- #, fuzzy
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: PACKAGE VERSION\n"
9
- "POT-Creation-Date: 2002-10-21 15:32:15+0900\n"
10
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
- "Language-Team: LANGUAGE <LL@li.org>\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=US-ASCII\n"
15
- "Content-Transfer-Encoding: ENCODING\n"
16
- "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n==2 ? 1 : 2;\n"
17
-
18
- #: hello_plural.rb:11
19
- msgid "one"
20
- msgid_plural "two"
21
- msgstr[0] "ir_one"
22
- msgstr[1] "ir_two"
23
- msgstr[2] "ir_plural"
@@ -1,46 +0,0 @@
1
- # Japanese translations for PACKAGE package
2
- # PACKAGE パッケージに対する英訳.
3
- # Copyright (C) 2008 THE PACKAGE'S COPYRIGHT HOLDER
4
- # This file is distributed under the same license as the PACKAGE package.
5
- # Masao Mutoh <mutomasa at gmail.com>, 2008.
6
- #
7
- msgid ""
8
- msgstr ""
9
- "Project-Id-Version: PACKAGE VERSION\n"
10
- "POT-Creation-Date: 2008-08-06 02:36+0900\n"
11
- "PO-Revision-Date: 2008-08-06 02:36+0900\n"
12
- "Last-Translator: Masao Mutoh <mutomasa at gmail.com>\n"
13
- "Language-Team: Japanese\n"
14
- "MIME-Version: 1.0\n"
15
- "Content-Type: text/plain; charset=UTF-8\n"
16
- "Content-Transfer-Encoding: 8bit\n"
17
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
-
19
- #: testlib/npgettext.rb:10 testlib/npgettext.rb:11 testlib/npgettext.rb:15
20
- #: testlib/npgettext.rb:16
21
- msgctxt "Magazine"
22
- msgid "a book"
23
- msgid_plural "%{num} books"
24
- msgstr[0] "一つの本"
25
- msgstr[1] "%{num}の本たち"
26
-
27
- #: testlib/npgettext.rb:20 testlib/npgettext.rb:21
28
- msgctxt "Hardcover"
29
- msgid "a book"
30
- msgid_plural "%{num} books"
31
- msgstr[0] "一つのハードカバー本"
32
- msgstr[1] "%{num}のハードカバー本たち"
33
-
34
- #: testlib/npgettext.rb:25 testlib/npgettext.rb:26
35
- msgctxt "Magaine"
36
- msgid "I have a magazine"
37
- msgid_plural "I have %{num} magazines"
38
- msgstr[0] "マガジンを1冊持ってます。"
39
- msgstr[0] "マガジンたちを%{num}冊持ってます。"
40
-
41
- #: testlib/npgettext.rb:30 testlib/npgettext.rb:31
42
- msgctxt "Hardcover"
43
- msgid "a picture"
44
- msgid_plural "%{num} pictures"
45
- msgstr[0] ""
46
- msgstr[1] ""
@@ -1,65 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
- # This file is distributed under the same license as the PACKAGE package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
- #
6
- #, fuzzy
7
- msgid ""
8
- msgstr ""
9
- "Project-Id-Version: PACKAGE VERSION\n"
10
- "POT-Creation-Date: 2007-07-03 00:20+0900\n"
11
- "PO-Revision-Date: 2007-07-03 00:20+0900\n"
12
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
- "Language-Team: LANGUAGE <LL@li.org>\n"
14
- "MIME-Version: 1.0\n"
15
- "Content-Type: text/plain; charset=UTF-8\n"
16
- "Content-Transfer-Encoding: 8bit\n"
17
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
-
19
- #: nsgettext.rb:10 nsgettext.rb:14
20
- msgid "AAA|BBB"
21
- msgid_plural "CCC"
22
- msgstr[0] "single"
23
- msgstr[1] "plural"
24
-
25
- #: nsgettext.rb:18
26
- msgid "AAA"
27
- msgid_plural "BBB"
28
- msgstr[0] ""
29
- msgstr[1] ""
30
-
31
- #: nsgettext.rb:22
32
- msgid "AAA|CCC"
33
- msgid_plural "DDD"
34
- msgstr[0] ""
35
- msgstr[1] ""
36
-
37
- #: nsgettext.rb:26
38
- msgid "AAA|BBB|CCC"
39
- msgid_plural "DDD"
40
- msgstr[0] ""
41
- msgstr[1] ""
42
-
43
- #: nsgettext.rb:30
44
- msgid "AAA$BBB"
45
- msgid_plural "CCC"
46
- msgstr[0] ""
47
- msgstr[1] ""
48
-
49
- #: nsgettext.rb:34
50
- msgid "AAA$B|BB"
51
- msgid_plural "CCC"
52
- msgstr[0] ""
53
- msgstr[1] ""
54
-
55
- #: nsgettext.rb:38
56
- msgid "AAA$B|CC"
57
- msgid_plural "DDD"
58
- msgstr[0] "single"
59
- msgstr[1] "plural"
60
-
61
- #: nsgettext.rb:42
62
- msgid "AAA|CCC|BBB"
63
- msgid_plural "DDD"
64
- msgstr[0] ""
65
- msgstr[1] ""
@@ -1,41 +0,0 @@
1
- # Japanese translations for PACKAGE package
2
- # PACKAGE パッケージに対する英訳.
3
- # Copyright (C) 2008 THE PACKAGE'S COPYRIGHT HOLDER
4
- # This file is distributed under the same license as the PACKAGE package.
5
- # Masao Mutoh <mutomasa at gmail.com>, 2008.
6
- #
7
- msgid ""
8
- msgstr ""
9
- "Project-Id-Version: PACKAGE VERSION\n"
10
- "POT-Creation-Date: 2008-07-26 15:39+0900\n"
11
- "PO-Revision-Date: 2008-07-26 15:39+0900\n"
12
- "Last-Translator: Masao Mutoh <mutomasa at gmail.com>\n"
13
- "Language-Team: Japanese\n"
14
- "MIME-Version: 1.0\n"
15
- "Content-Type: text/plain; charset=UTF-8\n"
16
- "Content-Transfer-Encoding: 8bit\n"
17
- "Plural-Forms: nplurals=1; plural=0;\n"
18
-
19
- #: testlib/pgettext.rb:10 testlib/pgettext.rb:14
20
- msgctxt "AAA"
21
- msgid "BBB"
22
- msgstr "えーびー"
23
-
24
- #: testlib/pgettext.rb:18
25
- msgctxt "AAA|BBB"
26
- msgid "CCC"
27
- msgstr "えーびーしー"
28
-
29
- #: testlib/pgettext.rb:22
30
- msgctxt "AAA"
31
- msgid "CCC"
32
- msgstr ""
33
-
34
- #: testlib/pgettext.rb:26
35
- msgctxt "CCC"
36
- msgid "BBB"
37
- msgstr "しーびー"
38
-
39
- #: testlib/pgettext.rb:33
40
- msgid "BBB"
41
- msgstr "びー"