Importante
El proyecto ha migrado bajo el paraguas de KDE y el desarrollo continuará en https://invent.kde.org/office/crow-translate.
Crow Translate es un traductor simple y liviano escrito en C++/Qt que le permite traducir y pronunciar texto usando la API de traducción de Google, Yandex, Bing, LibreTranslate y Lingva. También te puede interesar mi biblioteca QOnlineTranslator utilizada en este proyecto.
Plasma
Plasma Móvil
ventanas 10
Puedes cambiarlos en la configuración. Es posible que algunas secuencias de teclas no estén disponibles debido a limitaciones del sistema operativo.
Wayland no admite el registro de atajos globales, pero puede usar D-Bus para vincular acciones en la configuración del sistema. Para entornos de escritorio que admiten acciones de aplicaciones adicionales (KDE, por ejemplo), las verá predefinidas en la configuración de accesos directos del sistema. También puedes usarlos para sesiones X11, pero debes deshabilitar el registro de accesos directos globales en la configuración de la aplicación para evitar conflictos.
Llave | Descripción |
---|---|
Ctrl + Alt + E | Traducir texto seleccionado |
Ctrl + Alt + S | Habla el texto seleccionado |
Ctrl + Alt + F | Hablar traducción del texto seleccionado |
Ctrl + Alt + G | deja de hablar |
Ctrl + Alt + C | Mostrar ventana principal |
Ctrl + Alt + I | Reconocer texto en el área de la pantalla |
Ctrl + Alt + O | Traducir texto en el área de la pantalla |
Llave | Descripción |
---|---|
Ctrl + Retorno | Traducir |
Ctrl + R | Intercambiar idiomas |
Ctrl + Q | Cerrar ventana |
Ctrl + S | Hablar fuente/pausar el texto hablado |
Ctrl + Mayús + S | Hablar traducción/pausar el texto hablado |
Ctrl + Mayús + C | Copiar traducción al portapapeles |
El programa también tiene una interfaz de consola.
Uso: crow [options] text
Opción | Descripción |
---|---|
-h, --help | Mostrar ayuda |
-v, --version | Mostrar información de la versión |
-c, --codes | Mostrar códigos de idioma |
-s, --source <code> | Especifique el idioma de origen (de forma predeterminada, el motor intentará determinar el idioma por sí solo) |
-t, --translation <code> | Especifique los idiomas de traducción, divididos por '+' (de forma predeterminada, se utiliza el idioma del sistema) |
-l, --locale <code> | Especifique el idioma del traductor (de forma predeterminada, se utiliza el idioma del sistema) |
-e, --engine <engine> | Especifique el motor de traducción ('google', 'yandex', 'bing', 'libretranslate' o 'lingva'), Google se utiliza de forma predeterminada |
-p, --speak-translation | Habla la traducción |
-u, --speak-source | Habla la fuente |
-f, --file | Leer texto fuente de archivos. Los argumentos se interpretarán como rutas de archivo. |
-i, --stdin | Agregar datos estándar al texto fuente |
-a, --audio-only | Imprima texto solo para hablar cuando use --speak-translation o --speak-source |
-b, --brief | Imprimir solo traducciones |
-j, --json | Salida de impresión formateada como JSON |
Nota: Si no pasa argumentos de inicio al programa, se inicia la GUI.
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();
Por ejemplo, puedes mostrar la ventana principal usando dbus-send
:
dbus-send --type=method_call --dest=io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow io.crow_translate.CrowTranslate.MainWindow.open
O vía 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 no proporciona API para atajos globales y debes registrarlos tú mismo.
KDE tiene una función conveniente para definir accesos directos en archivos .desktop e importarlos en la configuración. Estos atajos ya están habilitados y deberían funcionar de forma predeterminada.
Para GNOME, debe configurar manualmente los comandos D-Bus como accesos directos globales. Por ejemplo, para traducir el texto seleccionado utilice lo siguiente:
qdbus io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow translateSelection
Puede configurar una tecla de acceso rápido para este comando en la configuración del sistema GNOME.
Este proyecto utiliza las siguientes bibliotecas externas, que se incluyen como submódulos de git:
El tema de íconos fluidos se incluye para proporcionar íconos en Windows e íconos alternativos en Linux.
Los iconos de banderas circulares se utilizan para las banderas.
Las descargas están disponibles en la página de Lanzamientos. Consulte también el sitio web para conocer otros métodos de instalación.
Nota: En Linux, para que la aplicación parezca nativa en un entorno de escritorio que no sea KDE, debe configurar el estilo de las aplicaciones Qt. Esto se puede hacer usando qt5ct o adwaita-qt5 o qtstyleplugins. Consulte la guía de instalación adecuada para su distribución.
Nota: Windows requiere Microsoft Visual C++ Redistributable 2019 para funcionar.
Puedes construir Crow Translate usando los siguientes comandos:
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
Luego obtendrás un binario llamado crow
.
CMake puede crear tipos de paquetes específicos automáticamente.
Si usa el generador Makefile, Ninja o Xcode, puede usar el destino del paquete:
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
O puede utilizar la utilidad CPack para cualquier generador:
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
En Windows necesita VCPKG para agrupar todas las DLL necesarias.
WITH_PORTABLE_MODE
: habilita la funcionalidad portátil. Si crea un archivo llamado settings.ini
en la carpeta de la aplicación, Crow almacenará la configuración en él. También agrega la opción “Modo portátil” a la configuración de la aplicación, que hace lo mismo.WITH_KWAYLAND
: busque y utilice la biblioteca Kwayland para una mejor integración de Wayland. Los parámetros de compilación se pasan en la etapa de configuración: cmake -D WITH_PORTABLE_MODE ..
...
Para ayudar con la localización, puede usar Crowdin o traducir archivos en data/translations
con Qt Linguist directamente. Para agregar un nuevo idioma, escríbame a la página de Crowdin o copie data/translations/crow-translate.ts
a data/translations/crow-translate_<ISO 639-1 language code>_<ISO 3166-1 country code>.ts
, traducirlo y enviar una solicitud de extracción.