Support for the Ruby 2.4 series has ended. See here for reference.
Object
An i18n supported text.
This object provides the following two features:
* Extracts translation messages from wrapped raw text. * Translates wrapped raw text in specified locale.
Wrapped raw text is one of String, RDoc::Comment or Array of them.
Extracts translation target messages and yields each message.
Each yielded message is a Hash. It consists of the followings:
:paragraph
String (The translation target message itself.)
Integer (The line number of the :paragraph is started.)
The above content may be added in the future.
# File rdoc/i18n/text.rb, line 32
def extract_messages
parse do |part|
case part[:type]
when :empty_line
# ignore
when :paragraph
yield(part)
end
end
end
Translates raw text into locale.
# File rdoc/i18n/text.rb, line 44
def translate(locale)
translated_text = ''
parse do |part|
case part[:type]
when :paragraph
translated_text << locale.translate(part[:paragraph])
when :empty_line
translated_text << part[:line]
else
raise "should not reach here: unexpected type: #{type}"
end
end
translated_text
end