Penting
Proyek ini telah bermigrasi di bawah payung KDE, dan pengembangan akan dilanjutkan di https://invent.kde.org/office/crow-translate.
Crow Translate adalah penerjemah sederhana dan ringan yang ditulis dalam C++ / Qt yang memungkinkan Anda menerjemahkan dan mengucapkan teks menggunakan Google, Yandex, Bing, LibreTranslate, dan Lingva Translate API. Anda mungkin juga tertarik dengan perpustakaan saya QOnlineTranslator yang digunakan dalam proyek ini.
Plasma
Ponsel Plasma
jendela 10
Anda dapat mengubahnya di pengaturan. Beberapa rangkaian kunci mungkin tidak tersedia karena keterbatasan OS.
Wayland tidak mendukung pendaftaran pintasan global, tetapi Anda dapat menggunakan D-Bus untuk mengikat tindakan di pengaturan sistem. Untuk lingkungan desktop yang mendukung tindakan aplikasi tambahan (KDE, misalnya), Anda akan melihatnya sudah ditentukan sebelumnya di pengaturan pintasan sistem. Anda juga dapat menggunakannya untuk sesi X11, tetapi Anda perlu menonaktifkan pendaftaran pintasan global di pengaturan aplikasi untuk menghindari konflik.
Kunci | Keterangan |
---|---|
Ctrl + Alt + E | Terjemahkan teks yang dipilih |
Ctrl + Alt + S | Ucapkan teks yang dipilih |
Ctrl + Alt + F | Ucapkan terjemahan teks yang dipilih |
Ctrl + Alt + G | Berhenti bicara |
Ctrl + Alt + C | Tampilkan jendela utama |
Ctrl + Alt + I | Kenali teks di area layar |
Ctrl + Alt + O | Terjemahkan teks di area layar |
Kunci | Keterangan |
---|---|
Ctrl + Kembali | Menerjemahkan |
Ctrl + R | Tukar bahasa |
Ctrl + Q | Tutup jendela |
Ctrl + S | Ucapkan sumber/jeda teks saat berbicara |
Ctrl + Shift + S | Ucapkan terjemahan / jeda teks berbicara |
Ctrl + Shift + C | Salin terjemahan ke papan klip |
Program ini juga memiliki antarmuka konsol.
Penggunaan: crow [options] text
Pilihan | Keterangan |
---|---|
-h, --help | Tampilkan bantuan |
-v, --version | Menampilkan informasi versi |
-c, --codes | Menampilkan kode bahasa |
-s, --source <code> | Tentukan bahasa sumber (secara default, mesin akan mencoba menentukan bahasanya sendiri) |
-t, --translation <code> | Tentukan bahasa terjemahan, dibagi dengan '+' (secara default, bahasa sistem digunakan) |
-l, --locale <code> | Tentukan bahasa penerjemah (secara default, bahasa sistem digunakan) |
-e, --engine <engine> | Tentukan mesin penerjemah ('google', 'yandex', 'bing', 'libretranslate' atau 'lingva'), Google digunakan secara default |
-p, --speak-translation | Ucapkan terjemahannya |
-u, --speak-source | Ucapkan sumbernya |
-f, --file | Membaca teks sumber dari file. Argumen akan ditafsirkan sebagai jalur file |
-i, --stdin | Tambahkan data stdin ke teks sumber |
-a, --audio-only | Cetak teks hanya untuk berbicara saat menggunakan --speak-translation atau --speak-source |
-b, --brief | Cetak hanya terjemahan |
-j, --json | Hasil cetak diformat sebagai JSON |
Catatan: Jika Anda tidak meneruskan argumen startup ke program, GUI akan dimulai.
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();
Misalnya, Anda dapat menampilkan jendela utama menggunakan dbus-send
:
dbus-send --type=method_call --dest=io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow io.crow_translate.CrowTranslate.MainWindow.open
Atau melalui 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 tidak menyediakan API untuk pintasan global dan Anda harus mendaftarkannya sendiri.
KDE memiliki fitur mudah untuk menentukan pintasan dalam file .desktop dan mengimpornya ke pengaturan. Pintasan ini sudah diaktifkan dan seharusnya berfungsi secara default.
Untuk GNOME Anda perlu mengatur perintah D-Bus secara manual sebagai pintasan global. Misalnya, untuk menerjemahkan teks yang dipilih gunakan yang berikut ini:
qdbus io.crow_translate.CrowTranslate /io/crow_translate/CrowTranslate/MainWindow translateSelection
Anda dapat mengatur hotkey untuk perintah ini di pengaturan sistem GNOME.
Proyek ini menggunakan perpustakaan eksternal berikut, yang disertakan sebagai submodul git:
Tema ikon lancar dibundel untuk menyediakan ikon di Windows dan ikon cadangan di Linux.
ikon lingkaran-bendera digunakan untuk bendera.
Unduhan tersedia di halaman Rilis. Periksa juga situs web untuk metode instalasi lainnya.
Catatan: Di Linux untuk membuat aplikasi terlihat asli di lingkungan desktop non-KDE, Anda perlu mengonfigurasi gaya aplikasi Qt. Hal ini dapat dilakukan dengan menggunakan qt5ct atau adwaita-qt5 atau qtstyleplugins. Silakan periksa panduan instalasi yang sesuai untuk distribusi Anda.
Catatan: Windows memerlukan Microsoft Visual C++ Redistributable 2019 agar dapat berfungsi.
Anda dapat membuat Crow Translate dengan menggunakan perintah berikut:
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
Anda kemudian akan mendapatkan biner bernama crow
.
CMake dapat membuat jenis paket tertentu secara otomatis.
Jika Anda menggunakan generator Makefile, Ninja, atau Xcode, Anda dapat menggunakan target paket:
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
Atau Anda dapat menggunakan utilitas CPack untuk generator apa pun:
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
Di Windows Anda memerlukan VCPKG untuk menggabungkan semua DLL yang diperlukan.
WITH_PORTABLE_MODE
- Aktifkan fungsionalitas portabel. Jika Anda membuat file bernama settings.ini
di folder aplikasi dan Crow akan menyimpan konfigurasi di dalamnya. Itu juga menambahkan opsi “Mode Portabel” ke pengaturan aplikasi, yang melakukan hal yang sama.WITH_KWAYLAND
- Temukan dan gunakan perpustakaan KWayland untuk integrasi Wayland yang lebih baik. Parameter build diteruskan pada tahap konfigurasi: cmake -D WITH_PORTABLE_MODE ..
.
Untuk membantu pelokalan Anda dapat menggunakan Crowdin atau menerjemahkan file dalam data/translations
dengan Qt Linguist secara langsung. Untuk menambahkan bahasa baru, tulis saya di halaman Crowdin atau salin data/translations/crow-translate.ts
ke data/translations/crow-translate_<ISO 639-1 language code>_<ISO 3166-1 country code>.ts
, terjemahkan dan kirim permintaan tarik.