Class: TranslateCLI
- Inherits:
-
Thor
- Object
- Thor
- TranslateCLI
- Defined in:
- lib/google_translate/translate_cli.rb
Constant Summary collapse
- USAGE =
<<-LONGDESC Simple client for Google Translate API. Usage: translate # displays usage translate -v # displays the version translate list # displays the list of supported languages translate en:ru Hello world # translates from English to Russian translate ru Hello world # translates to Russian from auto-detected language translate -s ru Hello world # translates and tries to say it translate -e ru help # translates and gives extra information (nouns, verbs, synonyms) LONGDESC
Instance Method Summary collapse
Instance Method Details
#list ⇒ Object
26 27 28 29 30 31 32 33 |
# File 'lib/google_translate/translate_cli.rb', line 26 def list translator = GoogleTranslate.new from_languages, to_languages = translator.supported_languages print_languages "From Languages:", from_languages print_languages "To Languages:", to_languages end |
#translate(from_lang, to_lang, text) ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/google_translate/translate_cli.rb', line 39 def translate from_lang, to_lang, text translator = GoogleTranslate.new result = translator.translate(from_lang, to_lang, text) result_parser = ResultParser.new result extra = [:extra] ? ([:extra] == 'true') : false if extra puts "Nouns: #{result_parser.nouns.join(", ")}" puts "Verbs: #{result_parser.verbs.join(", ")}" puts "Synonym Nouns:" result_parser.synonym_nouns.each do |r| puts "- " + r.join(", ") end puts "Synonym Verbs:" result_parser.synonym_verbs.each do |r| puts "- " + r.join(", ") end puts "Synonym Exclamations:" result_parser.synonym_exclamations.each do |r| puts "- " + r.join(", ") end end puts "Translation: #{result_parser.translation}" puts "Translit: #{result_parser.translit}" unless result_parser.translit.size == 0 say = [:say] ? ([:say] == 'true') : false if say and !!(RUBY_PLATFORM =~ /darwin/i) translator.say(from_lang, text) translator.say(to_lang, result_parser.translation) end end |
#version ⇒ Object
21 22 23 |
# File 'lib/google_translate/translate_cli.rb', line 21 def version puts "Google Translate Version: #{GoogleTranslate::VERSION}" end |