class I18n::Config

def available_locales

the call will be delegated to the backend.
Unless you explicitely set these through I18n.available_locales=
Returns an array of locales for which translations are available.
def available_locales
  @@available_locales ||= nil
  @@available_locales || backend.available_locales
end

def available_locales=(locales)

Sets the available locales.
def available_locales=(locales)
  @@available_locales = Array(locales).map { |locale| locale.to_sym }
  @@available_locales = nil if @@available_locales.empty?
end

def backend

Returns the current backend. Defaults to +Backend::Simple+.
def backend
  @@backend ||= Backend::Simple.new
end

def backend=(backend)

Sets the current backend. Used to set a custom backend.
def backend=(backend)
  @@backend = backend
end

def default_locale

Returns the current default locale. Defaults to :'en'
def default_locale
  @@default_locale ||= :en
end

def default_locale=(locale)

Sets the current default locale. Used to set a custom default locale.
def default_locale=(locale)
  @@default_locale = locale.to_sym rescue nil
end

def default_separator

Returns the current default scope separator. Defaults to '.'
def default_separator
  @@default_separator ||= '.'
end

def default_separator=(separator)

Sets the current default scope separator.
def default_separator=(separator)
  @@default_separator = separator
end

def exception_handler

Return the current exception handler. Defaults to :default_exception_handler.
def exception_handler
  @@exception_handler ||= ExceptionHandler.new
end

def exception_handler=(exception_handler)

Sets the exception handler.
def exception_handler=(exception_handler)
  @@exception_handler = exception_handler
end

def load_path

I18n.load_path << 'path/to/locale/en.yml'
register translation files like this:
named *.yml and contain YAML data. So for the SimpleBackend clients may
files which are either named *.rb and contain plain Ruby Hashes or are
E.g. the provided SimpleBackend accepts a list of paths to translation

backend defines acceptable sources.
Allow clients to register paths providing translation data sources. The
def load_path
  @@load_path ||= []
end

def load_path=(load_path)

behave like a Ruby Array.
Sets the load path instance. Custom implementations are expected to
def load_path=(load_path)
  @@load_path = load_path
end

def locale

It defaults to the default_locale.
The only configuration value that is not global and scoped to thread is :locale.
def locale
  @locale ||= default_locale
end

def locale=(locale)

Sets the current locale pseudo-globally, i.e. in the Thread.current hash.
def locale=(locale)
  @locale = locale.to_sym rescue nil
end