Important
Le projet a migré sous l'égide de KDE et le développement se poursuivra sur https://invent.kde.org/office/crow-translate.
Crow Translate est un traducteur simple et léger écrit en C++/Qt qui vous permet de traduire et de prononcer du texte à l'aide des API de traduction de Google, Yandex, Bing, LibreTranslate et Lingva. Vous pourriez également être intéressé par ma bibliothèque QOnlineTranslator utilisée dans ce projet.
Plasma
Mobile à plasma
Windows 10
Vous pouvez les modifier dans les paramètres. Certaines séquences de touches peuvent ne pas être disponibles en raison des limitations du système d'exploitation.
Wayland ne prend pas en charge l'enregistrement des raccourcis globaux, mais vous pouvez utiliser D-Bus pour lier des actions dans les paramètres système. Pour les environnements de bureau prenant en charge les actions d'applications supplémentaires (KDE, par exemple), vous les verrez prédéfinies dans les paramètres de raccourci système. Vous pouvez également les utiliser pour les sessions X11, mais vous devez désactiver l'enregistrement des raccourcis globaux dans les paramètres de l'application pour éviter les conflits.
Clé | Description |
---|---|
Ctrl + Alt + E | Traduire le texte sélectionné |
Ctrl + Alt + S | Énoncer le texte sélectionné |
Ctrl + Alt + F | Parler la traduction du texte sélectionné |
Ctrl + Alt + G | Arrête de parler |
Ctrl + Alt + C | Afficher la fenêtre principale |
Ctrl + Alt + I | Reconnaître le texte dans la zone de l'écran |
Ctrl + Alt + O | Traduire le texte dans la zone de l'écran |
Clé | Description |
---|---|
Ctrl + Retour | Traduire |
Ctrl + R | Changer de langue |
Ctrl + Q | Fermer la fenêtre |
Ctrl + S | Parler la source / mettre en pause le texte parlant |
Ctrl + Maj + S | Parler la traduction/mettre en pause le texte en parlant |
Ctrl + Maj + C | Copier la traduction dans le presse-papiers |
Le programme dispose également d'une interface console.
Utilisation : crow [options] text
Option | Description |
---|---|
-h, --help | Afficher l'aide |
-v, --version | Afficher les informations sur la version |
-c, --codes | Afficher les codes de langue |
-s, --source | Précisez la langue source (par défaut, le moteur tentera de déterminer lui-même la langue) |
-t, --translation | Spécifiez la ou les langues de traduction, divisées par '+' (par défaut, la langue du système est utilisée) |
-l, --locale | Spécifiez la langue du traducteur (par défaut, la langue du système est utilisée) |
-e, --engine | Précisez le moteur de traduction ("google", "yandex", "bing", "libretranslate" ou "lingva"), Google est utilisé par défaut |
-p, --speak-translation | Parlez la traduction |
-u, --speak-source | Parlez de la source |
-f, --file | Lire le texte source à partir de fichiers. Les arguments seront interprétés comme des chemins de fichiers |
-i, --stdin | Ajouter des données stdin au texte source |
-a, --audio-only | Imprimer le texte uniquement pour parler lors de l'utilisation --speak-translation ou --speak-source |
-b, --brief | Imprimer uniquement les traductions |
-j, --json | Imprimer la sortie au format JSON |
Remarque : Si vous ne transmettez pas d'arguments de démarrage au programme, l'interface graphique démarre.
io.crow_translate.CrowTranslate
├── /io/crow_translate/CrowTranslate/Ocr
| └── method void io.crow_translate.CrowTranslate.Ocr.setParameters(QVariantMap parameters);
└── /io/crow_translate/CrowTranslate/MainWindow
| # Global shortcuts
├── method void io.crow_translate.CrowTranslate.MainWindow.translateSelection();
├── method void io.crow_translate.CrowTranslate.MainWindow.speakSelection();
├── method void io.crow_translate.CrowTranslate.MainWindow.speakTranslatedSelection();
├── method void io.crow_translate.CrowTranslate.MainWindow.playPauseSpeaking();
├── method void io.crow_translate.CrowTranslate.MainWindow.stopSpeaking();
├── method void io.crow_translate.CrowTranslate.MainWindow.open();
├── method void io.crow_translate.CrowTranslate.MainWindow.copyTranslatedSelection();
├── method void io.crow_translate.CrowTranslate.MainWindow.recognizeScreenArea();
├── method void io.crow_translate.CrowTranslate.MainWindow.translateScreenArea();
├── method void io.crow_translate.CrowTranslate.MainWindow.delayedRecognizeScreenArea();
├── method void io.crow_translate.CrowTranslate.MainWindow.delayedTranslateScreenArea();
| # Main window shortcuts
├── method void io.crow_translate.CrowTranslate.MainWindow.clearText();
├── method void io.crow_translate.CrowTranslate.MainWindow.cancelOperation();
├── method void io.crow_translate.CrowTranslate.MainWindow.swapLanguages();
├── method void io.crow_translate.CrowTranslate.MainWindow.openSettings();
├── method void io.crow_translate.CrowTranslate.MainWindow.setAutoTranslateEnabled(bool enabled);
├── method void io.crow_translate.CrowTranslate.MainWindow.copySourceText();
├── method void io.crow_translate.CrowTranslate.MainWindow.copyTranslation();
├── method void io.crow_translate.CrowTranslate.MainWindow.copyAllTranslationInfo();
└── method void io.crow_translate.CrowTranslate.MainWindow.quit();
Par exemple, vous pouvez afficher la fenêtre principale en utilisant dbus-send
:
dbus-send --type=method_call --dest=io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow io.crow_translate.CrowTranslate.MainWindow.open
Ou via qdbus
:
qdbus io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow io.crow_translate.CrowTranslate.MainWindow.open
# or shorter
qdbus io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow open
Wayland ne fournit pas d'API pour les raccourcis globaux et vous devez les enregistrer vous-même.
KDE dispose d'une fonctionnalité pratique pour définir des raccourcis dans le fichier .desktop et les importer dans les paramètres. Ces raccourcis sont déjà activés et devraient fonctionner par défaut.
Pour GNOME, vous devez définir manuellement les commandes D-Bus comme raccourcis globaux. Par exemple, pour traduire le texte sélectionné, utilisez ce qui suit :
qdbus io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow translateSelection
Vous pouvez définir un raccourci clavier pour cette commande dans les paramètres système GNOME.
Ce projet utilise les bibliothèques externes suivantes, incluses en tant que sous-modules git :
Le thème d'icônes Fluent est fourni pour fournir des icônes sous Windows et des icônes de secours sous Linux.
les icônes de drapeaux circulaires sont utilisées pour les drapeaux.
Les téléchargements sont disponibles sur la page Versions. Consultez également le site Web pour d’autres méthodes d’installation.
Remarque : sous Linux, pour que l'application ait un aspect natif sur un environnement de bureau non KDE, vous devez configurer le style des applications Qt. Cela peut être fait en utilisant qt5ct ou adwaita-qt5 ou qtstyleplugins. Veuillez consulter le guide d'installation approprié pour votre distribution.
Remarque : Windows nécessite Microsoft Visual C++ Redistributable 2019 pour fonctionner.
Vous pouvez créer Crow Translate en utilisant les commandes suivantes :
mkdir build
cd build
cmake .. # Or `cmake -D CMAKE_BUILD_TYPE=Release ..` for single-configuration generators such as Ninja or GNU Make
cmake --build . # Or `cmake --build . --config Release` for multi-config generators such as Visual Studio Generators or Xcode
Vous obtiendrez alors un binaire nommé crow
.
CMake peut créer automatiquement les types de packages spécifiés.
Si vous utilisez le générateur Makefile, Ninja ou Xcode, vous pouvez utiliser la cible du package :
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CPACK_GENERATOR=DEB .. # You can specify several types of packages separated by semicolons in double quotes, for example: `CPACK_GENERATOR="DEB;ZIP;NSIS"`
cmake --build . --target package
Ou vous pouvez utiliser l'utilitaire CPack pour n'importe quel générateur :
mkdir build
cd build
cmake .. # Or `cmake -D CMAKE_BUILD_TYPE=Release ..` for single-configuration generators such as Ninja or GNU Make
cpack -G DEB # Or `cpack -G DEB -C Release` for multi-config generators such as Visual Studio Generators or Xcode
Sous Windows, vous avez besoin de VCPKG pour regrouper toutes les DLL nécessaires.
WITH_PORTABLE_MODE
- Activer la fonctionnalité portable. Si vous créez un fichier nommé settings.ini
dans le dossier de l'application, Crow y stockera la configuration. Il ajoute également l'option « Mode portable » aux paramètres de l'application, qui fait de même.WITH_KWAYLAND
- Recherchez et utilisez la bibliothèque KWayland pour une meilleure intégration de Wayland. Les paramètres de construction sont transmis au stade de la configuration : cmake -D WITH_PORTABLE_MODE ..
.
Pour vous aider avec la localisation, vous pouvez utiliser Crowdin ou traduire des fichiers en data/translations
directement avec Qt Linguist. Pour ajouter une nouvelle langue, écrivez-moi sur la page Crowdin ou copiez data/translations/crow-translate.ts
dans data/translations/crow-translate_
, traduisez-le et envoyez une pull request.