gettext 2.0.4 → 2.1.0

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 (109) hide show
  1. data/COPYING +9 -8
  2. data/ChangeLog +21 -0
  3. data/README.rdoc +7 -13
  4. data/Rakefile +7 -5
  5. data/benchmark/1.93.0.txt +8 -0
  6. data/benchmark/2.0.0.txt +8 -0
  7. data/benchmark/2.0.4.txt +11 -0
  8. data/benchmark/2.1.0.txt +11 -0
  9. data/benchmark/benchmark.rb +68 -0
  10. data/benchmark/test.rb +28 -0
  11. data/bin/rgettext +1 -2
  12. data/bin/rmsgfmt +1 -3
  13. data/bin/rmsgmerge +0 -2
  14. data/data/locale/bg/LC_MESSAGES/rgettext.mo +0 -0
  15. data/data/locale/bs/LC_MESSAGES/rgettext.mo +0 -0
  16. data/data/locale/ca/LC_MESSAGES/rgettext.mo +0 -0
  17. data/data/locale/cs/LC_MESSAGES/rgettext.mo +0 -0
  18. data/data/locale/de/LC_MESSAGES/rgettext.mo +0 -0
  19. data/data/locale/el/LC_MESSAGES/rgettext.mo +0 -0
  20. data/data/locale/eo/LC_MESSAGES/rgettext.mo +0 -0
  21. data/data/locale/es/LC_MESSAGES/rgettext.mo +0 -0
  22. data/data/locale/et/LC_MESSAGES/rgettext.mo +0 -0
  23. data/data/locale/fr/LC_MESSAGES/rgettext.mo +0 -0
  24. data/data/locale/hr/LC_MESSAGES/rgettext.mo +0 -0
  25. data/data/locale/hu/LC_MESSAGES/rgettext.mo +0 -0
  26. data/data/locale/it/LC_MESSAGES/rgettext.mo +0 -0
  27. data/data/locale/ja/LC_MESSAGES/rgettext.mo +0 -0
  28. data/data/locale/ko/LC_MESSAGES/rgettext.mo +0 -0
  29. data/data/locale/lv/LC_MESSAGES/rgettext.mo +0 -0
  30. data/data/locale/nb/LC_MESSAGES/rgettext.mo +0 -0
  31. data/data/locale/nl/LC_MESSAGES/rgettext.mo +0 -0
  32. data/data/locale/pt_BR/LC_MESSAGES/rgettext.mo +0 -0
  33. data/data/locale/ru/LC_MESSAGES/rgettext.mo +0 -0
  34. data/data/locale/sr/LC_MESSAGES/rgettext.mo +0 -0
  35. data/data/locale/sv/LC_MESSAGES/rgettext.mo +0 -0
  36. data/data/locale/ua/LC_MESSAGES/rgettext.mo +0 -0
  37. data/data/locale/vi/LC_MESSAGES/rgettext.mo +0 -0
  38. data/data/locale/zh/LC_MESSAGES/rgettext.mo +0 -0
  39. data/data/locale/zh_TW/LC_MESSAGES/rgettext.mo +0 -0
  40. data/lib/gettext.rb +4 -6
  41. data/lib/gettext/cgi.rb +1 -3
  42. data/lib/gettext/core_ext/iconv.rb +2 -4
  43. data/lib/gettext/core_ext/string.rb +3 -3
  44. data/lib/gettext/parser/erb.rb +2 -53
  45. data/lib/gettext/parser/glade.rb +2 -99
  46. data/lib/gettext/parser/ruby.rb +7 -5
  47. data/lib/gettext/{class_info.rb → runtime/class_info.rb} +2 -1
  48. data/lib/gettext/{locale_path.rb → runtime/locale_path.rb} +1 -2
  49. data/lib/gettext/{mofile.rb → runtime/mofile.rb} +0 -0
  50. data/lib/gettext/{textdomain.rb → runtime/textdomain.rb} +3 -5
  51. data/lib/gettext/{textdomain_group.rb → runtime/textdomain_group.rb} +1 -1
  52. data/lib/gettext/{textdomain_manager.rb → runtime/textdomain_manager.rb} +11 -5
  53. data/lib/gettext/tools.rb +2 -2
  54. data/lib/gettext/tools/parser/erb.rb +52 -0
  55. data/lib/gettext/tools/parser/glade.rb +98 -0
  56. data/lib/gettext/tools/parser/ruby.rb +226 -0
  57. data/lib/gettext/tools/pomessage.rb +197 -0
  58. data/lib/gettext/{poparser.rb → tools/poparser.rb} +128 -122
  59. data/lib/gettext/tools/rgettext.rb +47 -92
  60. data/lib/gettext/tools/rmsgfmt.rb +2 -2
  61. data/lib/gettext/tools/rmsgmerge.rb +2 -2
  62. data/lib/gettext/utils.rb +1 -1
  63. data/lib/gettext/version.rb +2 -2
  64. data/po/bg/rgettext.po +68 -64
  65. data/po/bs/rgettext.po +69 -65
  66. data/po/ca/rgettext.po +67 -64
  67. data/po/cs/rgettext.po +73 -70
  68. data/po/de/rgettext.po +69 -65
  69. data/po/el/rgettext.po +67 -64
  70. data/po/eo/rgettext.po +67 -63
  71. data/po/es/rgettext.po +67 -63
  72. data/po/et/rgettext.po +66 -63
  73. data/po/fr/rgettext.po +69 -66
  74. data/po/hr/rgettext.po +77 -73
  75. data/po/hu/rgettext.po +68 -65
  76. data/po/it/rgettext.po +69 -65
  77. data/po/ja/rgettext.po +69 -65
  78. data/po/ko/rgettext.po +73 -70
  79. data/po/lv/rgettext.po +68 -65
  80. data/po/nb/rgettext.po +68 -65
  81. data/po/nl/rgettext.po +74 -70
  82. data/po/pt_BR/rgettext.po +69 -66
  83. data/po/rgettext.pot +52 -48
  84. data/po/ru/rgettext.po +69 -66
  85. data/po/sr/rgettext.po +68 -64
  86. data/po/sv/rgettext.po +59 -55
  87. data/po/ua/rgettext.po +69 -66
  88. data/po/vi/rgettext.po +67 -63
  89. data/po/zh/rgettext.po +65 -62
  90. data/po/zh_TW/rgettext.po +65 -62
  91. data/replace.rb +8 -0
  92. data/samples/cgi/hellolib.rb +1 -3
  93. data/samples/cgi/http.rb +2 -4
  94. data/samples/cgi/locale/bg/LC_MESSAGES/main.mo +0 -0
  95. data/samples/cgi/po/bg/#main.po# +84 -0
  96. data/samples/cgi/po/bg/main.po +1 -1
  97. data/samples/hello.rb +1 -1
  98. data/src/poparser.ry +2 -1
  99. data/test.rb +33 -0
  100. data/test/test_class_info.rb +1 -1
  101. data/test/test_gettext.rb +1 -0
  102. data/test/test_parser.rb +120 -75
  103. data/test/test_po_generation.rb +20 -0
  104. data/test/test_pomessage.rb +99 -0
  105. data/test/test_string.rb +8 -0
  106. data/test/testlib/gettext.rb +17 -0
  107. data/test/testlib/ngettext.rb +6 -1
  108. data/test/testlib/pgettext.rb +5 -0
  109. metadata +726 -985
@@ -9,7 +9,7 @@
9
9
  Masao Mutoh <mutomasa at gmail.com>
10
10
 
11
11
  You may redistribute it and/or modify it under the same
12
- license terms as Ruby.
12
+ license terms as Ruby or LGPL.
13
13
  =end
14
14
 
15
15
  require 'optparse'
@@ -25,19 +25,16 @@ module GetText
25
25
 
26
26
  # constant values
27
27
  VERSION = GetText::VERSION
28
- DATE = %w($Date: 2008/08/06 17:35:52 $)[1]
29
- MAX_LINE_LEN = 70
30
-
28
+
31
29
  @ex_parsers = []
32
30
  [
33
31
  ["glade.rb", "GladeParser"],
34
32
  ["erb.rb", "ErbParser"],
35
- # ["active_record.rb", "ActiveRecordParser"],
36
33
  # ["ripper.rb", "RipperParser"],
37
34
  ["ruby.rb", "RubyParser"] # Default parser.
38
35
  ].each do |f, klass|
39
36
  begin
40
- require "gettext/parser/#{f}"
37
+ require "gettext/tools/parser/#{f}"
41
38
  @ex_parsers << GetText.const_get(klass)
42
39
  rescue
43
40
  $stderr.puts _("'%{klass}' is ignored.") % {:klass => klass}
@@ -50,7 +47,7 @@ module GetText
50
47
  # Add an option parser
51
48
  # the option parser module requires to have target?(file) and parser(file, ary) method.
52
49
  #
53
- # require 'gettext/rgettext'
50
+ # require 'gettext/tools/rgettext'
54
51
  # module FooParser
55
52
  # module_function
56
53
  # def target?(file)
@@ -94,93 +91,51 @@ msgstr ""
94
91
  TITLE
95
92
  end
96
93
 
97
- def generate_pot(ary) # :nodoc:
94
+ def generate_pot(paths) # :nodoc:
95
+ pomessages = parse(paths)
98
96
  str = ""
99
- ary.each do |key|
100
- msgid = key.shift
101
- curr_pos = MAX_LINE_LEN
102
- key.each do |e|
103
- if curr_pos + e.size > MAX_LINE_LEN
104
- str << "\n#:"
105
- curr_pos = 3
106
- else
107
- curr_pos += (e.size + 1)
108
- end
109
- str << " " << e
110
- end
111
- msgid.gsub!(/"/, '\"')
112
- msgid.gsub!(/\r/, '')
113
- if msgid.include?("\004")
114
- msgctxt, msgid = msgid.split(/\004/)
115
- str << "\nmsgctxt \"" << msgctxt << "\"\n"
116
- else
117
- str << "\n"
118
- end
119
- if msgid.include?("\000")
120
- ids = msgid.split(/\000/)
121
- str << "msgid \"" << ids[0] << "\"\n"
122
- str << "msgid_plural \"" << ids[1] << "\"\n"
123
- str << "msgstr[0] \"\"\n"
124
- str << "msgstr[1] \"\"\n"
125
- else
126
- str << "msgid \"" << msgid << "\"\n"
127
- str << "msgstr \"\"\n"
128
- end
97
+ pomessages.each do |target|
98
+ str << target.to_po_str
129
99
  end
130
100
  str
131
101
  end
132
102
 
133
- def normalize(ary) # :nodoc:
134
- used_plural_msgs = []
135
- ary.select{|item| item[0].include? "\000"}.each do |plural_msg|
136
- next if used_plural_msgs.include?(plural_msg[0])
137
-
138
- key = plural_msg[0].split("\000")[0]
139
-
140
- ary.dup.each do |single_msg|
141
- if single_msg[0] == key or
142
- (single_msg[0] =~ /^#{Regexp.quote(key)}\000/ and
143
- single_msg[0] != plural_msg[0])
144
- if single_msg[0] != key
145
- warn %Q[Warning: n_("#{plural_msg[0].gsub(/\000/, '", "')}") and n_("#{single_msg[0].gsub(/\000/, '", "')}") are duplicated. First msgid was used.]
146
- used_plural_msgs << single_msg[0]
147
- end
148
-
149
- single_msg[1..-1].each do |line_info|
150
- plural_msg << line_info
151
- fname = line_info.split(/:/)[0]
152
- sorted = plural_msg[1..-1].select{|l| l.split(/:/)[0].include?(fname)}.collect{|l|
153
- aline = l.split(/:/)
154
- [aline[0], aline[1] =~ /[0-9]+/ ? aline[1].to_i : aline[1]]
155
- }.sort.collect{|l| "#{l[0]}:#{l[1]}"}
156
- plural_msg.delete_if{|i| sorted.include?(i)}
157
- sorted.each {|i|
158
- plural_msg << i
159
- }
160
- end
161
- ary.delete(single_msg)
162
- end
163
- end
164
- end
165
- ary.collect{|i| i.uniq}
166
- end
167
-
168
- def parse(files) # :nodoc:
169
- ary = []
170
- files.each do |file|
103
+ def parse(paths) # :nodoc:
104
+ pomessages = []
105
+ paths.each do |path|
171
106
  begin
172
107
  @ex_parsers.each do |klass|
173
- if klass.target?(file)
174
- ary = klass.parse(file, ary)
108
+ if klass.target?(path)
109
+ if klass.method(:parse).arity == 1
110
+ targets = klass.parse(path)
111
+ else
112
+ # For backward compatibility.
113
+ targets = klass.parse(path, [])
114
+ end
115
+
116
+ targets.each{|pomessage|
117
+ if pomessage.kind_of? Array
118
+ pomessage = PoMessage.new_from_ary(pomessage)
119
+ end
120
+
121
+ # Save the previous target.
122
+ existing = pomessages.find_index {|t| t == pomessage}
123
+ if existing
124
+ pomessage = pomessages[existing].merge(pomessage)
125
+ pomessages[existing] = pomessage
126
+ else
127
+ pomessages << pomessage
128
+ end
129
+ }
175
130
  break
176
131
  end
177
132
  end
178
133
  rescue
179
- puts "Error occurs in " + file
134
+ puts _("Error parsing %{path}") % {:path => path}
180
135
  raise
181
136
  end
182
137
  end
183
- normalize(ary)
138
+ pomessages
184
139
  end
185
140
 
186
141
  def check_options # :nodoc:
@@ -211,7 +166,7 @@ TITLE
211
166
  end
212
167
 
213
168
  opts.on_tail("--version", _("display version information and exit")) do
214
- puts "#{$0} #{VERSION} (#{DATE})"
169
+ puts "#{$0} #{VERSION}"
215
170
  puts "#{File.join(Config::CONFIG["bindir"], Config::CONFIG["RUBY_INSTALL_NAME"])} #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
216
171
  exit
217
172
  end
@@ -226,25 +181,25 @@ TITLE
226
181
  [ARGV, output]
227
182
  end
228
183
 
229
- def run(targetfiles = nil, out = STDOUT) # :nodoc:
230
- if targetfiles.is_a? String
231
- targetfiles = [targetfiles]
232
- elsif ! targetfiles
233
- targetfiles, out = check_options
184
+ def run(paths = nil, out = STDOUT) # :nodoc:
185
+ if paths.is_a? String
186
+ paths = [paths]
187
+ elsif ! paths
188
+ paths, out = check_options
234
189
  end
235
190
 
236
- if targetfiles.size == 0
191
+ if paths.size == 0
237
192
  raise ArgumentError, _("no input files")
238
193
  end
239
194
 
240
195
  if out.is_a? String
241
196
  File.open(File.expand_path(out), "w+") do |file|
242
197
  file.puts generate_pot_header
243
- file.puts generate_pot(parse(targetfiles))
198
+ file.puts generate_pot(paths)
244
199
  end
245
200
  else
246
201
  out.puts generate_pot_header
247
- out.puts generate_pot(parse(targetfiles))
202
+ out.puts generate_pot(paths)
248
203
  end
249
204
  self
250
205
  end
@@ -256,11 +211,11 @@ TITLE
256
211
  # This function is a part of GetText.create_pofiles.
257
212
  # Usually you don't need to call this function directly.
258
213
  #
259
- # * targetfiles: An Array of po-files or nil.
214
+ # * paths: An Array of po-file paths or nil.
260
215
  # * out: output IO or output path.
261
216
  # * Returns: self
262
- def rgettext(targetfiles = nil, out = STDOUT)
263
- RGetText.run(targetfiles, out)
217
+ def rgettext(paths = nil, out = STDOUT)
218
+ RGetText.run(paths, out)
264
219
  self
265
220
  end
266
221
  end
@@ -4,13 +4,13 @@
4
4
  Copyright (C) 2003-2009 Masao Mutoh
5
5
 
6
6
  You may redistribute it and/or modify it under the same
7
- license terms as Ruby.
7
+ license terms as Ruby or LGPL.
8
8
  =end
9
9
 
10
10
  require 'optparse'
11
11
  require 'fileutils'
12
12
  require 'gettext'
13
- require 'gettext/poparser'
13
+ require 'gettext/tools/poparser'
14
14
  require 'rbconfig'
15
15
 
16
16
  module GetText
@@ -5,12 +5,12 @@
5
5
  Copyright (C) 2005,2006 speakillof
6
6
 
7
7
  You may redistribute it and/or modify it under the same
8
- license terms as Ruby.
8
+ license terms as Ruby or LGPL.
9
9
  =end
10
10
 
11
11
  require 'optparse'
12
12
  require 'gettext'
13
- require 'gettext/poparser'
13
+ require 'gettext/tools/poparser'
14
14
  require 'rbconfig'
15
15
 
16
16
  module GetText
@@ -4,7 +4,7 @@
4
4
  Copyright (C) 2005,2006 Masao Mutoh
5
5
 
6
6
  You may redistribute it and/or modify it under the same
7
- license terms as Ruby.
7
+ license terms as Ruby or LGPL.
8
8
  =end
9
9
 
10
10
  require 'gettext/tools'
@@ -5,8 +5,8 @@
5
5
  Copyright (C) 2005-2009 Masao Mutoh
6
6
 
7
7
  You may redistribute it and/or modify it under the same
8
- license terms as Ruby.
8
+ license terms as Ruby or LGPL.
9
9
  =end
10
10
  module GetText
11
- VERSION = "2.0.4"
11
+ VERSION = "2.1.0"
12
12
  end
@@ -8,8 +8,8 @@
8
8
  #
9
9
  msgid ""
10
10
  msgstr ""
11
- "Project-Id-Version: ruby-gettext 2.0.3\n"
12
- "POT-Creation-Date: 2009-05-17 23:09+0900\n"
11
+ "Project-Id-Version: ruby-gettext 2.1.0\n"
12
+ "POT-Creation-Date: 2009-11-08 22:43+0900\n"
13
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
14
  "Last-Translator: Sava Chankov <sava.chankov@gmail.com>\n"
15
15
  "Language-Team: Bulgarian <ruby-on-rails-bulgaria@googlegroups.com>\n"
@@ -18,70 +18,76 @@ msgstr ""
18
18
  "Content-Transfer-Encoding: 8bit\n"
19
19
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
20
20
 
21
- #: lib/gettext/tools.rb:68
22
- msgid "Failed to merge with %{defpo}"
23
- msgstr "Пропадна сливането с %{defpo}"
24
-
25
- #: lib/gettext/tools.rb:69
26
- msgid "New .pot was copied to %{failed_filename}"
27
- msgstr "Новия .pot беше копиран като %{failed_filename}"
28
-
29
- #: lib/gettext/tools.rb:70
30
- msgid "Check these po/pot-files. It may have syntax errors or something wrong."
31
- msgstr ""
32
- "Проверете тези po/pot файлове. Може да имат синтактични грешки или нещо "
33
- "друго."
21
+ #: lib/gettext/tools/rmsgmerge.rb:402
22
+ msgid "Usage: %s def.po ref.pot [-o output.pot]"
23
+ msgstr "Употреба: %s def.po ref.pot [-o output.pot]"
34
24
 
35
- #: lib/gettext/tools.rb:173
25
+ #: lib/gettext/tools/rmsgmerge.rb:405
36
26
  msgid ""
37
- "`%{cmd}' can not be found. \n"
38
- "Install GNU Gettext then set PATH or MSGMERGE_PATH correctly."
27
+ "Merges two Uniforum style .po files together. The def.po file is an existing "
28
+ "PO file with translations. The ref.pot file is the last created PO file with "
29
+ "up-to-date source references. ref.pot is generally created by rgettext."
39
30
  msgstr ""
31
+ "Слива два Uniforum .pо файла. def.po е съществуващ PO файл с преводи. ref."
32
+ "pot е пресен PO файл с актуални референции към кода. ref.pot обикновено е "
33
+ "създаден от rgettext."
40
34
 
41
- #: lib/gettext/textdomain_manager.rb:147
42
- msgid "3rd parmeter is wrong: value = %{number}"
43
- msgstr "Третият параметър е грешен: value = %{number}"
35
+ #: lib/gettext/tools/rmsgmerge.rb:407 lib/gettext/tools/rgettext.rb:149
36
+ #: lib/gettext/tools/rmsgfmt.rb:50
37
+ msgid "Specific options:"
38
+ msgstr "Специфични опции:"
39
+
40
+ #: lib/gettext/tools/rmsgmerge.rb:409 lib/gettext/tools/rgettext.rb:151
41
+ #: lib/gettext/tools/rmsgfmt.rb:52
42
+ msgid "write output to specified file"
43
+ msgstr "изходът беше записан в зададения файл"
44
+
45
+ #: lib/gettext/tools/rmsgmerge.rb:420 lib/gettext/tools/rgettext.rb:168
46
+ #: lib/gettext/tools/rmsgfmt.rb:56
47
+ msgid "display version information and exit"
48
+ msgstr "показване на версията и изход"
44
49
 
45
- #: lib/gettext/tools/rgettext.rb:43
50
+ #: lib/gettext/tools/rmsgmerge.rb:446
51
+ msgid "definition po is not given."
52
+ msgstr "съществуващия po не е зададен."
53
+
54
+ #: lib/gettext/tools/rmsgmerge.rb:448
55
+ msgid "reference pot is not given."
56
+ msgstr "pot с референциите не е зададен."
57
+
58
+ #: lib/gettext/tools/parser/glade.rb:73
59
+ msgid "`%{file}' is not glade-2.0 format."
60
+ msgstr "`%{file}' не е във формат glade-2.0."
61
+
62
+ #: lib/gettext/tools/rgettext.rb:40
46
63
  msgid "'%{klass}' is ignored."
47
64
  msgstr "'%{klass}' беше игнориран."
48
65
 
49
- #: lib/gettext/tools/rgettext.rb:190
66
+ #: lib/gettext/tools/rgettext.rb:134
67
+ msgid "Error parsing %{path}"
68
+ msgstr ""
69
+
70
+ #: lib/gettext/tools/rgettext.rb:145
50
71
  msgid "Usage: %s input.rb [-r parser.rb] [-o output.pot]"
51
72
  msgstr "Употреба: %s input.rb [-r parser.rb] [-o output.pot] "
52
73
 
53
- #: lib/gettext/tools/rgettext.rb:192
74
+ #: lib/gettext/tools/rgettext.rb:147
54
75
  msgid "Extract translatable strings from given input files."
55
76
  msgstr "Извличане на преводните низове от зададените файлове."
56
77
 
57
- #: lib/gettext/tools/rgettext.rb:194 lib/gettext/tools/rmsgfmt.rb:50
58
- #: lib/gettext/tools/rmsgmerge.rb:407
59
- msgid "Specific options:"
60
- msgstr "Специфични опции:"
61
-
62
- #: lib/gettext/tools/rgettext.rb:196 lib/gettext/tools/rmsgfmt.rb:52
63
- #: lib/gettext/tools/rmsgmerge.rb:409
64
- msgid "write output to specified file"
65
- msgstr "изходът беше записан в зададения файл"
66
-
67
- #: lib/gettext/tools/rgettext.rb:200
78
+ #: lib/gettext/tools/rgettext.rb:155
68
79
  msgid "File '%s' already exists."
69
80
  msgstr "Файлът '%s' съществува."
70
81
 
71
- #: lib/gettext/tools/rgettext.rb:205
82
+ #: lib/gettext/tools/rgettext.rb:160
72
83
  msgid "require the library before executing rgettext"
73
84
  msgstr "заредете библиотеката с require преди да изпълните rgettext"
74
85
 
75
- #: lib/gettext/tools/rgettext.rb:209
86
+ #: lib/gettext/tools/rgettext.rb:164
76
87
  msgid "run in debugging mode"
77
88
  msgstr "изпълнение в режим на дебъгване"
78
89
 
79
- #: lib/gettext/tools/rgettext.rb:213 lib/gettext/tools/rmsgfmt.rb:56
80
- #: lib/gettext/tools/rmsgmerge.rb:420
81
- msgid "display version information and exit"
82
- msgstr "показване на версията и изход"
83
-
84
- #: lib/gettext/tools/rgettext.rb:237 lib/gettext/tools/rmsgfmt.rb:29
90
+ #: lib/gettext/tools/rgettext.rb:192 lib/gettext/tools/rmsgfmt.rb:29
85
91
  msgid "no input files"
86
92
  msgstr "няма зададени файлове"
87
93
 
@@ -93,31 +99,29 @@ msgstr "Употреба: %s input.po [-o output.mo]"
93
99
  msgid "Generate binary message catalog from textual translation description."
94
100
  msgstr "Генериране на двоични файлове с преводите от текстовите описания."
95
101
 
96
- #: lib/gettext/tools/rmsgmerge.rb:402
97
- msgid "Usage: %s def.po ref.pot [-o output.pot]"
98
- msgstr "Употреба: %s def.po ref.pot [-o output.pot]"
102
+ #: lib/gettext/tools.rb:68
103
+ msgid "Failed to merge with %{defpo}"
104
+ msgstr "Пропадна сливането с %{defpo}"
99
105
 
100
- #: lib/gettext/tools/rmsgmerge.rb:405
101
- msgid ""
102
- "Merges two Uniforum style .po files together. The def.po file is an existing "
103
- "PO file with translations. The ref.pot file is the last created PO file with "
104
- "up-to-date source references. ref.pot is generally created by rgettext."
105
- msgstr ""
106
- "Слива два Uniforum .pо файла. def.po е съществуващ PO файл с преводи. ref."
107
- "pot е пресен PO файл с актуални референции към кода. ref.pot обикновено е "
108
- "създаден от rgettext."
106
+ #: lib/gettext/tools.rb:69
107
+ msgid "New .pot was copied to %{failed_filename}"
108
+ msgstr "Новия .pot беше копиран като %{failed_filename}"
109
109
 
110
- #: lib/gettext/tools/rmsgmerge.rb:446
111
- msgid "definition po is not given."
112
- msgstr "съществуващия po не е зададен."
110
+ #: lib/gettext/tools.rb:70
111
+ msgid "Check these po/pot-files. It may have syntax errors or something wrong."
112
+ msgstr ""
113
+ "Проверете тези po/pot файлове. Може да имат синтактични грешки или нещо "
114
+ "друго."
113
115
 
114
- #: lib/gettext/tools/rmsgmerge.rb:448
115
- msgid "reference pot is not given."
116
- msgstr "pot с референциите не е зададен."
116
+ #: lib/gettext/tools.rb:173
117
+ msgid ""
118
+ "`%{cmd}' can not be found. \n"
119
+ "Install GNU Gettext then set PATH or MSGMERGE_PATH correctly."
120
+ msgstr ""
117
121
 
118
- #: lib/gettext/parser/glade.rb:75
119
- msgid "`%{file}' is not glade-2.0 format."
120
- msgstr "`%{file}' не е във формат glade-2.0."
122
+ #: lib/gettext/runtime/textdomain_manager.rb:147
123
+ msgid "3rd parmeter is wrong: value = %{number}"
124
+ msgstr "Третият параметър е грешен: value = %{number}"
121
125
 
122
126
  #: src/poparser.ry:38 src/poparser.ry:55
123
127
  msgid "Warning: fuzzy message was ignored.\n"