module I18n::Processes::Command::Options::Data

Constants

DATA_FORMATS
OUT_FORMATS

Public Instance Methods

forest_pos_or_stdin!(opt, format = opt[:format]) click to toggle source

@return [I18n::Processes::Data::Tree::Siblings]

# File lib/i18n/processes/command/options/data.rb, line 33
def forest_pos_or_stdin!(opt, format = opt[:format])
  parse_forest(pos_or_stdin!(opt), format)
end
forests_stdin_and_pos!(opt, num = false, format = opt[:format]) click to toggle source

@return [Array<I18n::Processes::Data::Tree::Siblings>] trees read from stdin and positional arguments

# File lib/i18n/processes/command/options/data.rb, line 38
def forests_stdin_and_pos!(opt, num = false, format = opt[:format])
  args = opt[:arguments] || []
  if opt[:nostdin]
    sources = []
  else
    sources = [$stdin.read]
    num -= 1 if num
  end
  if num
    num.times { sources << args.shift }
  else
    sources += args
    args.clear
  end
  sources.map { |src| parse_forest(src, format) }
end
merge_forests_stdin_and_pos!(opt) click to toggle source
# File lib/i18n/processes/command/options/data.rb, line 55
def merge_forests_stdin_and_pos!(opt)
  forests_stdin_and_pos!(opt).inject(i18n.empty_forest) do |result, forest|
    result.merge! forest
  end
end
parse_forest(src, format) click to toggle source

@return [I18n::Processes::Data::Tree::Siblings]

# File lib/i18n/processes/command/options/data.rb, line 62
def parse_forest(src, format)
  fail CommandError, "pass locale forest" unless src
  if format == 'keys'
    ::I18n::Processes::Data::Tree::Siblings.from_key_names parse_keys(src)
  else
    ::I18n::Processes::Data::Tree::Siblings.from_nested_hash i18n.data.adapter_parse(src, format)
  end
end
parse_keys(src) click to toggle source
# File lib/i18n/processes/command/options/data.rb, line 71
def parse_keys(src)
  Array(src).compact.flat_map { |v| v.strip.split(/\s*[,\s\n]\s*/) }.map(&:presence).compact
end
print_changed_keys(diff, version = :changed_keys) click to toggle source
print_forest(forest, opts, version = :show_tree) click to toggle source