88
99#
1010# DO NOT MODIFY!!!!
11- # This file is automatically generated by Racc 1.7.0
11+ # This file is automatically generated by Racc 1.7.1
1212# from Racc grammar file "".
1313#
1414
1919module GetText
2020 class POParser < Racc ::Parser
2121
22- module_eval ( <<'...end po_parser.ry/module_eval...' , 'po_parser.ry' , 123 )
22+ module_eval ( <<'...end po_parser.ry/module_eval...' , 'po_parser.ry' , 122 )
2323 if GetText.respond_to?(:bindtextdomain)
2424 include GetText
2525 GetText.bindtextdomain("gettext")
@@ -44,20 +44,23 @@ def report_warning?
4444 @report_warning
4545 end
4646
47- def unescape(orig)
48- ret = orig.gsub(/\\n/, "\n")
49- ret.gsub!(/\\t/, "\t")
50- ret.gsub!(/\\r/, "\r")
51- ret.gsub!(/\\"/, "\"")
52- ret
47+ def unescape(string)
48+ string.gsub(/\\(.)/) do
49+ escaped_character = $1
50+ case escaped_character
51+ when "t"
52+ "\t"
53+ when "r"
54+ "\r"
55+ when "n"
56+ "\n"
57+ else
58+ escaped_character
59+ end
60+ end
5361 end
5462 private :unescape
5563
56- def unescape_string(string)
57- string.gsub(/\\\\/, "\\")
58- end
59- private :unescape_string
60-
6164 def parse(str, data)
6265 @translator_comments = []
6366 @extracted_comments = []
@@ -102,7 +105,7 @@ def parse(str, data)
102105 @q.push [:COMMENT, $&]
103106 str = $'
104107 when /\A\"(.*)\"/
105- @q.push [:STRING, unescape_string ($1)]
108+ @q.push [:STRING, unescape ($1)]
106109 str = $'
107110 else
108111 #c = str[0,1]
@@ -387,7 +390,7 @@ def parse_flags_line(line)
387390
388391module_eval ( <<'.,.,' , 'po_parser.ry' , 26 )
389392 def _reduce_5(val, _values, result)
390- @msgctxt = unescape( val[1])
393+ @msgctxt = val[1]
391394
392395 result
393396 end
@@ -399,9 +402,8 @@ def _reduce_5(val, _values, result)
399402
400403module_eval ( <<'.,.,' , 'po_parser.ry' , 38 )
401404 def _reduce_8(val, _values, result)
402- msgid_raw = val[1]
403- msgid = unescape(msgid_raw)
404- msgstr = unescape(val[3])
405+ msgid = val[1]
406+ msgstr = val[3]
405407 use_message_p = true
406408 if @fuzzy and not msgid.empty?
407409 use_message_p = (not ignore_fuzzy?)
@@ -411,7 +413,7 @@ def _reduce_8(val, _values, result)
411413 else
412414 $stderr.print _("Warning: fuzzy message was used.\n")
413415 end
414- $stderr.print " #{@po_file}: msgid '#{msgid_raw }'\n"
416+ $stderr.print " #{@po_file}: msgid '#{msgid }'\n"
415417 end
416418 end
417419 @fuzzy = false
@@ -422,7 +424,7 @@ def _reduce_8(val, _values, result)
422424 end
423425.,.,
424426
425- module_eval ( <<'.,.,' , 'po_parser.ry' , 61 )
427+ module_eval ( <<'.,.,' , 'po_parser.ry' , 60 )
426428 def _reduce_9(val, _values, result)
427429 if @fuzzy and ignore_fuzzy?
428430 if val[1] != ""
@@ -444,7 +446,7 @@ def _reduce_9(val, _values, result)
444446 end
445447.,.,
446448
447- module_eval ( <<'.,.,' , 'po_parser.ry' , 82 )
449+ module_eval ( <<'.,.,' , 'po_parser.ry' , 81 )
448450 def _reduce_10(val, _values, result)
449451 if val[0].size > 0
450452 result = val[0] + "\000" + val[1]
@@ -458,31 +460,31 @@ def _reduce_10(val, _values, result)
458460
459461# reduce 11 omitted
460462
461- module_eval ( <<'.,.,' , 'po_parser.ry' , 94 )
463+ module_eval ( <<'.,.,' , 'po_parser.ry' , 93 )
462464 def _reduce_12(val, _values, result)
463465 result = val[2]
464466
465467 result
466468 end
467469.,.,
468470
469- module_eval ( <<'.,.,' , 'po_parser.ry' , 101 )
471+ module_eval ( <<'.,.,' , 'po_parser.ry' , 100 )
470472 def _reduce_13(val, _values, result)
471473 on_comment(val[0])
472474
473475 result
474476 end
475477.,.,
476478
477- module_eval ( <<'.,.,' , 'po_parser.ry' , 109 )
479+ module_eval ( <<'.,.,' , 'po_parser.ry' , 108 )
478480 def _reduce_14(val, _values, result)
479481 result = val.delete_if{|item| item == ""}.join
480482
481483 result
482484 end
483485.,.,
484486
485- module_eval ( <<'.,.,' , 'po_parser.ry' , 113 )
487+ module_eval ( <<'.,.,' , 'po_parser.ry' , 112 )
486488 def _reduce_15(val, _values, result)
487489 result = val[0]
488490
0 commit comments