class method self.initialize_i18n

Ruby on Rails 5.0.7.2

Since v3.0.20 Last seen in v5.0.7.2

Available in: v3.0.20 v3.1.12 v3.2.22.5 v4.0.13 v4.1.16 v4.2.11.3 v5.0.7.2

Signature

self.initialize_i18n(app)

Setup i18n configuration.

Parameters

app req
Source
# File activesupport/lib/active_support/i18n_railtie.rb, line 29
    def self.initialize_i18n(app)
      return if @i18n_inited

      fallbacks = app.config.i18n.delete(:fallbacks)

      # Avoid issues with setting the default_locale by disabling available locales
      # check while configuring.
      enforce_available_locales = app.config.i18n.delete(:enforce_available_locales)
      enforce_available_locales = I18n.enforce_available_locales if enforce_available_locales.nil?
      I18n.enforce_available_locales = false

      reloadable_paths = []
      app.config.i18n.each do |setting, value|
        case setting
        when :railties_load_path
          reloadable_paths = value
          app.config.i18n.load_path.unshift(*value.map(&:existent).flatten)
        when :load_path
          I18n.load_path += value
        else
          I18n.send("#{setting}=", value)
        end
      end

      init_fallbacks(fallbacks) if fallbacks && validate_fallbacks(fallbacks)

      # Restore available locales check so it will take place from now on.
      I18n.enforce_available_locales = enforce_available_locales

      directories = watched_dirs_with_extensions(reloadable_paths)
      reloader = app.config.file_watcher.new(I18n.load_path.dup, directories) do
        I18n.load_path.keep_if { |p| File.exist?(p) }
        I18n.load_path |= reloadable_paths.map(&:existent).flatten

        I18n.reload!
      end

      app.reloaders << reloader
      app.reloader.to_run do
        reloader.execute_if_updated { require_unload_lock! }
        # TODO: remove the following line as soon as the return value of
        # callbacks is ignored, that is, returning `false` does not
        # display a deprecation warning or halts the callback chain.
        true
      end
      reloader.execute

      @i18n_inited = true
    end

Defined in activesupport/lib/active_support/i18n_railtie.rb line 29 · View on GitHub · Improve this page · Find usages on GitHub

Defined in I18n::Railtie

Type at least 2 characters to search.

Use the arrow keys to navigate results, Enter to open one, Escape to close.

Keyboard shortcuts

/
Focus search
⌘K / Ctrl-K
Command palette
?
This help
Esc
Close