You can change them in the settings. Some key sequences may not be available due to OS limitations.

Wayland does not support global shortcuts registration, but you can use D-Bus to bind actions in the system settings. For desktop environments that support additional applications actions (KDE, for example) you will see them predefined in the system shortcut settings. You can also use them for X11 sessions, but you need to disable global shortcuts registration in the application settings to avoid conflicts.


Key Description
Ctrl + Alt + E Translate selected text
Ctrl + Alt + S Speak selected text
Ctrl + Alt + F Speak translation of selected text
Ctrl + Alt + D Speak / pause speaking
Ctrl + Alt + G Stop speaking
Ctrl + Alt + C Show main window
Ctrl + Alt + I Recognize text in screen area
Ctrl + Alt + O Translate text in screen area

In main window

Key Description
Ctrl + Return Translate
Ctrl + R Swap languages
Ctrl + Q Close window
Ctrl + S Speak source / pause text speaking
Ctrl + Shift + S Speak translation / pause text speaking
Ctrl + Shift + C Copy translation to clipboard


├── /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;
    ├── method void io.crow_translate.CrowTranslate.MainWindow.copyTranslatedSelection();
    ├── method void io.crow_translate.CrowTranslate.MainWindow.recognizeScreenArea();
    ├── method void io.crow_translate.CrowTranslate.MainWindow.translateScreenArea();
    |   # 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();

For example, you can show main window using dbus-send:

dbus-send --type=method_call --dest=io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow

Or via qdbus:

qdbus io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow
# or shorter
qdbus io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow open