Restless 05.02.2010 22:50
Python — Google переводчик (Qt)
Недавно откопал на welinux пост про клиент к гугловскому переводчику . Но он на ГТК! Поэтому решил написать свой, с блэкджеком и девушками, на qt. Для пользователей kde есть плазмоид translatoid, но лично мне его использовать не совсем удобно. Это обусловило появление данного переводчика.Возможности:
-поддержка всех языков, доступных на google translate;
-кэширование запросов;
-сворачивание в трей;
-импорт из текстовых фалов и сохранение (только текстовых файлов! не пытайтесь подсунуть переводчику что-то еще!);
-мультиязычность интерфейса (пока поддерживается русский и английский языки);
-консольный режим;
-работа через прокси (testing).
Технические особенности:
-язык программирования - python
-gui библиотека - PyQt4
-кэширование осуществляется через бд sqlite с перезаписью устаревших запросов
-запуск функции перевода в отдельном потоке
Для запуска необходим интерпретатор python версии 2.6 (на этой версии проверялась программа), библиотека PyQt4.
Качаем исходники, распаковываем в каталог, далее переходим в этот каталог и даем права на исполнение:
1 |
|
теперь осталось запустить переводчик командой:
1 |
|
запуск приложения в консольном режиме должен выглядеть так:
1 |
|
например, следующая команда:
1 |
|
выведет в консоль "Привет, Мир!"
список возможных значений from_lang и to_lang можно узнать, воспользовавшись опцией --help
Исходники
P.S.: Все это писалось в процессе изучения Python, код очень сумбурный, наверняка многие моменты можно улучшить.
P.P.S.: Программа очень сырая.
Это не сложно сделать, только нужно передавать в консоли еще и языки, можно заодно сделать и справку --help.
Мне нравится, займусь этим
Мне нравится, займусь этим
Огромное Вам спасибо за труд! Давненько не было у меня так, чтобы так легко и успешно ставилась какая-то программа не из репозитория.
Распаковал файлы в ~/.local/translator;
Сделал файл исполняемым;
Создал ссылку:
Отлично и удобно работает. Есть только один вопрос: нельзя ли сделать ключ для запуска в свёрнутом (в трэй) виде? Хочется загнать запуск в ~/.fluxbox/startup
Распаковал файлы в ~/.local/translator;
Сделал файл исполняемым;
Создал ссылку:
ln -s ~/.local/translator/translator.py ~/bin/translator
Отлично и удобно работает. Есть только один вопрос: нельзя ли сделать ключ для запуска в свёрнутом (в трэй) виде? Хочется загнать запуск в ~/.fluxbox/startup
Разместил заметку об этой программе со ссылкой на данную страницу и скриншотом, пожалуйста: leonder.livejournal.com/1072.
Отлично написал!
Добавил ссылку на твой топик на хабр
http://habrahabr.ru/blogs/kde/83301/
Добавил ссылку на твой топик на хабр
http://habrahabr.ru/blogs/kde/83301/
За то что задумали, а главное реализовали +
P.S. Сам пользую GoldenDic, который покрывает все мои потребности в фунциональности словаря.
P.S. Сам пользую GoldenDic, который покрывает все мои потребности в фунциональности словаря.
Спасибо, удобно и полезно. Кстати, видел ли автор вот это? Идея и реализация очень схожи, но написан на c++.
Единственное, что резануло глаз - в переводе не отрабатываются апострофы, выводятся в виде кода символа (&+#+номер_символа). Что-то вставить эту конструкцию адекватно не могу, попробуйте перевести фразу "муха села на варенье, вот и всё стихотворенье" с русского на английский, увидите сами.
Ещё раз спасибо.
Единственное, что резануло глаз - в переводе не отрабатываются апострофы, выводятся в виде кода символа (&+#+номер_символа). Что-то вставить эту конструкцию адекватно не могу, попробуйте перевести фразу "муха села на варенье, вот и всё стихотворенье" с русского на английский, увидите сами.
Ещё раз спасибо.
да, проблема с апострофами и кавычками, буду решать. как решу отпишусь
а мне нравится проект http://lightlang.org.ru/
там и гуи есть (на pyqt, pygtk) и просто консольный вариант.
там и гуи есть (на pyqt, pygtk) и просто консольный вариант.
потому что не было необходимости.
если вам это действительно надо, то добавлю такую возможность, пишите в личку
если вам это действительно надо, то добавлю такую возможность, пишите в личку
сделано, проверял с обычной проксей. как будет работать с авторизацией - не знаю.
при запуске вида ./prog words to translate гуи не запускалось, а выдавался перевод всех аргументов кроме первого(имя_проги)?
Тоесть одновременно и консольный вариант.
Просто ждать несколько милисекунд на загрузку гуи не хочется :D, да и консоль всегда открыта, быстро набрал так и все счастливы. К тому же можно будет по пайпам передавать переводимый текст, хорошо, да?
Например, cat буржуйский_текст | translate :D. Вобщем вы поняли что я хочу от проги еще :)