Format berkas lokalisasi

Weblate mendukung beragam format terjemahan. Setiap format sedikit berbeda dan menyediakan serangkaian kemampuan yang berbeda.

Petunjuk

When choosing a file format for your application, it's better to stick to some well-established format in the toolkit/platform you use. This way your translators can additionally use whatever tools they are used to, and will more likely contribute to your project.

Deteksi otomatis

Weblate mencoba mendeteksi format berkas selama Menambahkan proyek dan komponen terjemahan. Deteksi ini mungkin salah untuk varian berbeda dari format serialisasi yang sama (JSON, YAML, properti) atau pengodean berkas, jadi silakan verifikasikan bahwa Format berkas sudah benar sebelum membuat komponen.

Kemampuan jenis terjemahan

Please refer to the documentation page of each individual file format for information about which features are supported in that format.

Format dwibahasa dan ekabahasa

Format ekabahasa dan dwibahasa didukung. Format dwibahasa menyimpan dua bahasa dalam satu berkas—sumber dan terjemahan (contoh umumnya adalah GNU gettext PO (Objek Portabel), XLIFF 1.1 dan 1.2, atau String Apple iOS). Di sisi lain, format ekabahasa mengidentifikasikan string berdasarkan ID, dan setiap berkas bahasa hanya berisi pemetaannya ke bahasa tertentu (biasanya Sumber daya string Android). Beberapa format berkas digunakan dalam kedua varian, lihat deskripsi terperinci di bawah.

Agar berkas ekabahasa dapat digunakan dengan benar, Weblate memerlukan akses ke berkas yang berisi daftar lengkap string yang akan diterjemahkan dengan sumbernya—berkas ini disebut Berkas bahasa dasar ekabahasa dalam Weblate, meskipun penamaannya mungkin berbeda tergantung paradigma Anda.

Selain itu alur kerja ini dapat diluaskan dengan memanfaatkan Berkas bahasa intermediasi untuk menyertakan string yang disediakan oleh pengembang, tetapi tidak untuk digunakan sebagaimana adanya dalam string final.

Status string

Banyak format berkas hanya membedakan string "Belum Diterjemahkan" dan "Diterjemahkan". Beberapa format memungkinkan penyimpanan informasi status yang lebih mendalam, seperti "Perlu disunting" atau "Disetujui".

Deskripsi string sumber

Deskripsi string sumber dapat digunakan untuk meneruskan info tambahan tentang string yang akan diterjemahkan.

Beberapa format memiliki dukungan bawaan untuk memberikan informasi tambahan kepada penerjemah (misalnya XLIFF 1.1 dan 1.2, GNU gettext PO (Objek Portabel), WebExtension JSON, Berkas CSV, Excel Open XML, Qt Linguist .ts, Berkas JSON go-i18n, Berkas JSON gotext, Berkas ARB, Berkas sumber daya .NET (RESX, RESW)). Banyak format lain yang mengekstrak komentar terdekat sebagai deskripsi string sumber.

Penjelasan

Penjelasan pada string dapat disimpan dan diurai dari beberapa format berkas.

Saat ini hanya didukung di Format TermBase eXchange.

Lokasi string sumber

Lokasi string dalam kode sumber dapat membantu penerjemah yang mahir memahami bagaimana string tersebut digunakan.

Informasi ini biasanya tersedia dalam format dwibahasa di mana string diekstrak dari kode sumber menggunakan alat. Misalnya GNU gettext PO (Objek Portabel) dan Qt Linguist .ts.

Penanda terjemahan

Penanda terjemahan mengizinkan penyesuaian perilaku Weblate. Beberapa format mendukung pendefinisian tanda tersebut dalam berkas terjemahan (Anda selalu dapat mendefinisikannya di antarmuka Weblate, lihat Menyesuaikan perilaku menggunakan penanda).

Fitur ini dimodelkan pada penanda di GNU gettext PO (Objek Portabel).

Additionally, XML-based formats that support flags extract them from the non-standard attribute weblate-flags. The max-length:N flag is also supported through the maxwidth attribute as defined in the XLIFF standard, see Menspesifikasikan penanda terjemahan.

Konteks

Konteks digunakan untuk membedakan string identik dalam format dwibahasa yang digunakan dalam cakupan berbeda (misalnya Matahari dapat digunakan sebagai nama singkat hari "Minggu" atau sebagai nama bintang terdekat kita).

Untuk format ekabahasa, pengenal string (sering disebut kunci) dapat melayani tujuan yang sama dan konteks tambahan tidak diperlukan.

String yang dijamak

Bentuk jamak diperlukan untuk melokalisasikan string dengan jumlah variabel dengan tepat. Aturannya bergantung pada bahasa target dan banyak format mengikuti spesifikasi CLDR untuk itu.

Plural support in the supported features table means Weblate can represent plural strings for the format. Some formats need existing plural metadata or a specific variant, and cannot create new plural strings unless that is natively supported by the format.

Petunjuk

Menjamakkan string juga memerlukan dukungan yang tepat dari kerangka kerja aplikasi. Pilih format asli platform Anda seperti GNU gettext PO (Objek Portabel), Sumber daya string Android, atau Format Stringsdict.

String hanya baca

String hanya baca dari berkas terjemahan akan disertakan, tetapi tidak dapat disunting di Weblate. Fitur ini didukung secara asli oleh beberapa format (XLIFF 1.1 dan 1.2 dan Sumber daya string Android), tetapi dapat diemulasikan di format lain dengan menambahkan tanda read-only, lihat Menyesuaikan perilaku menggunakan penanda.

Removing obsolete strings

Some file formats can store obsolete strings. Weblate can remove these obsolete strings from formats that support this operation.

Mendukung format lain

Most formats supported by translate-toolkit which support serializing can be easily supported, but they did not (yet) receive any testing. In most cases, an additional thin layer is needed in Weblate to hide differences in behavior of different storages.

Untuk menambahkan dukungan untuk format baru, pendekatan yang disukai adalah terlebih dahulu mengimplementasikan dukungan untuk format tersebut dalam translate-toolkit.

Parameter format berkas

Parameter format berkas menyediakan cara untuk mengkonfigurasikan pengaturan terkait format berkas. Parameter ini dikonfigurasikan di tingkat komponen dan memungkinkan Anda menyesuaikan cara penguraian dan serialisasi berkas ditangani.

Daftar parameter format berkas

Nama parameter

Format berkas

Label

Teks bantuan

csv_encoding

  • csv

  • csv-multi

Pengenkodean berkas

Pengenkodean yang digunakan untuk berkas CSV

Pilihan yang tersedia:

auto

Deteksi otomatis

utf-8

UTF-8

csv_escape_formulas

  • csv

  • csv-multi

  • csv-simple

Escape formula spreadsheet

Tambahkan apostrof pada nilai yang tampak seperti formula spreadsheet saat menyimpan file CSV.

csv_simple_encoding

  • csv-simple

Pengenkodean berkas

Pengenkodean yang digunakan untuk berkas CSV sederhana

Pilihan yang tersedia:

auto

Deteksi otomatis

utf-8

UTF-8

iso-8859-1

ISO-8859-1

dos_eol

All file formats

Akhiran baris DOS

Gunakan baris beralih DOS (rn) alih‑alih baris beralih UNIX (n) dalam string.

flatxml_key_name

  • flatxml

Nama kunci FlatXML

flatxml_root_name

  • flatxml

Nama Root FlatXML

flatxml_value_name

  • flatxml

Nama nilai FlatXML

gwt_encoding

  • gwt

Pengenkodean berkas

Pengenkodean yang digunakan untuk berkas Properti GWT

Pilihan yang tersedia:

utf-8

UTF-8

iso-8859-1

ISO-8859-1

json_indent

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Indentasi JSON

json_indent_style

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Gaya indentasi JSON

Pilihan yang tersedia:

spaces

Spasi

tabs

Tab

json_sort_keys

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Sortir kunci JSON

json_use_compact_separators

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Hindari spasi setelah pemisah

line_max_length

  • markdown

  • mdx

Panjang maksimum baris

Jumlah maksimum karakter untuk setiap baris dalam berkas keluaran.

md_extract_code_blocks

  • markdown

  • mdx

Ekstrak blok kode

Apakah akan mengekstrak konten yang dapat diterjemahkan dari blok kode dalam berkas Markdown dan MDX.

md_extract_frontmatter

  • markdown

  • mdx

Ekstrak front matter

Apakah akan mengekstrak dan menerjemahkan blok YAML front matter dalam berkas Markdown dan MDX.

md_frontmatter_translate_values

  • markdown

  • mdx

Terjemahkan nilai front matter

Urai YAML front matter dan terjemahkan hanya nilai string skalar. Kunci, struktur, komentar, dan pemformatan dipertahankan jika memungkinkan.

md_no_placeholders

  • markdown

  • mdx

Nonaktifkan pengganti

Menonaktifkan deteksi dan pemrosesan pengganti dalam berkas Markdown dan MDX.

merge_duplicates

  • markdown

  • mdx

  • html

  • txt

  • dokuwiki

  • mediawiki

  • asciidoc

Hapus ganda string yang identik

Menggabungkan string sumber yang identik ke dalam satu unit terjemahan. Mencegah hilangnya terjemahan selama struktur ulang berkas atau penataan ulang tabel dengan menghapus konteks yang bergantung pada posisi.

po_fuzzy_matching

  • po

Gunakan pencocokan fuzzy

po_keep_previous

  • po

Pertahankan msgids sebelumnya dari string yang diterjemahkan

Mengontrol komentar msgid sebelumnya untuk string fuzzy.

po_line_wrap

  • po

  • po-mono

Pemecahan baris panjang

Secara bawaan, gettext membungkus baris dengan 77 karakter dan pada baris baru. Dengan parameter --no-wrap, pembungkusan hanya dilakukan pada baris baru.

Pilihan yang tersedia:

77

Pecahkan baris pada 77 karakter dan di baris baru (xgettext bawaan)

65535

Hanya bungkus baris pada baris baru (seperti gettext --no-wrap)

-1

Tanpa pemecahan baris

po_no_location

  • po

Jangan sertakan informasi lokasi dalam berkas

po_remove_obsolete

  • po

  • po-mono

Hapus string usang

Hapus entri usang dari file PO saat menyimpan perubahan terjemahan atau saat memperbarui dari file POT.

po_report_msgid_bugs_to

  • po

  • po-mono

Laporkan awakutu msgid ke

Memungkinkan Weblate memperbarui kepala "Report-Msgid-Bugs-To" jika alamat pelaporan awakutu string sumber telah diatur.

po_set_language_team

  • po

  • po-mono

Perbarui kepala tim bahasa

Memungkinkan Weblate memperbarui kepala berkas "Language-Team".

po_set_last_translator

  • po

  • po-mono

Perbarui header penerjemah terakhir

Memungkinkan Weblate memperbarui kepala berkas "Last-Translator".

po_set_x_generator

  • po

  • po-mono

Perbarui kepala X-Generator

Memungkinkan Weblate memperbarui kepala berkas "X-Generator".

properties_encoding

  • properties

Pengenkodean berkas

Pengenkodean yang digunakan untuk berkas Properti Java

Pilihan yang tersedia:

iso-8859-1

ISO-8859-1

utf-8

UTF-8

utf-16

UTF-16

strings_encoding

  • strings

Pengenkodean berkas

Pengenkodean yang digunakan untuk berkas string iOS

Pilihan yang tersedia:

utf-8

UTF-8

utf-16

UTF-16

xml_closing_tags

  • ts

  • plainxliff

  • xliff

  • xliff2

  • xliff2-placeables

  • poxliff

  • apple-xliff

  • resx

  • aresource

  • moko-resource

  • cmp-resource

  • tbx

Sertakan tag penutup untuk tag XML yang kosong

yaml_indent

  • yaml

  • ruby-yaml

Indentasi YAML

yaml_line_break

  • yaml

  • ruby-yaml

Jeda baris

Pilihan yang tersedia:

dos

DOS (\r\n)

unix

UNIX (\n)

mac

MAC (\r)

yaml_line_wrap

  • yaml

  • ruby-yaml

Pemecahan baris panjang

Pilihan yang tersedia:

80

Pecahkan baris pada 80 karakter

100

Pecahkan baris pada 100 karakter

120

Pecahkan baris pada 120 karakter

180

Pecahkan baris pada 180 karakter

65535

Tanpa pemecahan baris