Sha256: 77208a203dcbedd361e56c70a2e92c09b92796a04abbe1f1e65abcee6296b9c3

Contents?: true

Size: 982 Bytes

Versions: 1

Compression:

Stored size: 982 Bytes

Contents

require 'fast_gettext/mo_file'
require 'fast_gettext/storage'
require 'fast_gettext/translation'
require 'fast_gettext/translation_repository'
require 'fast_gettext/vendor/string'

module FastGettext
  include FastGettext::Storage
  extend self

  LOCALE_REX =  /^[a-z]{2,3}$|^[a-z]{2,3}_[A-Z]{2,3}$/
  NAMESPACE_SEPARATOR = '|'

  # users should not include FastGettext, since this would contaminate their namespace
  # rather use
  # FastGettext.locale = ..
  # FastGettext.text_domain = ..
  # and
  # include FastGettext::Translation
  FastGettext::Translation.public_instance_methods.each do |method|
    define_method method do |*args|
      Translation.send(method,*args)
    end
  end

  def add_text_domain(name,options)
    translation_repositories[name] = TranslationRepository.build(name,options)
  end

  # some repositories know where to store their locales
  def locale_path
    translation_repositories[text_domain].instance_variable_get(:@options)[:path]
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fast_gettext-0.6.5 lib/fast_gettext.rb