module I18n::Processes::UnusedKeys

Public Instance Methods

unused_keys(locales: nil, strict: nil) click to toggle source
# File lib/i18n/processes/unused_keys.rb, line 7
def unused_keys(locales: nil, strict: nil)
  locales = Array(locales).presence || self.locales
  locales.map { |locale| unused_tree(locale: locale, strict: strict) }.compact.reduce(:merge!)
end
unused_tree(locale: base_locale, strict: nil) click to toggle source

@param [String] locale @param [Boolean] strict if true, do not match dynamic keys

# File lib/i18n/processes/unused_keys.rb, line 14
def unused_tree(locale: base_locale, strict: nil)
  used_key_names = used_tree(strict: true).key_names
  collapse_plural_nodes!(data[locale].select_keys do |key, _node|
    !ignore_key?(key, :unused) &&
      (strict || !used_in_expr?(key)) &&
      !used_key_names.include?(depluralize_key(key, locale))
  end)
end