gettext 3.0.1 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/doc/text/news.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # News
2
2
 
3
+ ## <a id="3-0-2">3.0.2</a>: 2013-09-29
4
+
5
+ ### Improvements
6
+
7
+ * Added {GetText::PO#empty?}.
8
+ * Added `:encoding` option to {GetText::POEntry#to_s}.
9
+ * xgettext: Added `--no-location` option.
10
+ * xgettext: Added `--sort-output` option.
11
+ * xgettext: Added `--sort-by-file` option.
12
+ * xgettext: Added `--sort-by-msgid` option.
13
+ * xgettext: Added `--width` option.
14
+ * xgettext: Added `--no-wrap` option.
15
+
3
16
  ## <a id="3-0-1">3.0.1</a>: 2013-09-20
4
17
 
5
18
  ### Improvements
data/lib/gettext/po.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
+ # Copyright (C) 2012-2013 Kouhei Sutou <kou@clear-code.com>
3
4
  # Copyright (C) 2012 Haruka Yoshihara <yoshihara@clear-code.com>
4
5
  #
5
6
  # License: Ruby's or LGPL
@@ -162,14 +163,13 @@ module GetText
162
163
  # @yieldparam [POEntry] entry {POEntry} in PO.
163
164
  # @overload each
164
165
  # @return [Enumerator] Returns Enumerator for {POEntry}.
165
- def each
166
- if block_given?
167
- @entries.each do |_, entry|
168
- yield(entry)
169
- end
170
- else
171
- @entries.each_value
172
- end
166
+ def each(&block)
167
+ @entries.each_value(&block)
168
+ end
169
+
170
+ # @return [Bool] `true` if there is no entry, `false` otherwise.
171
+ def empty?
172
+ @entries.empty?
173
173
  end
174
174
 
175
175
  # For {PoParer}.
@@ -190,7 +190,9 @@ module GetText
190
190
  po_string = ""
191
191
 
192
192
  header_entry = @entries[[nil, ""]]
193
- po_string << header_entry.to_s(options) unless header_entry.nil?
193
+ unless header_entry.nil?
194
+ po_string << header_entry.to_s(options.merge(:max_line_width => nil))
195
+ end
194
196
 
195
197
  content_entries = @entries.reject do |(_, msgid), _|
196
198
  msgid == :last or msgid.empty?
@@ -212,6 +212,8 @@ module GetText
212
212
  # Wraps long lines that is longer than the `:max_line_width`.
213
213
  # Don't break long lines if `:max_line_width` is less than 0
214
214
  # such as `-1`.
215
+ # @option options [Encoding] :encoding (nil)
216
+ # Encodes to the specific encoding.
215
217
  def initialize(entry, options={})
216
218
  @entry = entry
217
219
  @options = fill_default_option_values(options)
@@ -267,7 +269,8 @@ module GetText
267
269
  str << "msgstr "
268
270
  str << format_message(@entry.msgstr)
269
271
  end
270
- str
272
+
273
+ encode(str)
271
274
  end
272
275
 
273
276
  private
@@ -381,6 +384,12 @@ module GetText
381
384
  end
382
385
  chunks
383
386
  end
387
+
388
+ def encode(string)
389
+ encoding = @options[:encoding]
390
+ return string if encoding.nil?
391
+ string.encode(encoding)
392
+ end
384
393
  end
385
394
  end
386
395
  end
@@ -287,7 +287,7 @@ module GetText
287
287
 
288
288
  parser.on("--[no-]sort-by-msgid",
289
289
  _("Sort output by msgid")) do |sort_by_msgid|
290
- @order = sort_by_msgid ? :msgid : :references
290
+ @order = sort_by_msgid ? :msgid : :references
291
291
  end
292
292
 
293
293
  parser.on("--[no-]location",
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  # Copyright (C) 2012 Haruka Yoshihara <yoshihara@clear-code.com>
4
- # Copyright (C) 2012 Kouhei Sutou <kou@clear-code.com>
4
+ # Copyright (C) 2012-2013 Kouhei Sutou <kou@clear-code.com>
5
5
  # Copyright (C) 2003-2010 Masao Mutoh
6
6
  # Copyright (C) 2001,2002 Yasushi Shoji, Masao Mutoh
7
7
  #
@@ -85,6 +85,11 @@ module GetText
85
85
  @output_encoding = nil
86
86
 
87
87
  @parse_options = {}
88
+
89
+ @po_order = :references
90
+ @po_format_options = {
91
+ :max_line_width => POEntry::Formatter::DEFAULT_MAX_LINE_WIDTH,
92
+ }
88
93
  end
89
94
 
90
95
  # The parser object requires to have target?(path) and
@@ -138,43 +143,24 @@ module GetText
138
143
  @parsers.unshift(parser)
139
144
  end
140
145
 
141
- def generate_pot_header # :nodoc:
142
- time = now.strftime("%Y-%m-%d %H:%M%z")
146
+ def run(*options) # :nodoc:
147
+ check_command_line_options(*options)
143
148
 
144
- <<EOH
145
- # SOME DESCRIPTIVE TITLE.
146
- # Copyright (C) YEAR #{@copyright_holder}
147
- # This file is distributed under the same license as the #{@package_name} package.
148
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
149
- #
150
- #, fuzzy
151
- msgid ""
152
- msgstr ""
153
- "Project-Id-Version: #{@package_name} #{@package_version}\\n"
154
- "Report-Msgid-Bugs-To: #{@msgid_bugs_address}\\n"
155
- "POT-Creation-Date: #{time}\\n"
156
- "PO-Revision-Date: #{time}\\n"
157
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
158
- "Language-Team: LANGUAGE <LL@li.org>\\n"
159
- "Language: \\n"
160
- "MIME-Version: 1.0\\n"
161
- "Content-Type: text/plain; charset=#{@output_encoding}\\n"
162
- "Content-Transfer-Encoding: 8bit\\n"
163
- "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\\n"
164
- EOH
165
- end
149
+ @output_encoding ||= "UTF-8"
150
+ pot = generate_pot(@input_files)
166
151
 
167
- def generate_pot(paths) # :nodoc:
168
- po = parse(paths)
169
- entries = []
170
- po.each do |target|
171
- entries << encode(target.to_s)
152
+ if @output.is_a?(String)
153
+ File.open(File.expand_path(@output), "w+") do |file|
154
+ file.puts(pot)
155
+ end
156
+ else
157
+ @output.puts(pot)
172
158
  end
173
- entries.join("\n")
159
+ self
174
160
  end
175
161
 
176
162
  def parse(paths) # :nodoc:
177
- po = []
163
+ po = PO.new
178
164
  paths = [paths] if paths.kind_of?(String)
179
165
  paths.each do |path|
180
166
  begin
@@ -187,6 +173,54 @@ EOH
187
173
  po
188
174
  end
189
175
 
176
+ private
177
+ def now
178
+ Time.now
179
+ end
180
+
181
+ def header_comment
182
+ <<-COMMENT
183
+ SOME DESCRIPTIVE TITLE.
184
+ Copyright (C) YEAR #{@copyright_holder}
185
+ This file is distributed under the same license as the #{@package_name} package.
186
+ FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
187
+
188
+ COMMENT
189
+ end
190
+
191
+ def header_content
192
+ time = now.strftime("%Y-%m-%d %H:%M%z")
193
+
194
+ <<-CONTENT
195
+ Project-Id-Version: #{@package_name} #{@package_version}
196
+ Report-Msgid-Bugs-To: #{@msgid_bugs_address}
197
+ POT-Creation-Date: #{time}
198
+ PO-Revision-Date: #{time}
199
+ Last-Translator: FULL NAME <EMAIL@ADDRESS>
200
+ Language-Team: LANGUAGE <LL@li.org>
201
+ Language:
202
+ MIME-Version: 1.0
203
+ Content-Type: text/plain; charset=#{@output_encoding}
204
+ Content-Transfer-Encoding: 8bit
205
+ Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;
206
+ CONTENT
207
+ end
208
+
209
+ def generate_pot(paths) # :nodoc:
210
+ header = POEntry.new(:normal)
211
+ header.msgid = ""
212
+ header.msgstr = header_content
213
+ header.translator_comment = header_comment
214
+ header.flag = "fuzzy"
215
+
216
+ po = parse(paths)
217
+ po.order = @po_order
218
+ po[header.msgid] = header
219
+
220
+ to_s_options = @po_format_options.merge(:encoding => @output_encoding)
221
+ po.to_s(to_s_options)
222
+ end
223
+
190
224
  def check_command_line_options(*options) # :nodoc:
191
225
  input_files, output = parse_arguments(*options)
192
226
 
@@ -247,6 +281,43 @@ EOH
247
281
  @output_encoding = encoding
248
282
  end
249
283
 
284
+ parser.on("--[no-]sort-output",
285
+ _("Generate sorted output")) do |sort|
286
+ @po_order = sort ? :references : nil
287
+ end
288
+
289
+ parser.on("--[no-]sort-by-file",
290
+ _("Sort output by file location")) do |sort_by_file|
291
+ @po_order = sort_by_file ? :references : :msgid
292
+ end
293
+
294
+ parser.on("--[no-]sort-by-msgid",
295
+ _("Sort output by msgid")) do |sort_by_msgid|
296
+ @po_order = sort_by_msgid ? :msgid : :references
297
+ end
298
+
299
+ parser.on("--[no-]location",
300
+ _("Preserve '#: FILENAME:LINE' lines")) do |location|
301
+ @po_format_options[:include_reference_comment] = location
302
+ end
303
+
304
+ parser.on("--width=WIDTH", Integer,
305
+ _("Set output page width"),
306
+ "(#{@po_format_options[:max_line_width]})") do |width|
307
+ @po_format_options[:max_line_width] = width
308
+ end
309
+
310
+ parser.on("--[no-]wrap",
311
+ _("Break long message lines, longer than the output page width, into several lines"),
312
+ "(#{@po_format_options[:max_line_width] >= 0})") do |wrap|
313
+ if wrap
314
+ max_line_width = POEntry::Formatter::DEFAULT_MAX_LINE_WIDTH
315
+ else
316
+ max_line_width = -1
317
+ end
318
+ @po_format_options[:max_line_width] = max_line_width
319
+ end
320
+
250
321
  parser.on("-r", "--require=library",
251
322
  _("require the library before executing xgettext")) do |out|
252
323
  require out
@@ -278,29 +349,6 @@ EOH
278
349
  [options, output]
279
350
  end
280
351
 
281
- def run(*options) # :nodoc:
282
- check_command_line_options(*options)
283
-
284
- @output_encoding ||= "UTF-8"
285
- pot = generate_pot_header
286
- pot << "\n"
287
- pot << generate_pot(@input_files)
288
-
289
- if @output.is_a?(String)
290
- File.open(File.expand_path(@output), "w+") do |file|
291
- file.puts(pot)
292
- end
293
- else
294
- @output.puts(pot)
295
- end
296
- self
297
- end
298
-
299
- private
300
- def now
301
- Time.now
302
- end
303
-
304
352
  def parse_path(path, po)
305
353
  @parsers.each do |parser|
306
354
  next unless parser.target?(path)
@@ -346,20 +394,11 @@ EOH
346
394
  end
347
395
  end
348
396
 
349
- # Save the previous target
350
- if po.empty?
351
- existing = nil
352
- else
353
- entry = po.find {|t| t.mergeable?(po_entry)}
354
- existing = po.index(entry)
355
- end
356
-
357
- if existing
358
- po_entry = po[existing].merge(po_entry)
359
- po[existing] = po_entry
360
- else
361
- po << po_entry
397
+ existing_entry = po[po_entry.msgctxt, po_entry.msgid]
398
+ if existing_entry
399
+ po_entry = existing_entry.merge(po_entry)
362
400
  end
401
+ po[po_entry.msgctxt, po_entry.msgid] = po_entry
363
402
  end
364
403
  break
365
404
  end
@@ -390,10 +429,6 @@ EOH
390
429
  po_entry.references = references
391
430
  po_entry
392
431
  end
393
-
394
- def encode(string)
395
- string.encode(@output_encoding)
396
- end
397
432
  end
398
433
  end
399
434
  end
@@ -9,5 +9,5 @@
9
9
  =end
10
10
 
11
11
  module GetText
12
- VERSION = "3.0.1"
12
+ VERSION = "3.0.2"
13
13
  end
data/po/gettext.pot CHANGED
@@ -6,10 +6,10 @@
6
6
  #, fuzzy
7
7
  msgid ""
8
8
  msgstr ""
9
- "Project-Id-Version: gettext 3.0.1\n"
9
+ "Project-Id-Version: gettext 3.0.2\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2013-09-20 22:54+0900\n"
12
- "PO-Revision-Date: 2013-09-20 22:54+0900\n"
11
+ "POT-Creation-Date: 2013-09-29 12:01+0900\n"
12
+ "PO-Revision-Date: 2013-09-29 12:01+0900\n"
13
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
15
15
  "Language: \n"
@@ -38,73 +38,19 @@ msgstr ""
38
38
  msgid "Generate binary message catalog from textual translation description."
39
39
  msgstr ""
40
40
 
41
- #: ../lib/gettext/tools/msgfmt.rb:86 ../lib/gettext/tools/msgmerge.rb:266
42
- #: ../lib/gettext/tools/msginit.rb:89 ../lib/gettext/tools/xgettext.rb:218
41
+ #: ../lib/gettext/tools/msgfmt.rb:86 ../lib/gettext/tools/msginit.rb:89
42
+ #: ../lib/gettext/tools/msgmerge.rb:266 ../lib/gettext/tools/xgettext.rb:252
43
43
  msgid "Specific options:"
44
44
  msgstr ""
45
45
 
46
- #: ../lib/gettext/tools/msgfmt.rb:89 ../lib/gettext/tools/xgettext.rb:221
46
+ #: ../lib/gettext/tools/msgfmt.rb:89 ../lib/gettext/tools/xgettext.rb:255
47
47
  msgid "write output to specified file"
48
48
  msgstr ""
49
49
 
50
- #: ../lib/gettext/tools/msgfmt.rb:93 ../lib/gettext/tools/xgettext.rb:271
50
+ #: ../lib/gettext/tools/msgfmt.rb:93 ../lib/gettext/tools/xgettext.rb:342
51
51
  msgid "display version information and exit"
52
52
  msgstr ""
53
53
 
54
- #: ../lib/gettext/tools/msgmerge.rb:255
55
- msgid "Usage: %s [OPTIONS] definition.po reference.pot"
56
- msgstr ""
57
-
58
- #: ../lib/gettext/tools/msgmerge.rb:258
59
- msgid ""
60
- "Merges two Uniforum style .po files together. The definition.po file is an exi"
61
- "sting PO file with translations. The reference.pot file is the last created PO"
62
- " file with up-to-date source references. The reference.pot is generally create"
63
- "d by rxgettext."
64
- msgstr ""
65
-
66
- #: ../lib/gettext/tools/msgmerge.rb:269
67
- msgid "Update definition.po"
68
- msgstr ""
69
-
70
- #: ../lib/gettext/tools/msgmerge.rb:274
71
- msgid "Write output to specified file"
72
- msgstr ""
73
-
74
- #: ../lib/gettext/tools/msgmerge.rb:279
75
- msgid "Generate sorted output"
76
- msgstr ""
77
-
78
- #: ../lib/gettext/tools/msgmerge.rb:284
79
- msgid "Sort output by file location"
80
- msgstr ""
81
-
82
- #: ../lib/gettext/tools/msgmerge.rb:289
83
- msgid "Sort output by msgid"
84
- msgstr ""
85
-
86
- #: ../lib/gettext/tools/msgmerge.rb:294
87
- msgid "Preserve '#: FILENAME:LINE' lines"
88
- msgstr ""
89
-
90
- #: ../lib/gettext/tools/msgmerge.rb:299
91
- msgid "Set output page width"
92
- msgstr ""
93
-
94
- #: ../lib/gettext/tools/msgmerge.rb:305
95
- msgid ""
96
- "Break long message lines, longer than the output page width, into several line"
97
- "s"
98
- msgstr ""
99
-
100
- #: ../lib/gettext/tools/msgmerge.rb:317 ../lib/gettext/tools/msginit.rb:112
101
- msgid "Display this help and exit"
102
- msgstr ""
103
-
104
- #: ../lib/gettext/tools/msgmerge.rb:323
105
- msgid "Display version information and exit"
106
- msgstr ""
107
-
108
54
  #: ../lib/gettext/tools/msginit.rb:85
109
55
  msgid ""
110
56
  "Create a new .po file from initializing .pot file with user's environment and "
@@ -129,6 +75,10 @@ msgid ""
129
75
  " locale on your environment."
130
76
  msgstr ""
131
77
 
78
+ #: ../lib/gettext/tools/msginit.rb:112 ../lib/gettext/tools/msgmerge.rb:317
79
+ msgid "Display this help and exit"
80
+ msgstr ""
81
+
132
82
  #: ../lib/gettext/tools/msginit.rb:117
133
83
  msgid "Display version and exit"
134
84
  msgstr ""
@@ -159,116 +109,156 @@ msgstr ""
159
109
  msgid "Please enter your email address"
160
110
  msgstr ""
161
111
 
112
+ #: ../lib/gettext/tools/msgmerge.rb:255
113
+ msgid "Usage: %s [OPTIONS] definition.po reference.pot"
114
+ msgstr ""
115
+
116
+ #: ../lib/gettext/tools/msgmerge.rb:258
117
+ msgid ""
118
+ "Merges two Uniforum style .po files together. The definition.po file is an exi"
119
+ "sting PO file with translations. The reference.pot file is the last created PO"
120
+ " file with up-to-date source references. The reference.pot is generally create"
121
+ "d by rxgettext."
122
+ msgstr ""
123
+
124
+ #: ../lib/gettext/tools/msgmerge.rb:269
125
+ msgid "Update definition.po"
126
+ msgstr ""
127
+
128
+ #: ../lib/gettext/tools/msgmerge.rb:274
129
+ msgid "Write output to specified file"
130
+ msgstr ""
131
+
132
+ #: ../lib/gettext/tools/msgmerge.rb:279 ../lib/gettext/tools/xgettext.rb:285
133
+ msgid "Generate sorted output"
134
+ msgstr ""
135
+
136
+ #: ../lib/gettext/tools/msgmerge.rb:284 ../lib/gettext/tools/xgettext.rb:290
137
+ msgid "Sort output by file location"
138
+ msgstr ""
139
+
140
+ #: ../lib/gettext/tools/msgmerge.rb:289 ../lib/gettext/tools/xgettext.rb:295
141
+ msgid "Sort output by msgid"
142
+ msgstr ""
143
+
144
+ #: ../lib/gettext/tools/msgmerge.rb:294 ../lib/gettext/tools/xgettext.rb:300
145
+ msgid "Preserve '#: FILENAME:LINE' lines"
146
+ msgstr ""
147
+
148
+ #: ../lib/gettext/tools/msgmerge.rb:299 ../lib/gettext/tools/xgettext.rb:305
149
+ msgid "Set output page width"
150
+ msgstr ""
151
+
152
+ #: ../lib/gettext/tools/msgmerge.rb:305 ../lib/gettext/tools/xgettext.rb:311
153
+ msgid ""
154
+ "Break long message lines, longer than the output page width, into several line"
155
+ "s"
156
+ msgstr ""
157
+
158
+ #: ../lib/gettext/tools/msgmerge.rb:323
159
+ msgid "Display version information and exit"
160
+ msgstr ""
161
+
162
+ #: ../lib/gettext/tools/parser/glade.rb:32
163
+ msgid "`%{file}' is not glade-2.0 format."
164
+ msgstr ""
165
+
162
166
  #: ../lib/gettext/tools/xgettext.rb:64
163
167
  msgid "'%{klass}' is ignored."
164
168
  msgstr ""
165
169
 
166
- #: ../lib/gettext/tools/xgettext.rb:183
170
+ #: ../lib/gettext/tools/xgettext.rb:169
167
171
  msgid "Error parsing %{path}"
168
172
  msgstr ""
169
173
 
170
- #: ../lib/gettext/tools/xgettext.rb:194
174
+ #: ../lib/gettext/tools/xgettext.rb:228
171
175
  msgid "no input files"
172
176
  msgstr ""
173
177
 
174
- #: ../lib/gettext/tools/xgettext.rb:212
178
+ #: ../lib/gettext/tools/xgettext.rb:246
175
179
  msgid "Usage: %s input.rb [-r parser.rb] [-o output.pot]"
176
180
  msgstr ""
177
181
 
178
- #: ../lib/gettext/tools/xgettext.rb:215
182
+ #: ../lib/gettext/tools/xgettext.rb:249
179
183
  msgid "Extract translatable strings from given input files."
180
184
  msgstr ""
181
185
 
182
- #: ../lib/gettext/tools/xgettext.rb:226
186
+ #: ../lib/gettext/tools/xgettext.rb:260
183
187
  msgid "set package name in output"
184
188
  msgstr ""
185
189
 
186
- #: ../lib/gettext/tools/xgettext.rb:231
190
+ #: ../lib/gettext/tools/xgettext.rb:265
187
191
  msgid "set package version in output"
188
192
  msgstr ""
189
193
 
190
- #: ../lib/gettext/tools/xgettext.rb:236
194
+ #: ../lib/gettext/tools/xgettext.rb:270
191
195
  msgid "set report address for msgid bugs"
192
196
  msgstr ""
193
197
 
194
- #: ../lib/gettext/tools/xgettext.rb:241
198
+ #: ../lib/gettext/tools/xgettext.rb:275
195
199
  msgid "set copyright holder in output"
196
200
  msgstr ""
197
201
 
198
- #: ../lib/gettext/tools/xgettext.rb:246
202
+ #: ../lib/gettext/tools/xgettext.rb:280
199
203
  msgid "set encoding for output"
200
204
  msgstr ""
201
205
 
202
- #: ../lib/gettext/tools/xgettext.rb:251
206
+ #: ../lib/gettext/tools/xgettext.rb:322
203
207
  msgid "require the library before executing xgettext"
204
208
  msgstr ""
205
209
 
206
- #: ../lib/gettext/tools/xgettext.rb:256
210
+ #: ../lib/gettext/tools/xgettext.rb:327
207
211
  msgid ""
208
212
  "If TAG is specified, place comment blocks starting with TAG and precedding key"
209
213
  "word lines in output file"
210
214
  msgstr ""
211
215
 
212
- #: ../lib/gettext/tools/xgettext.rb:257
216
+ #: ../lib/gettext/tools/xgettext.rb:328
213
217
  msgid ""
214
218
  "If TAG is not specified, place all comment blocks preceing keyword lines in ou"
215
219
  "tput file"
216
220
  msgstr ""
217
221
 
218
- #: ../lib/gettext/tools/xgettext.rb:258
219
- msgid "(default: %s)"
222
+ #: ../lib/gettext/tools/xgettext.rb:329
223
+ msgid "no TAG"
220
224
  msgstr ""
221
225
 
222
- #: ../lib/gettext/tools/xgettext.rb:258
223
- msgid "no TAG"
226
+ #: ../lib/gettext/tools/xgettext.rb:329
227
+ msgid "(default: %s)"
224
228
  msgstr ""
225
229
 
226
- #: ../lib/gettext/tools/xgettext.rb:262
230
+ #: ../lib/gettext/tools/xgettext.rb:333
227
231
  msgid "run in debugging mode"
228
232
  msgstr ""
229
233
 
230
- #: ../lib/gettext/tools/xgettext.rb:266
234
+ #: ../lib/gettext/tools/xgettext.rb:337
231
235
  msgid "display this help and exit"
232
236
  msgstr ""
233
237
 
234
- #: ../lib/gettext/tools/xgettext.rb:320
238
+ #: ../lib/gettext/tools/xgettext.rb:368
235
239
  msgid ""
236
240
  "Warning: The empty \"\" msgid is reserved by gettext. So gettext(\"\") doesn't ret"
237
241
  "urns empty string but the header entry in po file."
238
242
  msgstr ""
239
243
 
240
- #: ../lib/gettext/tools/parser/glade.rb:32
241
- msgid "`%{file}' is not glade-2.0 format."
242
- msgstr ""
243
-
244
- #: ../samples/hello_gtk2.rb:25
245
- msgid "hello, gtk world"
246
- msgstr ""
247
-
248
- #: ../samples/hello_tk.rb:16
249
- msgid "hello, tk world"
250
- msgstr ""
251
-
252
244
  #: ../samples/cgi/hellolib.rb:16
253
245
  msgid "This message is from hellolib."
254
246
  msgstr ""
255
247
 
256
- #: ../samples/hello_noop.rb:13
257
- msgid "Hello World"
248
+ #: ../samples/hello.rb:17
249
+ msgid "Hello World\n"
258
250
  msgstr ""
259
251
 
260
- #: ../samples/hello_noop.rb:13
261
- msgid "Hello World2"
252
+ #: ../samples/hello2.rb:19
253
+ msgid "One is %{num}\n"
262
254
  msgstr ""
263
255
 
264
- #: ../samples/hello_plural.rb:20
265
- msgid "There is an apple.\n"
266
- msgid_plural "There are %{num} apples.\n"
267
- msgstr[0] ""
268
- msgstr[1] ""
256
+ #: ../samples/hello2.rb:20
257
+ msgid "Hello %{world}\n"
258
+ msgstr ""
269
259
 
270
- #: ../samples/hello.rb:17
271
- msgid "Hello World\n"
260
+ #: ../samples/hello2.rb:20
261
+ msgid "World"
272
262
  msgstr ""
273
263
 
274
264
  #: ../samples/hello_glade2.glade:9 ../test/fixtures/gladeparser.glade:8
@@ -283,131 +273,248 @@ msgstr ""
283
273
  msgid "<Hello world>"
284
274
  msgstr ""
285
275
 
286
- #: ../samples/hello2.rb:19
287
- msgid "One is %{num}\n"
276
+ #: ../samples/hello_gtk2.rb:25
277
+ msgid "hello, gtk world"
288
278
  msgstr ""
289
279
 
290
- #: ../samples/hello2.rb:20
291
- msgid "Hello %{world}\n"
280
+ #: ../samples/hello_noop.rb:13
281
+ msgid "Hello World"
292
282
  msgstr ""
293
283
 
294
- #: ../samples/hello2.rb:20
295
- msgid "World"
284
+ #: ../samples/hello_noop.rb:13
285
+ msgid "Hello World2"
296
286
  msgstr ""
297
287
 
298
- #: ../test/test_text_domain_toplevel.rb:9
299
- #: ../test/test_text_domain_toplevel.rb:15
300
- #: ../test/test_text_domain_toplevel.rb:18
301
- #: ../test/test_text_domain_toplevel.rb:23 ../test/test_gettext.rb:64
302
- #: ../test/test_gettext.rb:297 ../test/test_gettext.rb:299
303
- #: ../test/test_gettext.rb:302 ../test/test_gettext.rb:306
304
- #: ../test/test_gettext.rb:309 ../test/test_gettext.rb:322
305
- #: ../test/test_gettext.rb:325 ../test/test_gettext.rb:328
306
- #: ../test/test_gettext.rb:336 ../test/test_gettext.rb:339
307
- #: ../test/test_gettext.rb:351 ../test/test_gettext.rb:358
308
- #: ../test/test_thread.rb:23 ../test/fixtures/simple.rb:10
309
- #: ../test/fixtures/multi_text_domain.rb:11
310
- #: ../test/fixtures/multi_text_domain.rb:24
311
- #: ../test/fixtures/multi_text_domain.rb:43
312
- #: ../test/fixtures/multi_text_domain.rb:50
313
- #: ../test/fixtures/multi_text_domain.rb:62
314
- #: ../test/fixtures/multi_text_domain.rb:75
315
- #: ../test/fixtures/multi_text_domain.rb:91
316
- #: ../test/fixtures/multi_text_domain.rb:104
317
- #: ../test/fixtures/multi_text_domain.rb:108
318
- #: ../test/fixtures/multi_text_domain.rb:128
319
- msgid "language"
320
- msgstr ""
288
+ #: ../samples/hello_plural.rb:20
289
+ msgid "There is an apple.\n"
290
+ msgid_plural "There are %{num} apples.\n"
291
+ msgstr[0] ""
292
+ msgstr[1] ""
321
293
 
322
- #: ../test/tools/files/simple_translation.rb:3
323
- msgid "a translation"
294
+ #: ../samples/hello_tk.rb:16
295
+ msgid "hello, tk world"
324
296
  msgstr ""
325
297
 
326
- #: ../test/test_gettext.rb:53 ../test/fixtures/multi_text_domain.rb:14
327
- #: ../test/fixtures/multi_text_domain.rb:27
328
- #: ../test/fixtures/multi_text_domain.rb:54
329
- #: ../test/fixtures/multi_text_domain.rb:65
330
- #: ../test/fixtures/multi_text_domain.rb:78
331
- #: ../test/fixtures/multi_text_domain.rb:116
332
- msgid "LANGUAGE"
298
+ #: ../test/fixtures/N_.rb:10 ../test/fixtures/_.rb:30 ../test/fixtures/n_.rb:29
299
+ #: ../test/test_gettext.rb:155 ../test/test_gettext.rb:159
300
+ msgid "aaa"
301
+ msgid_plural "aaa2"
302
+ msgstr[0] ""
303
+ msgstr[1] ""
304
+
305
+ #: ../test/fixtures/N_.rb:14 ../test/fixtures/_.rb:34
306
+ msgid "aaa\n"
333
307
  msgstr ""
334
308
 
335
- #: ../test/test_gettext.rb:59
336
- msgid "nomsgstr"
309
+ #: ../test/fixtures/N_.rb:18 ../test/fixtures/_.rb:38
310
+ msgid ""
311
+ "bbb\n"
312
+ "ccc"
337
313
  msgstr ""
338
314
 
339
- #: ../test/test_gettext.rb:101
340
- msgid "test"
315
+ #: ../test/fixtures/N_.rb:22 ../test/fixtures/_.rb:42
316
+ msgid ""
317
+ "bbb\n"
318
+ "ccc\n"
319
+ "ddd\n"
341
320
  msgstr ""
342
321
 
343
- #: ../test/fixtures/ns_.rb:28 ../test/test_gettext.rb:119
344
- #: ../test/fixtures/s_.rb:28 ../test/fixtures/s_.rb:32
345
- #: ../test/fixtures/ns_.rb:32
346
- msgid "AAA|BBB"
347
- msgid_plural "CCC"
348
- msgstr[0] ""
349
- msgstr[1] ""
322
+ #: ../test/fixtures/N_.rb:29 ../test/fixtures/N_.rb:33 ../test/fixtures/_.rb:49
323
+ #: ../test/fixtures/_.rb:53
324
+ msgid "eee"
325
+ msgstr ""
350
326
 
351
- #: ../test/test_gettext.rb:155 ../test/test_gettext.rb:159
352
- #: ../test/fixtures/n_.rb:29 ../test/fixtures/N_.rb:10 ../test/fixtures/_.rb:30
353
- msgid "aaa"
354
- msgid_plural "aaa2"
327
+ #: ../test/fixtures/N_.rb:33 ../test/fixtures/_.rb:53 ../test/fixtures/n_.rb:55
328
+ #: ../test/fixtures/n_.rb:59
329
+ msgid "fff"
330
+ msgid_plural "fff2"
355
331
  msgstr[0] ""
356
332
  msgstr[1] ""
357
333
 
358
- #: ../test/test_gettext.rb:179 ../test/test_gettext.rb:180
359
- #: ../test/test_gettext.rb:181 ../test/test_gettext.rb:184
360
- #: ../test/test_gettext.rb:185 ../test/test_gettext.rb:186
361
- #: ../test/test_gettext.rb:189 ../test/test_gettext.rb:190
362
- #: ../test/test_gettext.rb:191 ../test/test_gettext.rb:194
363
- #: ../test/test_gettext.rb:195 ../test/test_gettext.rb:196
364
- #: ../test/test_gettext.rb:197 ../test/test_gettext.rb:200
365
- #: ../test/test_gettext.rb:201 ../test/test_gettext.rb:202
366
- #: ../test/test_gettext.rb:203 ../test/test_gettext.rb:206
367
- #: ../test/test_gettext.rb:207 ../test/test_gettext.rb:208
368
- #: ../test/test_gettext.rb:211 ../test/test_gettext.rb:212
369
- #: ../test/test_gettext.rb:213 ../test/test_gettext.rb:216
370
- #: ../test/test_gettext.rb:217 ../test/test_gettext.rb:218
371
- #: ../test/test_gettext.rb:221 ../test/test_gettext.rb:222
372
- #: ../test/test_gettext.rb:223 ../test/test_gettext.rb:224
373
- #: ../test/test_gettext.rb:225 ../test/test_gettext.rb:252
374
- #: ../test/test_gettext.rb:253 ../test/test_gettext.rb:254
375
- #: ../test/test_gettext.rb:260 ../test/test_gettext.rb:261
376
- #: ../test/test_gettext.rb:262 ../test/test_gettext.rb:271
377
- #: ../test/test_gettext.rb:272 ../test/test_gettext.rb:273
378
- #: ../test/test_gettext.rb:281 ../test/test_gettext.rb:282
379
- #: ../test/test_gettext.rb:283 ../test/test_gettext.rb:292
380
- msgid "one"
381
- msgid_plural "two"
334
+ #: ../test/fixtures/N_.rb:37 ../test/fixtures/_.rb:57 ../test/fixtures/n_.rb:63
335
+ msgid "ggghhhiii"
336
+ msgid_plural "jjjkkklll"
382
337
  msgstr[0] ""
383
338
  msgstr[1] ""
384
339
 
385
- #: ../test/test_gettext.rb:231 ../test/test_gettext.rb:232
386
- #: ../test/test_gettext.rb:233 ../test/test_gettext.rb:236
387
- #: ../test/test_gettext.rb:237 ../test/test_gettext.rb:238
388
- #: ../test/test_gettext.rb:240 ../test/test_gettext.rb:241
389
- #: ../test/test_gettext.rb:242 ../test/test_gettext.rb:244
390
- #: ../test/test_gettext.rb:245 ../test/test_gettext.rb:246
391
- #: ../test/test_gettext.rb:249 ../test/test_gettext.rb:250
392
- #: ../test/test_gettext.rb:251
393
- msgid "first"
394
- msgid_plural "second"
340
+ #: ../test/fixtures/N_.rb:43 ../test/fixtures/_.rb:63 ../test/fixtures/n_.rb:72
341
+ msgid "a\"b\"c\""
342
+ msgid_plural "a\"b\"c\"2"
395
343
  msgstr[0] ""
396
344
  msgstr[1] ""
397
345
 
398
- #: ../test/test_gettext.rb:269 ../test/test_gettext.rb:268
399
- #: ../test/test_gettext.rb:270 ../test/test_gettext.rb:278
400
- #: ../test/test_gettext.rb:279 ../test/test_gettext.rb:280
401
- msgid "single"
402
- msgid_plural "plural"
346
+ #: ../test/fixtures/N_.rb:47 ../test/fixtures/_.rb:67 ../test/fixtures/n_.rb:76
347
+ msgid "d\"e\"f\""
348
+ msgid_plural "d\"e\"f\"2"
403
349
  msgstr[0] ""
404
350
  msgstr[1] ""
405
351
 
406
- #: ../test/fixtures/ns_/custom.rb:28 ../test/fixtures/s_/custom.rb:28
407
- msgid "context|context$message"
408
- msgid_plural "context|context$messages"
409
- msgstr[0] ""
410
- msgstr[1] ""
352
+ #: ../test/fixtures/N_.rb:51 ../test/fixtures/_.rb:71
353
+ msgid "jjj"
354
+ msgstr ""
355
+
356
+ #: ../test/fixtures/N_.rb:52 ../test/fixtures/_.rb:72
357
+ msgid "kkk"
358
+ msgstr ""
359
+
360
+ #: ../test/fixtures/N_.rb:56 ../test/fixtures/_.rb:76
361
+ msgid "lllmmm"
362
+ msgstr ""
363
+
364
+ #: ../test/fixtures/N_.rb:64 ../test/fixtures/_.rb:84
365
+ msgid ""
366
+ "nnn\n"
367
+ "ooo"
368
+ msgstr ""
369
+
370
+ #: ../test/fixtures/_.rb:88 ../test/fixtures/_.rb:92
371
+ msgid "#"
372
+ msgstr ""
373
+
374
+ #: ../test/fixtures/_.rb:96
375
+ msgid "\\taaa"
376
+ msgstr ""
377
+
378
+ #: ../test/fixtures/_.rb:100
379
+ msgid ""
380
+ "Here document1\n"
381
+ "Here document2\n"
382
+ msgstr ""
383
+
384
+ #. TRANSLATORS: This is a proper name. See the gettext
385
+ #. manual, section Names. Note this is actually a non-ASCII
386
+ #. name: The first name is (with Unicode escapes)
387
+ #. "Fran\u00e7ois" or (with HTML entities) "Fran&ccedil;ois".
388
+ #. Pronunciation is like "fraa-swa pee-nar".
389
+ #. This is an example from GNU gettext documentation.
390
+ #: ../test/fixtures/_.rb:120
391
+ msgid "Francois Pinard"
392
+ msgstr ""
393
+
394
+ #: ../test/fixtures/_.rb:123
395
+ msgid "No TRANSLATORS comment"
396
+ msgstr ""
397
+
398
+ #: ../test/fixtures/_.rb:128
399
+ msgid "self explaining"
400
+ msgstr ""
401
+
402
+ #: ../test/fixtures/_.rb:132
403
+ msgid "This is a # including string."
404
+ msgstr ""
405
+
406
+ #: ../test/fixtures/_/double_quote_in_double_quote.rb:28
407
+ msgid "double \"quote\" in double quote"
408
+ msgstr ""
409
+
410
+ #: ../test/fixtures/_/double_quote_in_single_quote.rb:28
411
+ msgid "double \"quote\" in single quote"
412
+ msgstr ""
413
+
414
+ #: ../test/fixtures/_/literal_concatenation_with_continuation_line.rb:28
415
+ msgid "literal concatenation with continuation line"
416
+ msgstr ""
417
+
418
+ #: ../test/fixtures/_/middle_new_line.rb:28
419
+ msgid ""
420
+ "middle\n"
421
+ "new line"
422
+ msgstr ""
423
+
424
+ #: ../test/fixtures/_/multiple_lines_literal.rb:28
425
+ msgid ""
426
+ "multiple\n"
427
+ "lines\n"
428
+ "literal\n"
429
+ msgstr ""
430
+
431
+ #: ../test/fixtures/_/multiple_messages_in_same_line.rb:28
432
+ msgid "multiple"
433
+ msgstr ""
434
+
435
+ #: ../test/fixtures/_/multiple_messages_in_same_line.rb:28
436
+ msgid "in same line"
437
+ msgstr ""
438
+
439
+ #: ../test/fixtures/_/multiple_same_messages.rb:28
440
+ #: ../test/fixtures/_/multiple_same_messages.rb:32
441
+ msgid "multiple same messages"
442
+ msgstr ""
443
+
444
+ #: ../test/fixtures/_/one_line.rb:28
445
+ msgid "one line"
446
+ msgstr ""
447
+
448
+ #: ../test/fixtures/_/one_new_line.rb:28
449
+ msgid "one new line\n"
450
+ msgstr ""
451
+
452
+ #: ../test/fixtures/backslash.rb:27
453
+ msgid "You should escape '\\' as '\\\\'."
454
+ msgstr ""
455
+
456
+ #: ../test/fixtures/gladeparser.glade:29
457
+ msgid "normal text"
458
+ msgstr ""
459
+
460
+ #: ../test/fixtures/gladeparser.glade:50
461
+ msgid "1st line\\n2nd line\\n3rd line"
462
+ msgstr ""
463
+
464
+ #: ../test/fixtures/gladeparser.glade:73
465
+ msgid "<span color=\"red\" weight=\"bold\" size=\"large\">markup </span>"
466
+ msgstr ""
467
+
468
+ #: ../test/fixtures/gladeparser.glade:94
469
+ msgid ""
470
+ "<span color=\"red\">1st line markup </span>\\n<span color=\"blue\">2nd line markup<"
471
+ "/span>"
472
+ msgstr ""
473
+
474
+ #: ../test/fixtures/gladeparser.glade:116
475
+ msgid "<span>&quot;markup&quot; with &lt;escaped strings&gt;</span>"
476
+ msgstr ""
477
+
478
+ #: ../test/fixtures/gladeparser.glade:137
479
+ #: ../test/fixtures/gladeparser.glade:158
480
+ msgid "duplicated"
481
+ msgstr ""
482
+
483
+ #: ../test/fixtures/multi_text_domain.rb:11
484
+ #: ../test/fixtures/multi_text_domain.rb:24
485
+ #: ../test/fixtures/multi_text_domain.rb:43
486
+ #: ../test/fixtures/multi_text_domain.rb:50
487
+ #: ../test/fixtures/multi_text_domain.rb:62
488
+ #: ../test/fixtures/multi_text_domain.rb:75
489
+ #: ../test/fixtures/multi_text_domain.rb:91
490
+ #: ../test/fixtures/multi_text_domain.rb:104
491
+ #: ../test/fixtures/multi_text_domain.rb:108
492
+ #: ../test/fixtures/multi_text_domain.rb:128 ../test/fixtures/simple.rb:10
493
+ #: ../test/test_gettext.rb:64 ../test/test_gettext.rb:297
494
+ #: ../test/test_gettext.rb:299 ../test/test_gettext.rb:302
495
+ #: ../test/test_gettext.rb:306 ../test/test_gettext.rb:309
496
+ #: ../test/test_gettext.rb:322 ../test/test_gettext.rb:325
497
+ #: ../test/test_gettext.rb:328 ../test/test_gettext.rb:336
498
+ #: ../test/test_gettext.rb:339 ../test/test_gettext.rb:351
499
+ #: ../test/test_gettext.rb:358 ../test/test_text_domain_toplevel.rb:9
500
+ #: ../test/test_text_domain_toplevel.rb:15
501
+ #: ../test/test_text_domain_toplevel.rb:18
502
+ #: ../test/test_text_domain_toplevel.rb:23 ../test/test_thread.rb:23
503
+ msgid "language"
504
+ msgstr ""
505
+
506
+ #: ../test/fixtures/multi_text_domain.rb:14
507
+ #: ../test/fixtures/multi_text_domain.rb:27
508
+ #: ../test/fixtures/multi_text_domain.rb:54
509
+ #: ../test/fixtures/multi_text_domain.rb:65
510
+ #: ../test/fixtures/multi_text_domain.rb:78
511
+ #: ../test/fixtures/multi_text_domain.rb:116 ../test/test_gettext.rb:53
512
+ msgid "LANGUAGE"
513
+ msgstr ""
514
+
515
+ #: ../test/fixtures/multi_text_domain.rb:120
516
+ msgid "no data"
517
+ msgstr ""
411
518
 
412
519
  #: ../test/fixtures/n_.rb:33
413
520
  msgid "bbb\n"
@@ -447,37 +554,12 @@ msgid_plural ""
447
554
  msgstr[0] ""
448
555
  msgstr[1] ""
449
556
 
450
- #: ../test/fixtures/n_.rb:55 ../test/fixtures/n_.rb:59
451
- #: ../test/fixtures/N_.rb:33 ../test/fixtures/_.rb:53
452
- msgid "fff"
453
- msgid_plural "fff2"
454
- msgstr[0] ""
455
- msgstr[1] ""
456
-
457
557
  #: ../test/fixtures/n_.rb:59
458
558
  msgid "ggg"
459
559
  msgid_plural "ggg2"
460
560
  msgstr[0] ""
461
561
  msgstr[1] ""
462
562
 
463
- #: ../test/fixtures/n_.rb:63 ../test/fixtures/N_.rb:37 ../test/fixtures/_.rb:57
464
- msgid "ggghhhiii"
465
- msgid_plural "jjjkkklll"
466
- msgstr[0] ""
467
- msgstr[1] ""
468
-
469
- #: ../test/fixtures/n_.rb:72 ../test/fixtures/N_.rb:43 ../test/fixtures/_.rb:63
470
- msgid "a\"b\"c\""
471
- msgid_plural "a\"b\"c\"2"
472
- msgstr[0] ""
473
- msgstr[1] ""
474
-
475
- #: ../test/fixtures/n_.rb:76 ../test/fixtures/N_.rb:47 ../test/fixtures/_.rb:67
476
- msgid "d\"e\"f\""
477
- msgid_plural "d\"e\"f\"2"
478
- msgstr[0] ""
479
- msgstr[1] ""
480
-
481
563
  #: ../test/fixtures/n_.rb:80
482
564
  msgid "mmmmmm"
483
565
  msgid_plural "mmm2mmm2"
@@ -490,7 +572,7 @@ msgid_plural "nnn2"
490
572
  msgstr[0] ""
491
573
  msgstr[1] ""
492
574
 
493
- #: ../test/fixtures/n_.rb:86 ../test/fixtures/n_.rb:85
575
+ #: ../test/fixtures/n_.rb:85 ../test/fixtures/n_.rb:86
494
576
  msgid "ooo"
495
577
  msgid_plural "ppp"
496
578
  msgstr[0] ""
@@ -510,55 +592,46 @@ msgid_plural "comments"
510
592
  msgstr[0] ""
511
593
  msgstr[1] ""
512
594
 
513
- #: ../test/fixtures/_/double_quote_in_double_quote.rb:28
514
- msgid "double \"quote\" in double quote"
515
- msgstr ""
516
-
517
- #: ../test/fixtures/_/multiple_same_messages.rb:28
518
- #: ../test/fixtures/_/multiple_same_messages.rb:32
519
- msgid "multiple same messages"
520
- msgstr ""
521
-
522
- #: ../test/fixtures/_/double_quote_in_single_quote.rb:28
523
- msgid "double \"quote\" in single quote"
524
- msgstr ""
525
-
526
- #: ../test/fixtures/_/multiple_messages_in_same_line.rb:28
527
- msgid "multiple"
528
- msgstr ""
529
-
530
- #: ../test/fixtures/_/multiple_messages_in_same_line.rb:28
531
- msgid "in same line"
532
- msgstr ""
533
-
534
- #: ../test/fixtures/_/multiple_lines_literal.rb:28
535
- msgid ""
536
- "multiple\n"
537
- "lines\n"
538
- "literal\n"
595
+ #: ../test/fixtures/non_ascii.rb:10
596
+ msgid "こんにちは"
539
597
  msgstr ""
540
598
 
541
- #: ../test/fixtures/_/literal_concatenation_with_continuation_line.rb:28
542
- msgid "literal concatenation with continuation line"
543
- msgstr ""
599
+ #: ../test/fixtures/np_.rb:28 ../test/fixtures/np_.rb:29
600
+ #: ../test/fixtures/np_.rb:33 ../test/fixtures/np_.rb:34
601
+ msgctxt "Magazine"
602
+ msgid "a book"
603
+ msgid_plural "%{num} books"
604
+ msgstr[0] ""
605
+ msgstr[1] ""
544
606
 
545
- #: ../test/fixtures/_/middle_new_line.rb:28
546
- msgid ""
547
- "middle\n"
548
- "new line"
549
- msgstr ""
607
+ #: ../test/fixtures/np_.rb:38 ../test/fixtures/np_.rb:39
608
+ msgctxt "Hardcover"
609
+ msgid "a book"
610
+ msgid_plural "%{num} books"
611
+ msgstr[0] ""
612
+ msgstr[1] ""
550
613
 
551
- #: ../test/fixtures/_/one_line.rb:28
552
- msgid "one line"
553
- msgstr ""
614
+ #: ../test/fixtures/np_.rb:43 ../test/fixtures/np_.rb:44
615
+ msgctxt "Magaine"
616
+ msgid "I have a magazine"
617
+ msgid_plural "I have %{num} magazines"
618
+ msgstr[0] ""
619
+ msgstr[1] ""
554
620
 
555
- #: ../test/fixtures/_/one_new_line.rb:28
556
- msgid "one new line\n"
557
- msgstr ""
621
+ #: ../test/fixtures/np_.rb:48 ../test/fixtures/np_.rb:49
622
+ msgctxt "Hardcover"
623
+ msgid "a picture"
624
+ msgid_plural "%{num} pictures"
625
+ msgstr[0] ""
626
+ msgstr[1] ""
558
627
 
559
- #: ../test/fixtures/backslash.rb:27
560
- msgid "You should escape '\\' as '\\\\'."
561
- msgstr ""
628
+ #: ../test/fixtures/ns_.rb:28 ../test/fixtures/ns_.rb:32
629
+ #: ../test/fixtures/s_.rb:28 ../test/fixtures/s_.rb:32
630
+ #: ../test/test_gettext.rb:119
631
+ msgid "AAA|BBB"
632
+ msgid_plural "CCC"
633
+ msgstr[0] ""
634
+ msgstr[1] ""
562
635
 
563
636
  #: ../test/fixtures/ns_.rb:36 ../test/fixtures/s_.rb:36
564
637
  msgid "AAA"
@@ -602,150 +675,12 @@ msgid_plural "DDD"
602
675
  msgstr[0] ""
603
676
  msgstr[1] ""
604
677
 
605
- #: ../test/fixtures/np_.rb:28 ../test/fixtures/np_.rb:29
606
- #: ../test/fixtures/np_.rb:33 ../test/fixtures/np_.rb:34
607
- msgctxt "Magazine"
608
- msgid "a book"
609
- msgid_plural "%{num} books"
610
- msgstr[0] ""
611
- msgstr[1] ""
612
-
613
- #: ../test/fixtures/np_.rb:38 ../test/fixtures/np_.rb:39
614
- msgctxt "Hardcover"
615
- msgid "a book"
616
- msgid_plural "%{num} books"
617
- msgstr[0] ""
618
- msgstr[1] ""
619
-
620
- #: ../test/fixtures/np_.rb:43 ../test/fixtures/np_.rb:44
621
- msgctxt "Magaine"
622
- msgid "I have a magazine"
623
- msgid_plural "I have %{num} magazines"
624
- msgstr[0] ""
625
- msgstr[1] ""
626
-
627
- #: ../test/fixtures/np_.rb:48 ../test/fixtures/np_.rb:49
628
- msgctxt "Hardcover"
629
- msgid "a picture"
630
- msgid_plural "%{num} pictures"
678
+ #: ../test/fixtures/ns_/custom.rb:28 ../test/fixtures/s_/custom.rb:28
679
+ msgid "context|context$message"
680
+ msgid_plural "context|context$messages"
631
681
  msgstr[0] ""
632
682
  msgstr[1] ""
633
683
 
634
- #: ../test/fixtures/simple.rb:14
635
- msgid "one is %d."
636
- msgstr ""
637
-
638
- #: ../test/fixtures/untranslated.rb:10
639
- msgid "untranslated"
640
- msgstr ""
641
-
642
- #: ../test/fixtures/N_.rb:14 ../test/fixtures/_.rb:34
643
- msgid "aaa\n"
644
- msgstr ""
645
-
646
- #: ../test/fixtures/N_.rb:18 ../test/fixtures/_.rb:38
647
- msgid ""
648
- "bbb\n"
649
- "ccc"
650
- msgstr ""
651
-
652
- #: ../test/fixtures/N_.rb:22 ../test/fixtures/_.rb:42
653
- msgid ""
654
- "bbb\n"
655
- "ccc\n"
656
- "ddd\n"
657
- msgstr ""
658
-
659
- #: ../test/fixtures/N_.rb:29 ../test/fixtures/N_.rb:33 ../test/fixtures/_.rb:49
660
- #: ../test/fixtures/_.rb:53
661
- msgid "eee"
662
- msgstr ""
663
-
664
- #: ../test/fixtures/N_.rb:51 ../test/fixtures/_.rb:71
665
- msgid "jjj"
666
- msgstr ""
667
-
668
- #: ../test/fixtures/N_.rb:52 ../test/fixtures/_.rb:72
669
- msgid "kkk"
670
- msgstr ""
671
-
672
- #: ../test/fixtures/N_.rb:56 ../test/fixtures/_.rb:76
673
- msgid "lllmmm"
674
- msgstr ""
675
-
676
- #: ../test/fixtures/N_.rb:64 ../test/fixtures/_.rb:84
677
- msgid ""
678
- "nnn\n"
679
- "ooo"
680
- msgstr ""
681
-
682
- #: ../test/fixtures/gladeparser.glade:29
683
- msgid "normal text"
684
- msgstr ""
685
-
686
- #: ../test/fixtures/gladeparser.glade:50
687
- msgid "1st line\\n2nd line\\n3rd line"
688
- msgstr ""
689
-
690
- #: ../test/fixtures/gladeparser.glade:73
691
- msgid "<span color=\"red\" weight=\"bold\" size=\"large\">markup </span>"
692
- msgstr ""
693
-
694
- #: ../test/fixtures/gladeparser.glade:94
695
- msgid ""
696
- "<span color=\"red\">1st line markup </span>\\n<span color=\"blue\">2nd line markup<"
697
- "/span>"
698
- msgstr ""
699
-
700
- #: ../test/fixtures/gladeparser.glade:116
701
- msgid "<span>&quot;markup&quot; with &lt;escaped strings&gt;</span>"
702
- msgstr ""
703
-
704
- #: ../test/fixtures/gladeparser.glade:137
705
- #: ../test/fixtures/gladeparser.glade:158
706
- msgid "duplicated"
707
- msgstr ""
708
-
709
- #: ../test/fixtures/_.rb:88 ../test/fixtures/_.rb:92
710
- msgid "#"
711
- msgstr ""
712
-
713
- #: ../test/fixtures/_.rb:96
714
- msgid "\\taaa"
715
- msgstr ""
716
-
717
- #: ../test/fixtures/_.rb:100
718
- msgid ""
719
- "Here document1\n"
720
- "Here document2\n"
721
- msgstr ""
722
-
723
- #. TRANSLATORS: This is a proper name. See the gettext
724
- #. manual, section Names. Note this is actually a non-ASCII
725
- #. name: The first name is (with Unicode escapes)
726
- #. "Fran\u00e7ois" or (with HTML entities) "Fran&ccedil;ois".
727
- #. Pronunciation is like "fraa-swa pee-nar".
728
- #. This is an example from GNU gettext documentation.
729
- #: ../test/fixtures/_.rb:120
730
- msgid "Francois Pinard"
731
- msgstr ""
732
-
733
- #: ../test/fixtures/_.rb:123
734
- msgid "No TRANSLATORS comment"
735
- msgstr ""
736
-
737
- #: ../test/fixtures/_.rb:128
738
- msgid "self explaining"
739
- msgstr ""
740
-
741
- #: ../test/fixtures/_.rb:132
742
- msgid "This is a # including string."
743
- msgstr ""
744
-
745
- #: ../test/fixtures/multi_text_domain.rb:120
746
- msgid "no data"
747
- msgstr ""
748
-
749
684
  #: ../test/fixtures/p_.rb:29 ../test/fixtures/p_.rb:33
750
685
  msgctxt "AAA"
751
686
  msgid "BBB"
@@ -777,6 +712,70 @@ msgctxt "program"
777
712
  msgid "name"
778
713
  msgstr ""
779
714
 
780
- #: ../test/fixtures/non_ascii.rb:10
781
- msgid "こんにちは"
715
+ #: ../test/fixtures/simple.rb:14
716
+ msgid "one is %d."
717
+ msgstr ""
718
+
719
+ #: ../test/fixtures/untranslated.rb:10
720
+ msgid "untranslated"
721
+ msgstr ""
722
+
723
+ #: ../test/test_gettext.rb:59
724
+ msgid "nomsgstr"
725
+ msgstr ""
726
+
727
+ #: ../test/test_gettext.rb:101
728
+ msgid "test"
729
+ msgstr ""
730
+
731
+ #: ../test/test_gettext.rb:179 ../test/test_gettext.rb:180
732
+ #: ../test/test_gettext.rb:181 ../test/test_gettext.rb:184
733
+ #: ../test/test_gettext.rb:185 ../test/test_gettext.rb:186
734
+ #: ../test/test_gettext.rb:189 ../test/test_gettext.rb:190
735
+ #: ../test/test_gettext.rb:191 ../test/test_gettext.rb:194
736
+ #: ../test/test_gettext.rb:195 ../test/test_gettext.rb:196
737
+ #: ../test/test_gettext.rb:197 ../test/test_gettext.rb:200
738
+ #: ../test/test_gettext.rb:201 ../test/test_gettext.rb:202
739
+ #: ../test/test_gettext.rb:203 ../test/test_gettext.rb:206
740
+ #: ../test/test_gettext.rb:207 ../test/test_gettext.rb:208
741
+ #: ../test/test_gettext.rb:211 ../test/test_gettext.rb:212
742
+ #: ../test/test_gettext.rb:213 ../test/test_gettext.rb:216
743
+ #: ../test/test_gettext.rb:217 ../test/test_gettext.rb:218
744
+ #: ../test/test_gettext.rb:221 ../test/test_gettext.rb:222
745
+ #: ../test/test_gettext.rb:223 ../test/test_gettext.rb:224
746
+ #: ../test/test_gettext.rb:225 ../test/test_gettext.rb:252
747
+ #: ../test/test_gettext.rb:253 ../test/test_gettext.rb:254
748
+ #: ../test/test_gettext.rb:260 ../test/test_gettext.rb:261
749
+ #: ../test/test_gettext.rb:262 ../test/test_gettext.rb:271
750
+ #: ../test/test_gettext.rb:272 ../test/test_gettext.rb:273
751
+ #: ../test/test_gettext.rb:281 ../test/test_gettext.rb:282
752
+ #: ../test/test_gettext.rb:283 ../test/test_gettext.rb:292
753
+ msgid "one"
754
+ msgid_plural "two"
755
+ msgstr[0] ""
756
+ msgstr[1] ""
757
+
758
+ #: ../test/test_gettext.rb:231 ../test/test_gettext.rb:232
759
+ #: ../test/test_gettext.rb:233 ../test/test_gettext.rb:236
760
+ #: ../test/test_gettext.rb:237 ../test/test_gettext.rb:238
761
+ #: ../test/test_gettext.rb:240 ../test/test_gettext.rb:241
762
+ #: ../test/test_gettext.rb:242 ../test/test_gettext.rb:244
763
+ #: ../test/test_gettext.rb:245 ../test/test_gettext.rb:246
764
+ #: ../test/test_gettext.rb:249 ../test/test_gettext.rb:250
765
+ #: ../test/test_gettext.rb:251
766
+ msgid "first"
767
+ msgid_plural "second"
768
+ msgstr[0] ""
769
+ msgstr[1] ""
770
+
771
+ #: ../test/test_gettext.rb:268 ../test/test_gettext.rb:269
772
+ #: ../test/test_gettext.rb:270 ../test/test_gettext.rb:278
773
+ #: ../test/test_gettext.rb:279 ../test/test_gettext.rb:280
774
+ msgid "single"
775
+ msgid_plural "plural"
776
+ msgstr[0] ""
777
+ msgstr[1] ""
778
+
779
+ #: ../test/tools/files/simple_translation.rb:3
780
+ msgid "a translation"
782
781
  msgstr ""