module Translating
A way to produce translated text in a ruby-program. Translations are read from a file “translations” in the program folder.
Public Class Methods
language()
click to toggle source
find the current language-setting and return it.
# File lib/translating.rb, line 44 def self.language() if @@lang == nil r = ENV['LANG'] if(r) @@lang = r[0, 2] elsif( !File_Checking::file_check(@@lang_file, [:exist?, :readable?]) && File::size(@@lang_file) >= 2) File::open(@@lang_file, 'r') {|f| @@lang = f.readline} @@lang.chomp!.downcase! if @@lang end end @@lang = 'en' if !@@lang end
trl(t, *args)
click to toggle source
Translate a string to the currently set langage. The args parameter may contain replacement-text which will appear at the positions indicated by wildcard-characters in the original string.
# File lib/translating.rb, line 61 def self.trl(t, *args) Translating::language() lt = @@tr[t] if(lt) lt = lt[@@lang] else # File.open('/tmp/mtf', 'a+') {|f| f << t << "\n"} puts "\nTRANSLATION MISSING: \"" << t << "\"" end lt ||= t if(args && !args.empty?) i = -1 lt = lt.gsub(@@awild) do |a| i += 1 args.flatten[i] end lt += args[i + 1, args.length].join end return lt end
Public Instance Methods
trl(t, *args )
click to toggle source
Translate a string to the currently set langage. The args parameter may contain replacement-text which will appear at the positions indicated by wildcard-characters in the original string.
# File lib/translating.rb, line 86 def trl(t, *args ) Translating::trl(t, args) end