Google Translate в этом отношении весьма и весьма не плох по качеству перевода, можно даже иногда с неким иносТранцем в вакууме пообщаться, ну почти...
для быстрого перевода я себе добавил в гуглтолковский ростер парочку ботов en2ru@bot.talk.google.com и ru2en@bot.talk.google.com. В обычном джабберовом ростере они у меня не прижились - не показывали статус и не отзывались на запросы. Ну в общем вот. Ближе к делу - решил я в порыве автоматизации всего и вся, автоматизировать и перевод повесив его на горячую клавишу.
Пользуюсь я питоновским джаббер-клиентом gajim, который позволяет некоторые операции выполнять из командной строки. Также xsel для выведения из буфера в переменную
cat translator.tcl
#! /usr/bin/tclsh # зависимости: tcl, xsel, gajim with jid if {[exec gajim-remote check_gajim_running] ne "True"} {exit 1} # из буфера в переменную set buf [exec xsel -p -o -t 100] # переводим set dir ru2en if {$argv eq "en2ru"} {set dir en2ru} exec gajim-remote send_single_message $dir@bot.talk.google.com "" $buf # открываем сообщение exec gajim-remote toggle_roster_appearance exec gajim-remote show_next_pending_event # exec numlockx on
ну и напоследок кусок конфига openbox с примерами вызовов
<keybind key="W-r"> <action name="Execute"> <command>/home/sanych/bin/translator.tcl en2ru</command> </action> </keybind> <keybind key="W-e"> <action name="Execute"> <command>/home/sanych/bin/translator.tcl ru2en</command> </action> </keybind>
Теперь при нажатии {Win-R} или {Win-E} происходит вызов скрипта и открывается закладка gajim с переводом...