Magic Translate vs. Lingui
Lingui adalah pustaka i18n sumber terbuka untuk JavaScript dan React. Seperti Magic Translate, ini memungkinkan Anda menulis kata-kata Anda sendiri di komponen Anda alih-alih kunci. Perbedaannya adalah apa yang terjadi selanjutnya: dengan Lingui, Anda mengekstrak pesan, menerjemahkannya dan mengkompilasinya untuk setiap bahasa. Dengan Magic Translate, terjemahan dibuat untuk Anda.
Sekilas
| Magic Translate | Lingui | |
|---|---|---|
| Bagaimana Anda menulis teks | Kata-kata Anda sendiri, dibungkus dengan <T> | Kata-kata Anda sendiri, dibungkus dengan <Trans> |
| Terjemahan | Terjemahan AI, dibuat secara otomatis | Anda mengekstrak pesan dan menerjemahkannya |
| File pesan | Tidak ada | Satu katalog per bahasa, seperti file PO |
| Bangun langkah-langkah | Tidak ada | Ekstrak dan kompilasi katalog |
| Bahasa baru | Ubah pengaturan language | Terjemahkan setiap pesan ke dalam bahasa baru |
| Plural dan pemformatan | Diterjemahkan sebagai bagian dari kalimat | Pesan ICU dengan aturan jamak per bahasa |
| Harga | Paket gratis, lalu paket bulanan berdasarkan penggunaan | Open source dan gratis |
Bagaimana kode berbeda
Dengan Lingui, teks tetap berada di komponen, tetapi setiap pesan melewati katalog:
import { Trans } from '@lingui/react/macro';const Cart = () => (<h2><Trans>Your shopping cart</Trans></h2>);// Then run `lingui extract`, translate the catalogs for every language,// run `lingui compile` and load the right catalog when the app starts.
Dengan Magic Translate, komponen terlihat serupa, dan terjemahan dihasilkan secara otomatis:
import { T } from '@magic-translate/react';const Cart = () => (<h2><T>Your shopping cart</T></h2>);
Kapan memilih Magic Translate
- Anda suka menulis kata-kata Anda sendiri di komponen Anda, dan Anda tidak ingin memelihara katalog.
- Anda tidak memiliki penerjemah, atau Anda ingin merilis pembaruan tanpa menunggu terjemahan.
- Anda ingin menambahkan bahasa tanpa mengelola proyek terjemahan.
Kapan memilih Lingui
- Semua teks harus diterjemahkan atau ditinjau oleh seseorang.
- Anda memerlukan pesan ICU untuk jamak dan gender yang kompleks.
- Anda menginginkan perpustakaan sumber terbuka gratis tanpa layanan eksternal.
Berpindah dari Lingui ke Magic Translate
Karena kedua pustaka menyimpan teks dalam komponen, migrasi sebagian besar masalah penggantian komponen dan fungsi terjemahan: <Trans> menjadi <T>, dan makro t menjadi useT hook. Anda dapat memigrasikan satu komponen pada satu waktu.
Siap untuk mencobanya? Ikuti panduan memulai untuk menerjemahkan komponen pertama Anda dalam lima menit.