Pemeriksaan dan perbaikan

Pemeriksaan kualitas membantu mendeteksi galat umum penerjemah, memastikan terjemahan dalam kondisi baik. Pemeriksaan ini dapat diabaikan jika terjadi kesalahan positif.

Setelah mengirimkan terjemahan dengan pemeriksaan gagal, ini segera ditunjukkan kepada pengguna:

../_images/checks.webp

Perbaikan otomatis

Selain Pemeriksaan kualitas, Weblate dapat memperbaiki beberapa galat umum dalam string terjemahan secara otomatis. Gunakan dengan hati-hati agar tidak menambah galat.

Lihat juga

AUTOFIX_LIST

Pengganti elipsis di belakang

Nama kelas:

weblate.trans.autofixes.chars.ReplaceTrailingDotsWithEllipsis

Ganti titik di akhir (...) dengan elipsis () agar konsisten dengan string sumber.

Penghapusan spasi lebar-nol

Nama kelas:

weblate.trans.autofixes.chars.RemoveZeroSpace

Spasi dengan lebar nol biasanya tidak diinginkan dalam terjemahan. Perbaikan ini akan menghapusnya kecuali jika spasi tersebut juga ada dalam string sumber.

Penghapusan karakter kontrol

Nama kelas:

weblate.trans.autofixes.chars.RemoveControlChars

Menghapus karakter kontrol jika sumber tidak mengandung karakter apa pun.

Dewanagari danda

Nama kelas:

weblate.trans.autofixes.chars.DevanagariDanda

Mengganti titik dalam kalimat dalam Bangla dengan karakter danda Devanagari ().

Spasi tanda baca

Nama kelas:

weblate.trans.autofixes.chars.PunctuationSpacing

Added in version 5.3.

Memastikan Prancis menggunakan spasi tanda baca yang benar.

Perbaikan ini dapat dinonaktifkan melalui penanda ignore-punctuation-spacing (yang juga menonaktifkan Spasi tanda baca).

Pembersihan HTML yang tidak aman

Nama kelas:

weblate.trans.autofixes.html.BleachHTML

Menghapus markah HTML yang tidak aman dari string yang ditandai sebagai safe-html.

Lihat juga

HTML Tidak Aman

Pemecah spasi awal dan akhir

Nama kelas:

weblate.trans.autofixes.whitespace.SameBookendingWhitespace

Membuat spasi awal dan akhir konsisten dengan string sumber. Perilaku ini dapat diatur dengan baik menggunakan penanda ignore-begin-space dan ignore-end-space untuk melewati pemrosesan bagian string.

Pemeriksaan kualitas

Weblate menggunakan berbagai pemeriksaan kualitas pada string. Bagian berikut menjelaskan semuanya secara lebih rinci. Terdapat juga pemeriksaan khusus bahasa. Silakan laporkan kerusakan jika terdapat galat yang dilaporkan.

Pemeriksaan terjemahan

Dieksekusi pada setiap perubahan terjemahan, membantu penerjemah mempertahankan terjemahan berkualitas baik.

Markah BBCode

Berubah pada versi 5.10: Pemeriksaan ini tidak lagi bergantung pada deteksi otomatis yang tidak dapat diandalkan, sekarang perlu dinyalakan menggunakan penanda bbcode-text.

Ringkasan:

BBCode dalam terjemahan tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.BBCodeCheck

Periksa pengenal:

bbcode

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

bbcode-text

Tandai untuk mengabaikan:

ignore-bbcode

BBCode merepresentsikan markah sederhana, seperti misalnya menyorot bagian penting suatu pesan dalam huruf tebal, atau miring.

Pemeriksaan ini memastikan bahwa mereka juga ditemukan dalam terjemahan.

Catatan

Metode untuk mendeteksi BBCode saat ini cukup sederhana sehingga pemeriksaan ini mungkin menghasilkan positif palsu.

Karakter di sekitar tag XML

Ringkasan:

Karakter yang mengelilingi tag XML dalam terjemahan tidak sejajar dengan sumber aslinya.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.XMLCharsAroundTagsCheck

Periksa pengenal:

xml-chars-around-tags

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-xml-chars-around-tags

Memeriksa apakah karakter di sekitar tag XML konsisten antara sumber dan terjemahan. Memastikan huruf tidak diganti dengan yang bukan huruf, dan sebaliknya.

Catatan

Pemeriksaan ini dinonaktifkan oleh penanda safe-html karena pembersihan HTML yang dilakukannya dapat menghasilkan markah HTML yang bukan XML yang valid.

Kata ganda yang berulang

Added in version 4.1.

Ringkasan:

Teks berisi kata yang sama dua kali berturut-turut.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.duplicate.DuplicateCheck

Periksa pengenal:

duplicate

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-duplicate

Memeriksa tidak adanya kata duplikat yang berurutan dalam terjemahan. Ini biasanya menunjukkan adanya kesalahan dalam terjemahan.

Petunjuk

Pemeriksaan ini mencakup aturan khusus bahasa untuk menghindari positif palsu. Jika hasilnya salah, beri tahu kami. Lihat Melaporkan isu di Weblate.

Tidak mengikuti glosarium

Added in version 4.5.

Ringkasan:

Terjemahan tidak mengikuti istilah yang didefinisikan dalam glosarium.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.glossary.GlossaryCheck

Periksa pengenal:

check_glossary

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

check-glossary

Tandai untuk mengabaikan:

ignore-check-glossary

Pemeriksaan ini harus diaktifkan menggunakan penanda check-glossary (lihat Menyesuaikan perilaku menggunakan penanda). Silakan pertimbangkan hal berikut sebelum mengaktifkannya:

  • Ia melakukan pencocokan string yang tepat, glosarium diharapkan berisi istilah dalam semua varian.

  • Memeriksa setiap string terhadap glosarium mahal, dan akan memperlambat operasi apa pun di Weblate yang melibatkan pemeriksaan seperti mengimpor string atau menerjemahkan.

  • Ia juga memanfaatkan istilah glosarium yang tidak dapat diterjemahkan dalam Terjemahan tidak berubah.

Spasi ganda

Ringkasan:

Terjemahan berisi spasi ganda.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.DoubleSpaceCheck

Periksa pengenal:

double_space

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-double-space

Memeriksa keberadaan spasi ganda saat terjemahan untuk menghindari positif palsu pada pemeriksaan terkait spasi lainnya.

Pemeriksaan bernilai salah apabila spasi ganda ditemukan di sumber, artinya spasi ganda tersebut disengaja.

Bagian Fluent

Added in version 5.0.

Ringkasan:

Bagian Fluent harus cocok.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.fluent.parts.FluentPartsCheck

Periksa pengenal:

fluent-parts

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Format Fluent

Tandai untuk mengaktifkan:

fluent-parts

Tandai untuk mengabaikan:

ignore-fluent-parts

Setiap Pesan Fluent dapat memiliki nilai opsional (konten teks utama) dan atribut opsional, yang masing-masing merupakan "bagian" dari Pesan. Di Weblate, semua bagian ini muncul dalam blok yang sama, menggunakan sintaksis mirip Fluent untuk menentukan atributnya. Misalnya:

This is the Message value
.title = This is the title attribute
.alt = This is the alt attribute

Pemeriksaan ini memastikan bahwa Pesan yang diterjemahkan juga memiliki nilai jika Pesan sumber memilikinya, atau tidak memiliki nilai jika Pesan sumber tidak memilikinya. Ini juga memeriksa bahwa atribut yang sama yang digunakan dalam Pesan sumber juga muncul dalam terjemahan, tanpa penambahan.

Catatan

Pemeriksaan ini tidak diterapkan pada Istilah Fluent karena Istilah selalu memiliki nilai, dan atribut Istilah cenderung lokalisasi yang spesifik (digunakan untuk aturan tata bahasa, dll.), dan tidak diharapkan muncul dalam semua terjemahan.

Lihat juga

Atribut Fluent

Referensi Fluent

Added in version 5.0.

Ringkasan:

Referensi Fluent harus cocok.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.fluent.references.FluentReferencesCheck

Periksa pengenal:

fluent-references

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Format Fluent

Tandai untuk mengaktifkan:

fluent-references

Tandai untuk mengabaikan:

ignore-fluent-references

Pesan atau Istilah Fluent dapat merujuk pada Pesan, Istilah, Atribut, atau variabel lain. Misalnya:

Here is a { message }, a { message.attribute } a { -term } and a { $variable }.
Within a function { NUMBER($num, minimumFractionDigits: 2) }

Umumnya, Pesan atau Istilah yang diterjemahkan diharapkan berisi referensi yang sama dengan sumbernya, meskipun tidak harus dalam urutan kemunculan yang sama. Oleh karena itu, pemeriksaan ini memastikan bahwa terjemahan menggunakan referensi yang sama dalam nilainya dengan nilai sumber, dengan frekuensi yang sama, dan tanpa penambahan. Untuk Pesan, pemeriksaan ini juga akan memeriksa bahwa setiap Atribut dalam terjemahan menggunakan referensi yang sama dengan Atribut yang sesuai dalam sumber.

Bila sumber atau terjemahannya berisi Ekspresi Select Fluent, maka setiap kemungkinan varian dalam sumber harus dicocokkan dengan setidaknya satu varian dalam terjemahan dengan referensi yang sama, dan sebaliknya.

Lebih lanjut, jika referensi variabel muncul baik di pemilih Ekspresi Select maupun di salah satu variannya, maka semua varian juga dapat dianggap seolah-olah mengandung referensi tersebut. Asumsinya adalah bahwa kunci varian tersebut mungkin telah membuat referensi tersebut redundan untuk varian tersebut. Misalnya:

{ $num ->
    [one] an apple
   *[other] { $num } apples
}

Di sini, untuk tujuan pemeriksaan ini, varian [one] juga akan dianggap berisi referensi $num.

Namun, referensi dalam selektor Ekspresi Select, yang hanya dapat berupa variabel Atribut Term dalam sintaksis Fluent, tidak akan dianggap sebagai referensi wajib karena referensi tersebut tidak membentuk konten teks sebenarnya dari string yang akan dilihat oleh pengguna akhir, dan keberadaan Ekspresi Select dianggap lokalisasi yang spesifik. Misalnya:

{ -term.starts-with-vowel ->
    [yes] an { -term }
   *[no] a { -term }
}

Di sini referensi ke -term.starts-with-vowel tidak diharapkan muncul dalam terjemahan, tetapi referensi ke -term muncul.

HTML dalam terjemahan Fluent

Added in version 5.0.

Ringkasan:

Target Fluent harus berupa HTML dalam yang valid yang cocok.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.fluent.inner_html.FluentTargetInnerHTMLCheck

Periksa pengenal:

fluent-target-inner-html

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Format Fluent

Tandai untuk mengaktifkan:

fluent-target-inner-html

Tandai untuk mengabaikan:

ignore-fluent-target-inner-html

Pemeriksaan ini akan memverifikasikan bahwa nilai terjemahan dari suatu Pesan atau Istilah berisi elemen HTML yang sama dengan nilai sumber.

Pertama, jika nilai sumber gagal dalam pemeriksaan HTML dalam sumber Fluent, maka pemeriksaan ini tidak akan menghasilkan apa pun. Jika tidak, nilai yang diterjemahkan juga akan diperiksa dalam kondisi yang sama.

Kedua, elemen HTML yang terdapat dalam nilai terjemahan akan dibandingkan dengan elemen HTML yang terdapat dalam nilai sumber. Dua elemen akan cocok jika keduanya memiliki nama tag yang sama persis, atribut dan nilai yang sama persis, dan semua leluhurnya cocok dengan cara yang sama. Pemeriksaan ini akan memastikan bahwa semua elemen dalam nilai sumber muncul di suatu tempat dalam terjemahan, dengan jumlah kemunculan yang sama, dan tanpa elemen tambahan. Jika terdapat beberapa elemen dalam suatu nilai, elemen tersebut tidak perlu muncul dalam urutan yang sama dalam nilai terjemahan.

Jika sumber atau terjemahannya memuat Ekspresi Select Fluent, maka setiap kemungkinan varian dalam sumber harus dicocokkan dengan setidaknya satu varian dalam terjemahan dengan elemen HTML yang sama, dan sebaliknya.

Saat menggunakan Fluent dalam kombinasi dengan paket Fluent DOM, pemeriksaan ini akan memastikan bahwa terjemahan juga menyertakan elemen data-l10n-name yang diperlukan yang muncul di sumber, atau salah satu elemen sebaris yang diizinkan seperti <br>.

Misalnya, sumber berikut:

Source message <img data-l10n-name="icon"/> with icon

akan cocok dengan:

Translated message <img data-l10n-name="icon"/> with icon

tapi tidak:

Translated message <img data-l10n-name="new-val"/> with icon

atau

Translated message <br data-l10n-name="icon"/> with no icon

Sintaksis sumber Fluent

Added in version 5.0.

Ringkasan:

Galat sintaksis Fluent dalam terjemahan.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.fluent.syntax.FluentTargetSyntaxCheck

Periksa pengenal:

fluent-target-syntax

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Format Fluent

Tandai untuk mengaktifkan:

fluent-target-syntax

Tandai untuk mengabaikan:

ignore-fluent-target-syntax

Di Weblate, string Fluent menggunakan sintaksis Fluent untuk referensi dan variabel, tetapi juga untuk fitur yang lebih kompleks seperti mendefinisikan atribut dan varian pemilih, termasuk bentuk jamak. Pemeriksaan ini memastikan bahwa sintaksis yang digunakan dalam terjemahan akan valid untuk Fluent.

String yang diformat

Memeriksa apakah format dalam string direplikasi antara sumber dan terjemahan. Menghilangkan string format dalam terjemahan biasanya menyebabkan masalah serius, sehingga format dalam string biasanya harus sesuai dengan sumber.

Weblate mendukung pemeriksaan string format dalam beberapa bahasa. Pemeriksaan ini tidak diaktifkan secara otomatis, hanya jika string ditandai dengan benar (misalnya, c-format untuk format C). Gettext menambahkannya secara otomatis, tetapi Anda mungkin perlu menambahkannya secara manual untuk format berkas lain atau jika berkas PO Anda tidak dibuat oleh xgettext.

Sebagian besar pemeriksaan format memperbolehkan penghilangan string format untuk bentuk jamak yang memiliki hitungan tunggal. Hal ini memungkinkan penerjemah untuk menulis string yang lebih baik untuk kasus ini (One apple, alih-alih %d apple). Matikan ini dengan menambahkan penanda strict-format.

Penanda dapat disesuaikan per string (lihat Info tambahan tentang string sumber) atau dalam Konfigurasi komponen. Mendefinisikannya per komponen memang lebih mudah, tetapi dapat menyebabkan positif palsu jika string tersebut tidak ditafsirkan sebagai string pemformatan, tetapi sintaksis string format digunakan.

Petunjuk

Jika pemeriksaan format khusus tidak tersedia di Weblate, Anda dapat menggunakan Pengganti umum.

Selain memeriksa, ini juga akan menyorot string pemformatan agar mudah memasukkannya ke dalam string terjemahan:

../_images/format-highlight.webp

String interpolasi AngularJS

Ringkasan:

String interpolasi AngularJS tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.angularjs.AngularJSInterpolationCheck

Periksa pengenal:

angularjs_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

angularjs-format

Tandai untuk mengabaikan:

ignore-angularjs-format

Contoh string format yang bernama:

Your balance is {{amount}} {{ currency }}

Pemformatan komponen Automattic

Ringkasan:

Pengganti komponen Automattic tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.AutomatticComponentsCheck

Periksa pengenal:

automattic_components_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

automattic-components-format

Tandai untuk mengabaikan:

ignore-automattic-components-format

Contoh string berformat sederhana:

They bought {{strong}}apples{{/strong}}.

Format C

Ringkasan:

String format C tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.CFormatCheck

Periksa pengenal:

c_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

c-format

Tandai untuk mengabaikan:

ignore-c-format

Contoh string berformat sederhana:

There are %d apples

Contoh format posisi string:

Your balance is %1$d %2$s

Format C#

Ringkasan:

String format C# tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.CSharpFormatCheck

Periksa pengenal:

c_sharp_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Berkas ResourceDictionary

Tandai untuk mengaktifkan:

c-sharp-format, csharp-format

Tandai untuk mengabaikan:

ignore-c-sharp-format

Contoh format posisi string:

There are {0} apples

Literal templat ECMAScript

Ringkasan:

Literal templat ECMAScript tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.ESTemplateLiteralsCheck

Periksa pengenal:

es_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

berkas bahasa yang dapat diseret/i18n

Tandai untuk mengaktifkan:

es-format

Tandai untuk mengabaikan:

ignore-es-format

Contoh interpolasi:

There are ${number} apples

Interpolasi i18next

Added in version 4.0.

Ringkasan:

Interpolasi i18next tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.I18NextInterpolationCheck

Periksa pengenal:

i18next_interpolation

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Berkas JSON i18next, Berkas JSON i18next

Tandai untuk mengaktifkan:

i18next-interpolation

Tandai untuk mengabaikan:

ignore-i18next-interpolation

Contoh interpolasi:

There are {{number}} apples

Contoh penyarangan:

There are $t(number) apples

ICU MessageFormat

Added in version 4.9.

Ringkasan:

Galat sintaksis dan/atau pengganti tidak cocok di string ICU MessageFormat.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.icu.ICUMessageFormatCheck

Periksa pengenal:

icu_message_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Berkas ARB, Berkas JSON Format.JS

Tandai untuk mengaktifkan:

icu-message-format

Tandai untuk mengabaikan:

ignore-icu-message-format

Contoh interpolasi:

There {number, plural, one {is one apple} other {are # apples}}.

Pemeriksaan ini mendukung pesan ICU MessageFormat murni maupun ICU dengan tag XML sederhana. Anda dapat mengonfigurasikan perilaku pemeriksaan ini menggunakan icu-flags:*, baik dengan memilih dukungan XML maupun dengan menonaktifkan sub-pemeriksaan tertentu. Misalnya, penanda berikut mengaktifkan dukungan XML sekaligus menonaktifkan validasi sub-pesan jamak:

icu-message-format, icu-flags:xml:-plural_selectors

xml

Aktifkan dukungan untuk tag XML sederhana. Secara bawaan, tag XML diurai secara longgar. Karakter < yang tidak diinginkan akan diabaikan jika bukan merupakan bagian yang wajar dari tag.

strict-xml

Aktifkan dukungan untuk tag XML yang ketat. Semua karakter < harus diloloskan jika bukan bagian dari tag.

-highlight

Nonaktifkan penyorotan pengganti di penyuntingan.

-require_other

Nonaktifkan persyaratan sub-pesan untuk memiliki pemilih other.

-submessage_selectors

Lewati pemeriksaan bahwa pemilih sub-pesan cocok dengan sumbernya.

-types

Lewati pemeriksaan yang mana jenis pengganti cocok dengan sumbernya.

-extra

Lewati pemeriksaan bahwa tidak ada pengganti yang hadir yang tidak ada dalam string sumber.

-missing

Lewati pemeriksaan bahwa tidak ada pengganti yang hilang yang ada dalam string sumber.

Selain itu, jika strict-xml tidak diaktifkan tetapi xml diaktifkan, Anda dapat menggunakan penanda icu-tag-prefix:PREFIX untuk mewajibkan semua tag XML dimulai dengan string tertentu. Misalnya, penanda berikut hanya akan mengizinkan pencocokan tag XML jika dimulai dengan <x::

icu-message-format, icu-flags:xml, icu-tag-prefix:"x:"

Ini akan cocok dengan <x:link>klik di sini</x:link> tetapi tidak dengan <strong>ini</strong>.

Format Java

Ringkasan:

String format Java tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.JavaFormatCheck

Periksa pengenal:

java_printf_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Sumber daya string Android, Sumber daya Mobile Kotlin, Sumber Daya Multiplatform Compose

Tandai untuk mengaktifkan:

java-printf-format

Tandai untuk mengabaikan:

ignore-java-printf-format

Contoh string berformat sederhana:

There are %d apples

Contoh format posisi string:

Your balance is %1$d %2$s

Berubah pada versi 4.14: Ini dulunya diubah oleh penanda java-format, ini diubah demi konsistensi dengan GNU gettext.

Java MessageFormat

Ringkasan:

String Java MessageFormat tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.JavaMessageFormatCheck

Periksa pengenal:

java_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Properti Java, Atribut GWT

Tandai untuk mengaktifkan:

auto-java-messageformat, java-format

Automatic flag behavior:

auto-java-messageformat: Treat a text as conditional Java MessageFormat, enabling Java MessageFormat only when the source contains Java MessageFormat placeholders.

Tandai untuk mengabaikan:

ignore-java-format

Contoh format posisi string:

There are {0} apples

Berubah pada versi 4.14: Ini dulunya diubah oleh penanda java-messageformat, ini diubah demi konsistensi dengan GNU gettext.

Pemeriksaan ini memvalidasi string format valid untuk kelas Java MessageFormat. Selain mencocokkan string format dalam kurung kurawal, pemeriksaan ini juga memverifikasi tanda kutip tunggal karena memiliki arti khusus. Jika menulis tanda kutip tunggal, tanda kutip tunggal harus ditulis sebagai ''. Jika tidak dipasangkan, tanda kutip tunggal akan dianggap sebagai awal tanda kutip dan tidak akan ditampilkan saat merender string.

Format JavaScript

Ringkasan:

String format JavaScript tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.JavaScriptFormatCheck

Periksa pengenal:

javascript_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

javascript-format

Tandai untuk mengabaikan:

ignore-javascript-format

Contoh string berformat sederhana:

There are %d apples

Format Laravel

Ringkasan:

String format Laravel tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.LaravelFormatCheck

Periksa pengenal:

laravel_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

String PHP Laravel

Tandai untuk mengaktifkan:

laravel-format

Tandai untuk mengabaikan:

ignore-laravel-format

Contoh string format yang bernama:

The :attribute must be :value

Format Lua

Ringkasan:

String format Lua tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.LuaFormatCheck

Periksa pengenal:

lua_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

lua-format

Tandai untuk mengabaikan:

ignore-lua-format

Contoh string berformat sederhana:

There are %d apples

Format Object Pascal

Ringkasan:

String format Object Pascal tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.ObjectPascalFormatCheck

Periksa pengenal:

object_pascal_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

object-pascal-format

Tandai untuk mengabaikan:

ignore-object-pascal-format

Contoh string berformat sederhana:

There are %d apples

Format Objective-C

Added in version 5.17.

Ringkasan:

String format Objective-C tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.ObjCFormatCheck

Periksa pengenal:

objc_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

String Apple iOS, Format Stringsdict

Tandai untuk mengaktifkan:

objc-format

Tandai untuk mengabaikan:

ignore-objc-format

Pengganti persen

Added in version 4.0.

Ringkasan:

Pengganti persen tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.PercentPlaceholdersCheck

Periksa pengenal:

percent_placeholders

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

percent-placeholders

Tandai untuk mengabaikan:

ignore-percent-placeholders

Contoh string berformat sederhana:

There are %number% apples

Format kurung kurawal Perl

Ringkasan:

String format kurung kurawal Perl tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.PerlBraceFormatCheck

Periksa pengenal:

perl_brace_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

perl-brace-format

Tandai untuk mengabaikan:

ignore-perl-brace-format

Contoh string format yang bernama:

There are {number} apples

Format Perl

Ringkasan:

String format Perl tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.PerlFormatCheck

Periksa pengenal:

perl_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

perl-format

Tandai untuk mengabaikan:

ignore-perl-format

Contoh string berformat sederhana:

There are %d apples

Contoh format posisi string:

Your balance is %1$d %2$s

Format PHP

Ringkasan:

String format PHP tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.PHPFormatCheck

Periksa pengenal:

php_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

php-format

Tandai untuk mengabaikan:

ignore-php-format

Contoh string berformat sederhana:

There are %d apples

Contoh format posisi string:

Your balance is %1$d %2$s

Format kurung kurawal Python

Ringkasan:

String format kurung kurawal Python tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.PythonBraceFormatCheck

Periksa pengenal:

python_brace_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

python-brace-format

Tandai untuk mengabaikan:

ignore-python-brace-format

String format sederhana:

There are {} apples

Contoh string format yang bernama:

Your balance is {amount} {currency}

Format Python

Ringkasan:

String format Python tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.PythonFormatCheck

Periksa pengenal:

python_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

python-format

Tandai untuk mengabaikan:

ignore-python-format

String format sederhana:

There are %d apples

Contoh string format yang bernama:

Your balance is %(amount)d %(currency)s

Format Qt

Ringkasan:

String format Qt tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.qt.QtFormatCheck

Periksa pengenal:

qt_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

qt-format

Tandai untuk mengabaikan:

ignore-qt-format

Contoh format posisi string:

There are %1 apples

Format jamak Qt

Ringkasan:

String format jamak Qt tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.qt.QtPluralCheck

Periksa pengenal:

qt_plural_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

qt-plural-format

Tandai untuk mengabaikan:

ignore-qt-plural-format

Contoh string berformat jamak:

There are %Ln apple(s)

Format Ruby

Ringkasan:

String format Ruby tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.ruby.RubyFormatCheck

Periksa pengenal:

ruby_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

ruby-format

Tandai untuk mengabaikan:

ignore-ruby-format

Contoh string berformat sederhana:

There are %d apples

Contoh format posisi string:

Your balance is %1$f %2$s

Contoh string format yang bernama:

Your balance is %+.2<amount>f %<currency>s

String templat bernama:

Your balance is %{amount} %{currency}

Format Scheme

Ringkasan:

String format Scheme tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.SchemeFormatCheck

Periksa pengenal:

scheme_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

scheme-format

Tandai untuk mengabaikan:

ignore-scheme-format

Contoh string berformat sederhana:

There are ~d apples

Pemformatan Vue I18n

Ringkasan:

Pemformatan Vue I18n tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.format.VueFormattingCheck

Periksa pengenal:

vue_format

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

vue-format

Tandai untuk mengabaikan:

ignore-vue-format

Pemformatan yang bernama:

There are {count} apples

Pemformatan Rails i18n:

There are %{count} apples

Pesan lokalisasi tertaut:

@:message.dio @:message.the_world!

Telah diterjemahkan

Ringkasan:

String ini telah diterjemahkan di masa lalu.

Cakupan:

semua string

Periksa kelas:

weblate.checks.consistency.TranslatedCheck

Periksa pengenal:

translated

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-translated

Berarti string telah diterjemahkan. Hal ini dapat terjadi ketika terjemahan telah dikembalikan ke VCS atau hilang.

Tidak konsisten

Ringkasan:

String ini memiliki lebih dari satu terjemahan dalam proyek ini atau beberapa komponennya belum diterjemahkan.

Cakupan:

semua string

Periksa kelas:

weblate.checks.consistency.ConsistencyCheck

Periksa pengenal:

inconsistent

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-inconsistent

Weblate memeriksa terjemahan string yang sama di semua terjemahan dalam suatu proyek untuk membantu Anda menjaga konsistensi terjemahan.

Pemeriksaan gagal jika terdapat terjemahan yang berbeda dari satu string dalam satu proyek. Hal ini juga dapat menyebabkan inkonsistensi dalam pemeriksaan yang ditampilkan. Anda dapat menemukan terjemahan lain dari string ini di tab Kejadian lainnya.

Pemeriksaan ini berlaku untuk semua komponen dalam proyek yang mengaktifkan Izinkan propagasi terjemahan.

Petunjuk

Karena alasan kinerja, pemeriksaan mungkin tidak menemukan semua ketidakkonsistenan, namun membatasi jumlah kecocokan.

Catatan

Pemeriksaan ini juga akan aktif jika string diterjemahkan di satu komponen dan tidak di komponen lain. Ini dapat digunakan sebagai cara cepat untuk menangani string yang belum diterjemahkan di beberapa komponen secara manual hanya dengan mengklik tombol Gunakan terjemahan ini yang ditampilkan di setiap baris pada tab Kejadian lainnya.

Anda dapat menggunakan pengaya Terjemahan otomatis untuk mengotomatisasikan terjemahan string yang baru ditambahkan yang sudah diterjemahkan di komponen lain.

reStructuredText tidak konsisten

Added in version 5.10.

Ringkasan:

Markah reStructuredText tidak konsisten dalam pesan yang diterjemahkan.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.RSTReferencesCheck

Periksa pengenal:

rst-references

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

rst-text

Tandai untuk mengabaikan:

ignore-rst-references

Referensi istilah reStructuredText atau markah lainnya tidak cocok dengan sumbernya, penyebab umum galat ini adalah:

  • Tanda centang terbalik tidak cocok atau hilang.

  • Spasi atau interpungsi hilang di sekitar referensi. Blok inline reStructuredText perlu dipisahkan dengan karakter non-kata.

  • Spasi antara tag sebaris dan tanda kutip terbalik.

  • Nama referensi tidak sedang diterjemahkan.

  • Menggunakan tanda kutip, bukan tanda kutip terbalik.

  • Substitusi atau referensi catatan kaki tidak cocok.

Huruf kashida digunakan

Ringkasan:

Huruf kashida dekoratif tidak boleh digunakan.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.KashidaCheck

Periksa pengenal:

kashida

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-kashida

Huruf Kashida dekoratif tidak boleh digunakan dalam terjemahan. Huruf ini juga dikenal sebagai Tatweel.

Referensi Markdown

Ringkasan:

Referensi tautan Markdown tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.MarkdownRefLinkCheck

Periksa pengenal:

md-reflink

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Berkas Markdown, MDX files

Tandai untuk mengaktifkan:

md-text

Tandai untuk mengabaikan:

ignore-md-reflink

Referensi tautan Markdown tidak cocok dengan sumber.

Lihat juga

Tautan Markdown

Sintaksis Markdown

Ringkasan:

Sintaks Markdown tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.MarkdownSyntaxCheck

Periksa pengenal:

md-syntax

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Berkas Markdown, MDX files

Tandai untuk mengaktifkan:

md-text

Tandai untuk mengabaikan:

ignore-md-syntax

Sintaksis markdown tidak cocok dengan sumber

Lihat juga

Baris Markdown

Panjang maksimum terjemahan

Ringkasan:

Terjemahan tidak boleh melebihi panjang yang diberikan.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.MaxLengthCheck

Periksa pengenal:

max-length

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

max-length

Tandai untuk mengabaikan:

ignore-max-length

Memeriksa apakah terjemahan memiliki panjang yang dapat diterima agar sesuai dengan ruang yang tersedia. Ini hanya memeriksa panjang karakter terjemahan.

Tidak seperti pemeriksaan lainnya, penanda harus diatur sebagai pasangan key:value seperti max-length:100.

Petunjuk

Pemeriksaan ini memeriksa jumlah karakter, yang mungkin bukan metrik terbaik saat menggunakan huruf proporsional untuk merender teks. Pemeriksaan Ukuran maksimum terjemahan memeriksa rendering teks yang sebenarnya.

Penanda replacements: mungkin juga berguna untuk memperluas penempatan sebelum memeriksa string.

Ketika penanda xml-text juga digunakan, perhitungan panjang mengabaikan tag XML.

Ukuran maksimum terjemahan

Ringkasan:

Teks terjemahan yang dirender tidak boleh melebihi ukuran yang diberikan.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.render.MaxSizeCheck

Periksa pengenal:

max-size

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

max-size

Tandai untuk mengabaikan:

ignore-max-size

Teks yang dirender terjemahan tidak boleh melebihi ukuran yang diberikan. Teks akan dirender dengan pembungkusan baris dan diperiksa apakah sesuai dengan batas yang diberikan.

Pemeriksaan ini membutuhkan satu atau dua parameter - lebar maksimal dan jumlah baris maksimal. Jika jumlah baris tidak ditentukan, teks satu baris akan dipertimbangkan.

Anda juga dapat mengkonfigurasikan huruf yang digunakan dengan direktif font-* (lihat Menyesuaikan perilaku menggunakan penanda), misalnya tanda terjemahan berikut menyatakan bahwa teks yang ditampilkan dengan ukuran huruf Ubuntu 22 harus muat dalam dua baris dan 500 piksel:

max-size:500:2, font-family:ubuntu, font-size:22

Petunjuk

Anda mungkin ingin mengatur direktif font-* di Konfigurasi komponen agar font yang sama dikonfigurasi untuk semua string dalam suatu komponen. Anda dapat menimpakan nilai tersebut per string jika Anda perlu menyesuaikannya per string.

Penanda replacements: mungkin juga berguna untuk memperluas penempatan sebelum memeriksa string.

Ketika penanda xml-text juga digunakan, perhitungan panjang mengabaikan tag XML.

\n tidak cocok

Ringkasan:

Jumlah literal \n dalam terjemahan tidak sesuai dengan sumbernya.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EscapedNewlineCountingCheck

Periksa pengenal:

escaped_newline

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-escaped-newline

Biasanya, baris baru yang lolos penting untuk memformat keluaran program. Pemeriksaan gagal jika jumlah literal \n dalam terjemahan tidak cocok dengan sumbernya.

Tanda titik dua tidak cocok

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan titik dua.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndColonCheck

Periksa pengenal:

end_colon

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-colon

Memeriksa replikasi titik dua antara sumber dan terjemahan. Keberadaan titik dua juga diperiksa untuk berbagai bahasa yang tidak seharusnya (Mandarin atau Jepang).

Tanda elipsis tidak cocok

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan elipsis.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndEllipsisCheck

Periksa pengenal:

end_ellipsis

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-ellipsis

Memeriksa replikasi elipsis di akhir teks antara sumber dan terjemahan. Ini hanya memeriksa elipsis asli (), bukan tiga titik (...).

Elipsis biasanya ditampilkan lebih bagus daripada tiga titik saat dicetak, dan terdengar lebih baik dengan teks-ke-ucapan.

Tanda seru tidak cocok

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan tanda seru.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndExclamationCheck

Periksa pengenal:

end_exclamation

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-exclamation

Memeriksa apakah tanda seru direplikasi antara sumber dan terjemahan. Keberadaan tanda seru juga diperiksa untuk berbagai bahasa yang tidak seharusnya (Mandarin, Jepang, Korea, Armenia, Limbu, Myanmar, atau Nko).

Tanda titik tidak cocok

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan tanda titik.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndStopCheck

Periksa pengenal:

end_stop

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-stop

Memeriksa pengulangan titik antara sumber dan terjemahan. Keberadaan titik diperiksa untuk berbagai bahasa yang tidak seharusnya (Mandarin, Jepang, Dewanagari, atau Urdu).

Lihat juga

Titik di Wikipedia

Tanda interrobang tidak cocok

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan ekspresi interobang.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndInterrobangCheck

Periksa pengenal:

end_interrobang

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-interrobang

Memeriksa apakah tanda interrobang direplikasi antara sumber dan terjemahan. Hal ini memungkinkan pertukaran antara "!?" dan "?!".

Tanda tanya tidak cocok

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan tanda tanya.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndQuestionCheck

Periksa pengenal:

end_question

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-question

Memeriksa apakah tanda tanya direplikasi antara sumber dan terjemahan. Keberadaan tanda tanya juga diperiksa untuk berbagai bahasa yang tidak seharusnya (Armenia, Arab, Mandarin, Korea, Jepang, Etiopia, Vai, atau Koptik).

Tanda titik koma tidak cocok

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan titik koma.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndSemicolonCheck

Periksa pengenal:

end_semicolon

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-semicolon

Memeriksa apakah titik koma di akhir kalimat direplikasi antara sumber dan terjemahan.

Jeda baris tidak cocok

Ringkasan:

Jumlah baris baru dalam terjemahan tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.NewLineCountCheck

Periksa pengenal:

newline-count

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-newline-count

Biasanya, baris baru penting untuk memformat keluaran program. Pemeriksaan gagal jika jumlah baris baru yang diterjemahkan tidak sesuai dengan sumbernya.

Jamak hilang

Ringkasan:

Beberapa bentuk jamak belum diterjemahkan.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.consistency.PluralsCheck

Periksa pengenal:

plurals

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-plurals

Memeriksa apakah semua bentuk jamak dari string sumber telah diterjemahkan. Rincian penggunaan setiap bentuk jamak dapat ditemukan dalam definisi string.

Gagal mengisi formulir jamak dalam beberapa kasus akan menyebabkan tidak ditampilkannya apa pun saat bentuk jamak digunakan.

Beberapa kapital

Added in version 5.16.

Ringkasan:

Terjemahan berisi kata dengan banyak huruf kapital yang salah tempat.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.MultipleCapitalCheck

Periksa pengenal:

multiple_capital

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-multiple-capital

Memeriksa kesalahan penulisan huruf kapital dengan mendeteksi kata yang berisi huruf kapital berurutan dalam teks yang seharusnya huruf kecil atau huruf kapital biasa (misalnya, HEllo atau CAmelCase). String yang berisi huruf kapital dalam string sumber diperbolehkan untuk berisi huruf kapital dalam terjemahan.

Karakter non-standar dalam Kabyle

Added in version 5.12.

Ringkasan:

Gunakan karakter standar Kabyle Latin (mis. ɣ daripada γ Yunani; ɛ daripada ε).

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.KabyleCharactersCheck

Periksa pengenal:

kabyle-characters

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-kabyle-characters

Memeriksa bahwa terjemahan Kabyle menggunakan huruf Kabyle yang benar dan bukan huruf Yunani yang mirip, yang sering digunakan sebelum karakter Kabyle distandarisasi dalam Unicode.

Pengganti

Berubah pada versi 4.3: Anda dapat menggunakan ekspresi reguler sebagai pengganti.

Berubah pada versi 4.13: Dengan penanda case-insensitive, pengganti tidak peka huruf kapital.

Ringkasan:

Terjemahan kehilangan beberapa pengganti.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.placeholders.PlaceholderCheck

Periksa pengenal:

placeholders

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

placeholders

Tandai untuk mengabaikan:

ignore-placeholders

Terjemahan kehilangan beberapa pengganti. Ini diekstrak dari berkas terjemahan atau didefinisikan secara manual menggunakan penanda placeholder, lainnya dapat dipisahkan dengan titik dua, dan string dengan spasi dapat diberi tanda kutip:

placeholders:$URL$:$TARGET$:"some long text"

Jika Anda memiliki beberapa sintaksis untuk pengganti, Anda dapat menggunakan ekspresi reguler:

placeholders:r"%[^% ]%"

Anda juga dapat memiliki pengganti yang tidak peka huruf kapital:

placeholders:$URL$:$TARGET$,case-insensitive

Karakter awal terlarang

Added in version 5.9.

Ringkasan:

String diawali dengan karakter terlarang dalam CSV.

Cakupan:

string glosarium

Periksa kelas:

weblate.checks.glossary.ProhibitedInitialCharacterCheck

Periksa pengenal:

prohibited_initial_character

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-prohibited-initial-character

Glosarium sering dibagikan sebagai CSV dan penggunaan beberapa karakter di awal dibatasi oleh banyak aplikasi karena dapat menyebabkan teks yang dievaluasi dianggap sebagai ekspresi. Hal ini juga memengaruhi Glosarium dalam saran otomatis di mana banyak layanan menggunakan CSV untuk menyinkronkan glosarium dan menolak string tersebut.

Spasi tanda baca

Berubah pada versi 5.10: Pemeriksaan ini juga dulunya berlaku untuk Breton, tetapi terbatas hanya pada Prancis.

Ringkasan:

Tidak ada spasi yang dapat diputuskan sebelum tanda baca ganda.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.PunctuationSpacingCheck

Periksa pengenal:

punctuation_spacing

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-punctuation-spacing

Memeriksa adanya spasi yang tidak dapat dipisahkan sebelum tanda baca ganda (tanda seru, tanda tanya, titik koma, dan titik dua). Aturan ini hanya digunakan dalam beberapa bahasa tertentu seperti Prancis, di mana spasi sebelum tanda baca ganda merupakan aturan tipografi.

Ekspresi reguler

Berubah pada versi 5.10: Dukungan yang diperluas untuk ekspresi reguler tingkat lanjut termasuk properti titik kode Unicode.

Ringkasan:

Terjemahan tidak cocok dengan ekspresi reguler.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.placeholders.RegexCheck

Periksa pengenal:

regex

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

regex

Tandai untuk mengabaikan:

ignore-regex

Terjemahan tidak sesuai dengan ekspresi reguler. Ekspresi tersebut diekstrak dari berkas terjemahan atau didefinisikan secara manual menggunakan tanda regex:

regex:^foo|bar$

Pencocokan juga mendukung properti titik kode Unicode, termasuk skrip dan blok:

regex:^[-_\p{L}\p{N}\p{sc=Deva}\p{sc=Thai}]{1,32}$

Petunjuk

Gunakan Pengganti untuk mendeteksi pengganti yang hilang dalam string.

Lihat juga

Dokumentasi regex

Galat sintaksis reStructuredText

Added in version 5.10.

Ringkasan:

Galat sintaksis reStructuredText dalam terjemahan.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.RSTSyntaxCheck

Periksa pengenal:

rst-syntax

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

rst-text

Tandai untuk mengabaikan:

ignore-rst-syntax

Galat sintaks reStructuredText dalam terjemahan. Isu yang perlu diperhatikan:

  • Tag penutup/pembuka tidak cocok.

  • Spasi atau interpungsi hilang di sekitar referensi. Blok inline reStructuredText perlu dipisahkan dengan karakter non-kata.

  • Menggunakan tanda kutip, bukan tanda kutip terbalik.

Terjemahan yang digunakan ulang

Added in version 4.18.

Ringkasan:

String yang berbeda diterjemahkan secara sama.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.consistency.ReusedCheck

Periksa pengenal:

reused

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-reused

Pemeriksaan yang gagal jika terjemahan yang sama digunakan pada string sumber yang berbeda. Terjemahan semacam itu bisa saja disengaja, tetapi juga dapat membingungkan pengguna.

Jamak yang sama

Ringkasan:

Beberapa bentuk jamak diterjemahkan dengan cara yang sama.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.consistency.SamePluralsCheck

Periksa pengenal:

same-plurals

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-same-plurals

Pemeriksaan yang gagal jika beberapa bentuk jamak terganda dalam terjemahan. Dalam kebanyakan bahasa, bentuk tersebut harus berbeda.

Mulai baris baru

Ringkasan:

Sumber dan terjemahan tidak keduanya dimulai dengan baris baru.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.BeginNewlineCheck

Periksa pengenal:

begin_newline

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-begin-newline

Baris baru biasanya muncul dalam string sumber karena alasan yang baik, penghilangan atau penambahan dapat menyebabkan masalah pemformatan saat teks terjemahan digunakan.

Spasi di awal

Ringkasan:

Sumber dan terjemahan tidak keduanya dimulai dengan jumlah spasi yang sama.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.BeginSpaceCheck

Periksa pengenal:

begin_space

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-begin-space

Spasi di awal string biasanya digunakan untuk indentasi dalam antarmuka dan karenanya penting untuk dipertahankan.

Baris baru di belakang

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan baris baru.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndNewlineCheck

Periksa pengenal:

end_newline

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-newline

Baris baru biasanya muncul dalam string sumber karena alasan yang baik, penghilangan atau penambahan dapat menyebabkan masalah pemformatan saat teks terjemahan digunakan.

Lihat juga

Mulai baris baru

Spasi di belakang

Ringkasan:

Sumber dan terjemahan tidak keduanya diakhiri dengan spasi.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.EndSpaceCheck

Periksa pengenal:

end_space

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-end-space

Memeriksa apakah spasi di akhir direplikasi antara sumber dan terjemahan.

Spasi tambahan biasanya digunakan untuk memberi jarak pada elemen yang berdekatan, jadi menghilangkannya dapat merusak tata letak.

Terjemahan tidak berubah

Ringkasan:

Sumber dan terjemahan identik.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.same.SameCheck

Periksa pengenal:

same

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-same

Terjadi jika string sumber dan terjemahan yang sesuai identik, hingga setidaknya satu bentuk jamak. Beberapa string yang umum ditemukan di semua bahasa diabaikan, dan berbagai markah dihilangkan. Ini mengurangi jumlah positif palsu.

Pemeriksaan ini dapat membantu menemukan string yang salah diterjemahkan.

Perilaku bawaan pemeriksaan ini adalah mengecualikan kata dari daftar istilah bawaan dari pemeriksaan. Ini seringkali tidak diterjemahkan. Hal ini berguna untuk menghindari positif palsu pada string pendek, yang hanya terdiri dari satu kata yang sama dalam beberapa bahasa. Daftar ini dapat dinonaktifkan dengan menambahkan penanda strict-same ke string atau komponen.

Berubah pada versi 4.17: Dengan penanda check-glossary (lihat Tidak mengikuti glosarium), istilah glosarium yang tidak dapat diterjemahkan dikecualikan dari pemeriksaan.

HTML Tidak Aman

Ringkasan:

Terjemahan menggunakan markah HTML yang tidak aman.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.SafeHTMLCheck

Periksa pengenal:

safe-html

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Berkas HTML, Berkas Markdown, MDX files, Berkas AsciiDoc

Tandai untuk mengaktifkan:

auto-safe-html, safe-html

Automatic flag behavior:

auto-safe-html: Treat a text as conditional HTML, enabling HTML Tidak Aman only for plain text or source strings that contain standard HTML markup or valid custom elements. This is useful for extended Markdown variants such as MDX, where angle-bracket syntax may not be HTML.

Tandai untuk mengabaikan:

ignore-safe-html

Terjemahan menggunakan markah HTML yang tidak aman. Pemeriksaan ini harus diaktifkan menggunakan tanda safe-html (lihat Menyesuaikan perilaku menggunakan penanda). Tersedia juga perbaikan otomatis yang dapat membersihkan markah secara otomatis.

Petunjuk

Bila penanda md-text juga digunakan, tautan bergaya Markdown juga diperbolehkan.

Lihat juga

Pemeriksaan HTML dilakukan oleh pustaka Ammonia.

URL

Ringkasan:

Terjemahan tidak berisi URL.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.URLCheck

Periksa pengenal:

url

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Tandai untuk mengaktifkan:

url

Tandai untuk mengabaikan:

ignore-url

The translation does not contain a URL. This is triggered only in case the unit is marked as containing URL. In that case the translation has to be a valid URL.

Markah XML

Ringkasan:

Tag XML dalam terjemahan tidak cocok dengan sumber.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.XMLTagsCheck

Periksa pengenal:

xml-tags

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-xml-tags

Ini biasanya berarti hasil keluaran akan terlihat berbeda. Dalam kebanyakan kasus, ini bukanlah hasil yang diinginkan dari perubahan terjemahan, tetapi terkadang memang demikian.

Memeriksa apakah tag XML direplikasi antara sumber dan terjemahan.

Pemeriksaan ini diaktifkan secara otomatis untuk string seperti XML. Anda mungkin perlu menambahkan penanda xml-text dalam beberapa kasus untuk mengaktifkannya secara paksa.

Catatan

Pemeriksaan ini dinonaktifkan oleh penanda safe-html karena pembersihan HTML yang dilakukannya dapat menghasilkan markah HTML yang bukan XML yang valid.

Sintaksis XML

Ringkasan:

Terjemahan bukan XML yang valid.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.markup.XMLValidityCheck

Periksa pengenal:

xml-invalid

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-xml-invalid

Markah XML tidak valid.

Pemeriksaan ini diaktifkan secara otomatis untuk string seperti XML. Anda mungkin perlu menambahkan penanda xml-text dalam beberapa kasus untuk mengaktifkannya secara paksa.

Catatan

Pemeriksaan ini dinonaktifkan oleh penanda safe-html karena pembersihan HTML yang dilakukannya dapat menghasilkan markah HTML yang bukan XML yang valid.

Spasi lebar nol

Ringkasan:

Terjemahan berisi karakter spasi tanpa lebar ekstra.

Cakupan:

string yang diterjemahkan

Periksa kelas:

weblate.checks.chars.ZeroWidthSpaceCheck

Periksa pengenal:

zero-width-space

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-zero-width-space

Karakter spasi nol (<U+200B>) digunakan untuk memecah pesan di dalam kata (pembungkusan kata).

Karena karakter ini biasanya dimasukkan secara tidak sengaja, pemeriksaan ini dipicu setelah karakter tersebut muncul dalam proses terjemahan. Beberapa program mungkin mengalami masalah saat karakter ini digunakan.

Pemeriksaan sumber

Pemeriksaan sumber dapat membantu pengembang meningkatkan kualitas string sumber.

Elipsis

Ringkasan:

String menggunakan tiga titik (...) alih-alih karakter elipsis (…).

Cakupan:

string sumber

Periksa kelas:

weblate.checks.source.EllipsisCheck

Periksa pengenal:

ellipsis

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-ellipsis

Ini gagal saat string menggunakan tiga titik (...) padahal seharusnya menggunakan karakter elipsis ().

Menggunakan karakter Unicode dalam kebanyakan kasus merupakan pendekatan yang lebih baik dan terlihat lebih baik jika ditampilkan, dan mungkin terdengar lebih baik dengan text-to-speech.

HTML dalam sumber Fluent

Added in version 5.0.

Ringkasan:

Sumber Fluent harus berupa HTML dalam yang valid.

Cakupan:

string sumber

Periksa kelas:

weblate.checks.fluent.inner_html.FluentSourceInnerHTMLCheck

Periksa pengenal:

fluent-source-inner-html

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Format Fluent

Tandai untuk mengaktifkan:

fluent-source-inner-html

Tandai untuk mengabaikan:

ignore-fluent-source-inner-html

Fluent sering digunakan dalam konteks di mana nilai untuk sebuah Pesan (atau Istilah) dimaksudkan untuk digunakan langsung sebagai .innerHTML (alih-alih .textContent) untuk beberapa elemen HTML. Misalnya, saat menggunakan paket DOM Fluent.

The aim of this check is to predict how the value will be parsed as inner HTML, assuming an HTML5 conforming parser, to catch cases where there would be some "unintended" loss of the string, without being too strict about technical parsing errors that do not lead to a loss of the string.

Pemeriksaan ini diterapkan pada nilai Pesan atau Istilah Fluent, tetapi tidak pada Atributnya. Untuk Pesan, Atribut Fluent seringkali hanya berupa nilai atribut HTML, sehingga dapat berupa string sembarangan. Untuk Istilah, Atribut Fluent seringkali berupa properti bahasa yang hanya dapat direferensikan dalam selektor Ekspresi Select Fluent.

Generally, most Fluent values are not expected to contain any HTML markup. Therefore, this check does not expect or want translators and developers to have to care about strictly avoiding any technical HTML5 parsing errors (let alone XHTML parsing errors). Instead, this check will just want to warn them when they may have unintentionally opened an HTML tag or inserted a character reference.

Selain itu, untuk nilai Fluent yang sengaja berisi tag HTML atau referensi karakter, pemeriksaan ini akan memverifikasi beberapa "praktik baik", seperti pencocokan tag penutup dan penyelesaian, referensi karakter yang valid, dan nilai atribut yang dikutip. Selain itu, meskipun spesifikasi HTML5 secara teknis memperbolehkan penamaan tag dan atribut yang cukup arbitrer, pemeriksaan ini akan membatasinya pada beberapa nilai ASCII dasar yang seharusnya mencakup tag dan atribut elemen HTML5 standar, serta memperbolehkan beberapa nama elemen atau atribut kustom. Hal ini sebagian untuk memastikan bahwa pengguna menggunakan HTML secara sengaja.

Contoh:

Contoh HTML internal Fluent

Nilai

Peringatan?

Alasan

three<four

ya

Bagian <four akan hilang sebagai .innerHTML.

three < four

tidak

.innerHTML akan cocok dengan .textContent.

three <four>

ya

Tag penutup hilang.

three <four/>

ya

four is not an HTML void element, so should not self-close.

<a-b>text</a-b>

tidak

Tag elemen khusus dengan tag penutup yang cocok.

a <img/> b

tidak

img is an HTML void element. Self-closing is allowed.

a <br> b

tidak

br is an HTML void element.

<img class=a/>

ya

Nilai atribut tidak dikutip.

<aØ attr=''/>

ya

Nama tag non-ASCII.

kind&ethical

ya

Bagian &eth akan diubah menjadi ð.

kind&eth;ical

tidak

Referensi karakter tampaknya disengaja.

three&lte;four

ya

Bagian &lte; akan diubah menjadi <e;.

three&lf;four

ya

Referensi karakter tidak valid.

three<{ $val }

ya

Variabel Fluent mungkin secara tidak sengaja menjadi sebuah tag.

&l{ $val }

ya

Variabel Fluent mungkin secara tidak sengaja menjadi referensi karakter.

Catatan

Pemeriksaan ini tidak akan memastikan keamanan atau sanitasi HTML internal, dan tidak dimaksudkan untuk melindungi dari upaya jahat untuk mengubah HTML internal. Selain itu, perlu diingat bahwa variabel dan referensi Fluent dapat berkembang menjadi string sembarang, sehingga dapat berkembang menjadi HTML sembarang kecuali jika diloloskan. Sebagai pengecualian, karakter < atau & sebelum referensi Fluent akan memicu pemeriksaan ini karena bahkan nilai yang diloloskan dapat menyebabkan hasil yang tidak diharapkan.

Catatan

Paket Fluent DOM memiliki batasan lebih lanjut, seperti tag dan atribut yang diizinkan, yang tidak akan diberlakukan oleh pemeriksaan ini.

Sintaksis sumber Fluent

Added in version 5.0.

Ringkasan:

Galat sintaksis Fluent dalam sumber.

Cakupan:

string sumber

Periksa kelas:

weblate.checks.fluent.syntax.FluentSourceSyntaxCheck

Periksa pengenal:

fluent-source-syntax

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Format Fluent

Tandai untuk mengaktifkan:

fluent-source-syntax

Tandai untuk mengabaikan:

ignore-fluent-source-syntax

Di Weblate, string Fluent menggunakan sintaksis Fluent untuk referensi dan variabel, tetapi juga untuk fitur yang lebih kompleks seperti mendefinisikan atribut dan varian pemilih, termasuk bentuk jamak. Pemeriksaan ini memastikan bahwa sintaksis yang digunakan dalam kode sumber akan valid untuk Fluent.

Sintaksis ICU MessageFormat

Added in version 4.9.

Ringkasan:

Galat sintaksis dalam string ICU MessageFormat.

Cakupan:

string sumber

Periksa kelas:

weblate.checks.icu.ICUSourceCheck

Periksa pengenal:

icu_message_format_syntax

Pemicu:

Pemeriksaan ini perlu diaktifkan menggunakan tanda.

Format berkas secara otomatis mengaktifkan pemeriksaan ini:

Berkas ARB, Berkas JSON Format.JS

Tandai untuk mengaktifkan:

icu-message-format

Tandai untuk mengabaikan:

ignore-icu-message-format

Lihat juga

ICU MessageFormat

Lama belum diterjemahkan

Added in version 4.1.

Ringkasan:

String tidak diterjemahkan untuk waktu yang lama.

Cakupan:

string sumber

Periksa kelas:

weblate.checks.source.LongUntranslatedCheck

Periksa pengenal:

long_untranslated

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-long-untranslated

Bila string tidak diterjemahkan dalam waktu lama, hal itu dapat mengindikasikan adanya masalah pada string sumber yang membuatnya sulit diterjemahkan.

Beberapa pemeriksaan gagal

Ringkasan:

Terjemahan dalam beberapa bahasa memiliki pemeriksaan yang gagal.

Cakupan:

string sumber

Periksa kelas:

weblate.checks.source.MultipleFailingCheck

Periksa pengenal:

multiple_failures

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-multiple-failures

Banyak terjemahan dari string ini yang mengalami kegagalan pemeriksaan kualitas. Hal ini biasanya merupakan indikasi bahwa ada yang perlu dilakukan untuk memperbaiki string sumber.

Kegagalan pemeriksaan ini cukup sering disebabkan oleh titik yang hilang di akhir kalimat, atau masalah kecil serupa yang cenderung diperbaiki oleh penerjemah dalam terjemahan, padahal akan lebih baik memperbaikinya dalam string sumber.

Beberapa variabel tanpa nama

Added in version 4.1.

Ringkasan:

Ada beberapa variabel tanpa nama dalam string, sehingga tidak mungkin bagi penerjemah untuk mengurutkannya kembali.

Cakupan:

string sumber

Periksa kelas:

weblate.checks.format.MultipleUnnamedFormatsCheck

Periksa pengenal:

unnamed_format

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-unnamed-format

Ada beberapa variabel tanpa nama dalam string, sehingga tidak mungkin bagi penerjemah untuk mengurutkannya kembali.

Pertimbangkan untuk menggunakan variabel bernama sebagai gantinya untuk memungkinkan penerjemah menyusunnya ulang.

Tidak dijamak

Ringkasan:

String digunakan sebagai jamak, tetapi tidak menggunakan bentuk jamak.

Cakupan:

string sumber

Periksa kelas:

weblate.checks.source.OptionalPluralCheck

Periksa pengenal:

optional_plural

Pemicu:

Pemeriksaan ini selalu diaktifkan tetapi dapat diabaikan menggunakan penanda.

Tandai untuk mengabaikan:

ignore-optional-plural

String tersebut digunakan sebagai jamak, tetapi tidak menggunakan bentuk jamak. Jika sistem terjemahan Anda mendukung hal ini, sebaiknya gunakan varian yang mendukung jamak.

Misalnya dengan Gettext di Python bisa seperti ini:

from gettext import ngettext

print(ngettext("Selected %d file", "Selected %d files", files) % files)

Penempatan dalam saran otomatis

Pemeriksaan penempatan akan menampilkan informasi tentang penempatan saat ini, dan ini dapat digunakan untuk menginstruksikan mesin saran otomatis agar menyimpannya. Dukungan untuk hal ini bervariasi di berbagai layanan, dan dalam banyak kasus, tidak ada cara untuk memastikan penempatan tetap utuh.

Lihat juga

Saran otomatis