Translator — небольшое программное обеспечение позволяющие производить быстрый перевод текста.
Описание
Приложение с иконкой в системном трее с возможностью выбора онлайн переводчика.
Для перевода текста необходимо нажать дважды cmd+c, первый раз текст копируется в буфер обмена, а второй раз текст отправляется в онлайн переводчик.
На выбор доступно 3 сервиса перевода
- Yandex переводчик
- Google переводчик
- Promt
Выбрать переводчик по умолчанию можно нажав на иконку приложения в системном трее.
Требования
- MacOS
- Python 3
Установка
Клонируем репозиторий
git clone https://github.com/r4hx/Translator
Переходим в директорию
cd Translator
Устанавливаем зависимости
python3 -m pip install -r requirements.txt
Запускаем приложение
python3 main.py
Сборка приложения для MacOS
Приложение можно скомпилировать в bundle для нативного запуска в MacOS.
Для этого необходимо установить зависимости из файла requirements-dev.txt
python3 -m pip install -r requirements-dev.txt
Далее произведем сборку приложения
pyinstaller \ --target-architecture arm64 \ --clean \ --name Translator \ --noconfirm \ --onedir \ --onefile \ --windowed \ --icon=icon.png \ --add-binary "icon.png:." \ main.py
Описание параметров сборки приложения
- target-architecture — целевая архитектура вашего устройства. Возможные варианты: x86_64 arm64, universal2.
- clean — очищает все кэши pyinstaller и удаляет временные файлы/папки перед сборкой.
- name — название для приложения и файла спецификации.
- noconfirm — отключаем подтверждение перезаписи файлов.
- onedir — создает отдельную папку для билда.
- onefile — производит сборку приложения в один бинарный файлик.
- windowed — флаг для приложений с графическим интерфейсом.
- icon — путь до файла с иконкой приложения.
- add-binary — добавляет файл в бинарник.
Использование App Bundle
После выполнения сборки вам будут доступны два файла в директории dist/
- Бинарный файл
- Приложение OSX App Bundle
Скопируйте App Bundle в директорию Applications и запустите его.
Приложение потребует предоставить ей доступ к следующим параметрам
System preferenses -> Security & Privacy -> Input Monitoring System preferenses -> Security & Privacy -> Accessibility
Удостоверьтесь, что приложение его получило.
Заключение
Последнее время я много работаю с английским языком и перепробовал множество вариантов работы с переводчиками. Моим фаворитом был deepl, собственно в нем и была реализована возможность двойным копированием переносить текст из буфера обмена в переводчик, но сам переводчик работал медленно и качеством его перевода я недоволен.
Я позаимствовал эту концепцию и реализовал свой удобный инструмент, может и тебе он окажется полезным 🙂
Привет, Егор! Наткнулся случайно на ваш блог. Очень проблемно найти для Mac OS контекстный переводчик, типа родного встроенного, но без ограничения для сторонних приложений и кол-ву поддерживаемых языков. У вас есть такой готовый?
Здравствуйте, Олег. У меня такого нет 🙂 но посмотрите в сторону Reverso.