i18n-tasks: can't translate using Google

There is a problem when I try to translate my missing keys. Please find below my command line 😃.

✗ i18n-tasks translate-missing --from base fr
warning: parser/current is loading parser/ruby22, which recognizes
warning: 2.2.4-compliant syntax, but you are running 2.2.3.
warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
/Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:94:in `next': undefined method `each' for nil:NilClass (NoMethodError)
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:94:in `parse_value'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:92:in `block in parse_value'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:92:in `map'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:92:in `parse_value'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:67:in `from_values'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:40:in `fetch_google_translations'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:30:in `block in google_translate_list'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:29:in `each'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:29:in `map'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:29:in `google_translate_list'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:13:in `block in google_translate_forest'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/data/tree/nodes.rb:16:in `each'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/data/tree/nodes.rb:16:in `each'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:12:in `inject'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/google_translation.rb:12:in `google_translate_forest'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/command/commands/missing.rb:39:in `translate_missing'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/command/commander.rb:26:in `run'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/cli.rb:42:in `run'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/cli.rb:19:in `block in start'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/cli.rb:203:in `auto_output_coloring'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/cli.rb:17:in `start'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/lib/i18n/tasks/cli.rb:10:in `start'
    from /Users/thomasromera/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/i18n-tasks-0.9.4/bin/i18n-tasks:16:in `<top (required)>'
    from /Users/thomasromera/.rbenv/versions/2.2.3/bin/i18n-tasks:23:in `load'
    from /Users/thomasromera/.rbenv/versions/2.2.3/bin/i18n-tasks:23:in `<main>'

About this issue

  • Original URL
  • State: open
  • Created 8 years ago
  • Reactions: 3
  • Comments: 15 (5 by maintainers)

Most upvoted comments

@Adsidera Set the API key

I was getting this exact error as well. Initially it looks though there is an issue with nil enumerators here:

# p p "#{untranslated}: #{each_translated.inspect}"
# result from above: "You agree that you will not engage in any: #<Enumerator: nil:each>"
restore_interpolations(untranslated, each_translated.next)

But I traced it all the way back through the call stack and it turns out my API key was not being set properly but wasn’t blank, it seems like you can recreate this by setting a bad API key on purpose as well.