Ruby unofficial client for Yandex translation engine
Examples
1.9.2p320 :001 > require 'yatran'
=> true
1.9.2p320 :002 > "Hello world".lang
=> "en"
1.9.2p320 :003 > "Hello world".language
=> "en"
1.9.2p320 :004 > "Hello world".en_ru
=> "Привет, мир!"
1.9.2p320 :005 > "Hello world".en_ru.ru_fr
=> "Bonjour tout le monde!"
1.9.2p320 :006 > "Hello world".en_ru.ru_it
=> "Ciao, mondo!"
1.9.2p320 :009 > "Hello world".respond_to?("en_ru")
=> true
1.9.2p320 :010 > "Hello world".respond_to?("from_en_to_ru")
=> true
1.9.2p320 :011 > "Hello world".respond_to?("to_ru_from_en")
=> true
Detect with language method
1.9.2p320 :007 > "Hello world".en_ru.ru_it.language
=> "it"
Arrays also includes Yatran::Translatable module
1.9.3p125 :015 > ["hello", "goodbye"].en_tr
=> ["merhaba", "elveda"]
1.9.3p125 :017 > ["hello", "goodbye"].from_en_to_ru
=> ["Привет", "до свидания"]
Direct translate method
1.9.3p125 :008 > ["hello", "goodbye"].translate('en-tr')
=> ["merhaba", "elveda"]
1.9.3p125 :009 > "hello".translate("en-tr")
=> "merhaba"
Avaliable directions
1.9.3p125 :031 > String.translation_directions
=> ["ru-en", "ru-pl", "ru-uk", "ru-de", "ru-fr", "ru-es", "ru-it", "ru-tr", "en-ru", "en-uk", "en-tr", "pl-ru", "uk-ru", "uk-en", "de-ru", "fr-ru", "es-ru", "it-ru", "tr-ru", "tr-en"]
1.9.3p125 :032 > Array.translation_directions
=> ["ru-en", "ru-pl", "ru-uk", "ru-de", "ru-fr", "ru-es", "ru-it", "ru-tr", "en-ru", "en-uk", "en-tr", "pl-ru", "uk-ru", "uk-en", "de-ru", "fr-ru", "es-ru", "it-ru", "tr-ru", "tr-en"]
1.9.3p125 :033 > Yatran::LANGUAGES_TRANSLATIONS
=> ["ru-en", "ru-pl", "ru-uk", "ru-de", "ru-fr", "ru-es", "ru-it", "ru-tr", "en-ru", "en-uk", "en-tr", "pl-ru", "uk-ru", "uk-en", "de-ru", "fr-ru", "es-ru", "it-ru", "tr-ru", "tr-en"]
Installation
Add this line to your application's Gemfile:
gem 'yatran'
And then execute:
$ bundle
Or install it yourself as:
$ gem install yatran
Usage
Terms of use (free access, up to 10,000 request a day or 1,000,000 requested characters) At the moment it supports the following lang pairs: http://translate.yandex.net/api/v1/tr/getLangs
More info
English version: http://translate.yandex.net/tr-url/en+ru.ru/api.yandex.ru/translate/ (translated automatically) Russian version: http://api.yandex.ru/translate/
CLI
/bin/yaran is a cli utility to use yandex translation API
./yatran -h
Yandex Command line translations.
Available language directions : ru-en,ru-pl,ru-uk,ru-de,ru-fr,ru-es,ru-it,ru-tr,en-ru,en-uk,en-tr,pl-ru,uk-ru,uk-en,de-ru,fr-ru,es-ru,it-ru,tr-ru,tr-en
Usage: yatran COMMAND [OPTIONS]
Commands
d: detect text language
t: translate text
Options
-p, --phrase Phrase [OPT] Phrase to translate or detect
-s, --source FILE [OPT] File with text to translate
-o, --output FILE [OPT] File with output
-f, --from FROM_LANG [OPT] Language of phrase/text
-t, --to TO_LANG [OPT] Output language
-l, --language LANGDIR [OPT] Available language direction
-d, --debug Debug flag