Memulai dengan internasionalisasi

Punya proyek dan ingin menerjemahkannya ke beberapa bahasa? Panduan ini akan membantu Anda. Beberapa situasi umum akan ditampilkan, tetapi sebagian besar contoh bersifat umum dan dapat diterapkan ke skenario lain juga.

Sebelum menerjemahkan perangkat lunak apa pun, Anda harus menyadari bahwa bahasa di seluruh dunia sangat berbeda dan Anda tidak boleh berasumsi berdasarkan pengalaman Anda. Untuk sebagian besar bahasa, akan terlihat aneh jika Anda mencoba menggabungkan kalimat dari segmen yang telah diterjemahkan. Anda juga harus menangani bentuk jamak dengan benar karena banyak bahasa memiliki aturan yang rumit untuk itu dan kerangka kerja internasionalisasi yang Anda gunakan seharusnya mendukung ini.

Terakhir, terkadang mungkin perlu menambahkan konteks pada string yang diterjemahkan. Bayangkan seorang penerjemah mendapatkan string Sun untuk diterjemahkan. Tanpa konteks, kebanyakan orang akan menerjemahkannya sebagai bintang terdekat kita, tetapi mungkin sebenarnya digunakan sebagai singkatan untuk hari Minggu.

Memilih kerangka kerja internasionalisasi

Pilih apa pun yang standar di platform Anda, dan cobalah untuk menghindari pengulangan dengan membuat kerangka kerja Anda sendiri untuk menangani lokalisasi. Weblate mendukung sebagian besar kerangka kerja yang umum digunakan, lihat Format berkas lokalisasi untuk informasi lebih lanjut (terutama Kemampuan jenis terjemahan).

Rekomendasi pribadi kami untuk beberapa platform terdapat pada tabel berikut. Tabel ini berdasarkan pengalaman kami, tetapi tidak dapat mencakup semua kasus penggunaan, jadi selalu pertimbangkan lingkungan Anda saat memilih.

Alur kerja yang lebih rinci untuk beberapa format dijelaskan dalam bab berikut:

Mendidik pengembang untuk internasionalisasi yang tepat

Internasionalisasi perangkat lunak bukan hanya tentang kemampuan menerjemahkan string tetapi tentang membuat seluruh perangkat lunak terlihat asli bagi pengguna dari negara lain. Ini juga mencakup hal seperti format tanggal atau angka, tampilan mata uang, atau memasukkan teks ke arah yang benar. Sebagian besar kerangka perangkat lunak memiliki dukungan yang baik untuk ini, jadi harap ikuti instruksi mereka untuk semua area ini.

Terjemahan string mungkin juga bukan tugas yang mudah. Ini terutama berlaku untuk string pendek seperti keterangan atau label tombol. Bahasa yang berbeda memiliki aturan yang berbeda, dan tidak masuk akal untuk mengharapkan bahwa string yang sama akan selalu diterjemahkan dengan cara yang sama. Dalam banyak situasi, cara menerjemahkannya mungkin tidak jelas, dan bahkan sulit membedakan apakah sebuah kata merupakan kata kerja atau kata benda.

Semua pengembang harus memahami ini dan secara unik mengidentifikasikan string yang digunakan dalam cakupan berbeda. Misalnya, None yang berarti "tidak ada pengguna" mungkin diterjemahkan berbeda dari None yang berarti "tidak ada item". Gunakan kunci atau konteks yang berbeda untuk membedakan istilah ini bagi para penerjemah. Anda dapat memberikan konteks tambahan di Weblate, seperti Screenshots and visual context atau Penjelasan.

The technical side is only part of the work. Translators also notice the project workflow around strings, releases, and communication. A few practices make collaboration much easier:

  • Respond to translator questions and comments, and make sure the advertised contact channel is actually monitored.

  • Avoid unnecessary churn in source strings. Rewording or replacing existing strings without a user-visible reason creates avoidable translation work.

  • Add enough context for translators to understand short or ambiguous strings. Avoid concatenating sentences from fragments, use placeholders that can be reordered, and rely on built-in plural handling.

  • Ship translations regularly so completed work does not stay unused in Weblate for long periods.

  • Communicate workflow or policy changes, and keep contribution requirements realistic for smaller language teams.

  • If a project is no longer maintained, reflect that in the translation workflow instead of leaving components open indefinitely.

Weblate can help with some of these issues. In particular, regular automatic commits from Weblate make translation progress visible in the source code history and reduce the risk that finished work is forgotten before a release. See Lokalisasi berkelanjutan for automation options.

Lihat juga