Verificări și reparații

Verificările de calitate ajută la detectarea erorilor comune ale traducătorului, asigurându-se că traducerea este în stare bună. Verificările pot fi ignorate în cazul unor rezultate fals pozitive.

După trimiterea unei traduceri cu o verificare nereușită, aceasta este afișată imediat utilizatorului:

../_images/checks.webp

Reparații automate

În plus față de Controale de calitate, Weblate poate corecta automat unele erori comune în șirurile traduse. Utilizați-o cu prudență pentru a nu adăuga erori.

Vezi și

AUTOFIX_LIST

Trailing ellipsis replacer

Class name:

weblate.trans.autofixes.chars.ReplaceTrailingDotsWithEllipsis

Replace trailing dots (...) with an ellipsis () to make it consistent with the source string.

Zero-width space removal

Class name:

weblate.trans.autofixes.chars.RemoveZeroSpace

Zero width space is typically not desired in the translation. This fix will remove it unless it is present in the source string as well.

Control characters removal

Class name:

weblate.trans.autofixes.chars.RemoveControlChars

Elimină caracterele de control în cazul în care sursa nu conține niciunul.

Devanagari danda

Class name:

weblate.trans.autofixes.chars.DevanagariDanda

Replaces sentence full stop in Bangla by the Devanagari danda character ().

Spațiere punctuație

Class name:

weblate.trans.autofixes.chars.PunctuationSpacing

Added in version 5.3.

Ensures French uses correct punctuation spacing.

This fixup can be disabled via ignore-punctuation-spacing flag (which also disables Spațiere punctuație).

Unsafe HTML cleanup

Class name:

weblate.trans.autofixes.html.BleachHTML

Removes unsafe HTML markup from strings flagged as safe-html.

Vezi și

HTML nesigur

Trailing and leading whitespace fixer

Class name:

weblate.trans.autofixes.whitespace.SameBookendingWhitespace

Makes leading and trailing whitespace consistent with the source string. The behavior can be fine-tuned using ignore-begin-space and ignore-end-space flags to skip processing parts of the string.

Controale de calitate

Weblate utilizează o gamă largă de verificări de calitate a șirurilor de caractere. Următoarea secțiune le descrie pe toate în detaliu. Există, de asemenea, verificări specifice fiecărei limbi. Vă rugăm să depuneți un bug dacă se raportează ceva eronat.

Verificări de traducere

Executat la fiecare modificare a traducerii, ajutându-i pe traducători să mențină traducerile de bună calitate.

Marcaj BBCode

Schimbat în versiunea 5.10: This checks no longer relies on unreliable automatic detection, it now needs to be turned on using the bbcode-text flag.

Sumar:

BBCode in translation does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.BBCodeCheck

Identificatorul de verificare:

bbcode

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

bbcode-text

Indicator de ignorat:

ignore-bbcode

BBCode reprezintă marcaje simple, cum ar fi, de exemplu, evidențierea părților importante ale unui mesaj cu caractere aldine sau italice.

Această verificare asigură că acestea se regăsesc și în traducere.

Notă

Metoda de detectare a BBCode este în prezent destul de simplă, astfel încât această verificare ar putea produce rezultate fals pozitive.

Chars around XML tags

Sumar:

Characters surrounding XML tags in translation do not align with source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.XMLCharsAroundTagsCheck

Identificatorul de verificare:

xml-chars-around-tags

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-xml-chars-around-tags

Checks that the characters surrounding an XML tag are consistent between both source and translation. Ensures letters are not replaced with non-letters, and vice versa.

Notă

Această verificare este dezactivată de indicatorul safe-html, deoarece curățarea HTML efectuată de acesta poate produce marcaje HTML care nu sunt XML valide.

Cuvinte consecutive duplicate

Added in version 4.1.

Sumar:

Text contains the same word twice in a row.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.duplicate.DuplicateCheck

Identificatorul de verificare:

duplicate

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-duplicate

Verifică dacă nu există cuvinte consecutive duplicate într-o traducere. Acest lucru indică, de obicei, o greșeală în traducere.

Sugestie

Această verificare include reguli specifice fiecărei limbi pentru a evita falsurile pozitive. În cazul în care se declanșează în mod fals în cazul dumneavoastră, anunțați-ne. A se vedea Raportarea problemelor în Weblate.

Nu respectă glosarul

Added in version 4.5.

Sumar:

Traducerea nu respectă termenii definiți într-un glosar.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.glossary.GlossaryCheck

Identificatorul de verificare:

check_glossary

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

check-glossary

Indicator de ignorat:

ignore-check-glossary

Această verificare trebuie activată cu ajutorul indicatorului check-glossary (a se vedea Personalizarea comportamentului cu ajutorul stegulețelor). Vă rugăm să luați în considerare următoarele aspecte înainte de a o activa:

  • Se face o potrivire exactă a șirurilor de caractere, se așteaptă ca glosarul să conțină termeni în toate variantele.

  • Verificarea fiecărui șir de caractere în raport cu glosarul este costisitoare și va încetini orice operațiune din Weblate care implică efectuarea de verificări, cum ar fi importul de șiruri de caractere sau traducerea.

  • It also utilizes untranslatable glossary terms in Traducere neschimbată.

Spațiu dublu

Sumar:

Translation contains double space.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.DoubleSpaceCheck

Identificatorul de verificare:

double_space

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-double-space

Verifică dacă spațiul dublu este prezent în traducere pentru a evita rezultatele fals pozitive la alte verificări legate de spațiu.

Verificarea este falsă atunci când se găsește un spațiu dublu în sursă, ceea ce înseamnă că spațiul dublu este intenționat.

Părți Fluent

Added in version 5.0.

Sumar:

Fluent parts should match.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.fluent.parts.FluentPartsCheck

Identificatorul de verificare:

fluent-parts

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Format fluent

Indicator de activare:

fluent-parts

Indicator de ignorat:

ignore-fluent-parts

Each Fluent Message can have an optional value (the main text content), and optional attributes, each of which is a „part” of the Message. In Weblate, all these parts appear within the same block, using Fluent-like syntax to specify the attributes. For example:

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

This check ensures that the translated Message also has a value if the source Message has one, or no value if the source has none. This also checks that the same attributes used in the source Message also appear in the translation, with no additions.

Notă

This check is not applied to Fluent Terms since Terms always have a value, and Term attributes tend to be locale-specific (used for grammar rules, etc.), and are not expected to appear in all translations.

Referințe Fluent

Added in version 5.0.

Sumar:

Fluent references should match.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.fluent.references.FluentReferencesCheck

Identificatorul de verificare:

fluent-references

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Format fluent

Indicator de activare:

fluent-references

Indicator de ignorat:

ignore-fluent-references

A Fluent Message or Term can reference another Message, Term, Attribute, or a variable. For example:

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

Generally, translated Messages or Terms are expected to contain the same references as the source, although not necessarily in the same order of appearance. So this check ensures that translations use the same references in their value as the source value, the same number of times, and with no additions. For Messages, this will also check that each Attribute in the translation uses the same references as the matching Attribute in the source.

When the source or translation contains Fluent Select Expressions, then each possible variant in the source must be matched with at least one variant in the translation with the same references, and vice versa.

Moreover, if a variable reference appears both in the Select Expression’s selector and within one of its variants, then all variants may also be considered as if they also contain that reference. The assumption being that the variant’s key may have made the reference redundant for that variant. For example:

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

Here, for the purposes of this check, the [one] variant will also be considered to contain the $num reference.

However, a reference within the Select Expression’s selector, which can only be a variable of a Term Attribute in Fluent’s syntax, will not by itself count as a required reference because they do not form the actual text content of the string that the end-user will see, and the presence of a Select Expression is considered locale-specific. For example:

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

Here a reference to -term.starts-with-vowel is not expected to appear in translations, but a reference to -term is.

Traducere Fluent intern HTML

Added in version 5.0.

Sumar:

Fluent target should be valid inner HTML that matches.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.fluent.inner_html.FluentTargetInnerHTMLCheck

Identificatorul de verificare:

fluent-target-inner-html

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Format fluent

Indicator de activare:

fluent-target-inner-html

Indicator de ignorat:

ignore-fluent-target-inner-html

This check will verify that the translated value of a Message or Term contains the same HTML elements as the source value.

First, if the source value fails the Sursă Fluent internă HTML check, then this check will do nothing. Otherwise, the translated value will also be checked under the same conditions.

Second, the HTML elements found in the translated value will be compared against the HTML elements found in the source value. Two elements will match if they share the exact same tag name, the exact same attributes and values, and all their ancestors match in the same way. This check will ensure that all the elements in the source appear somewhere in the translation, with the same number of appearances, and with no additional elements added. When there are multiple elements in the value, they need not appear in the same order in the translation value.

When the source or translation contains Fluent Select Expressions, then each possible variant in the source must be matched with at least one variant in the translation with the same HTML elements, and vice versa.

When using Fluent in combination with the Fluent DOM package, this check will ensure that the translation also includes any required data-l10n-name elements that appear in the source, or any of the allowed inline elements like <br>.

For example, the following source:

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

would match with:

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

but not:

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

nor

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

Sintaxă traducere Fluent

Added in version 5.0.

Sumar:

Fluent syntax error in the translation.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.fluent.syntax.FluentTargetSyntaxCheck

Identificatorul de verificare:

fluent-target-syntax

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Format fluent

Indicator de activare:

fluent-target-syntax

Indicator de ignorat:

ignore-fluent-target-syntax

In Weblate, Fluent strings use Fluent syntax for references and variables, but also for more complex features like defining attributes and selector variants, including plurals. This check ensures that the syntax used in the translation will be valid for Fluent.

Șiruri de caractere formatate

Checks that the formatting in strings is replicated between both source and translation. Omitting format strings in translation usually causes severe problems, so the formatting in strings should usually match the source.

Weblate acceptă verificarea șirurilor de formate în mai multe limbi. Verificarea nu este activată în mod automat, ci doar dacă un șir de caractere este marcat în mod corespunzător (de exemplu, c-format pentru formatul C). Gettext adaugă această verificare în mod automat, dar probabil va trebui să o adăugați manual pentru alte formate de fișiere sau dacă fișierele PO nu sunt generate de xgettext.

Most of the format checks allow omitting format strings for plural forms having a single count. This allows translators to write nicer strings for these cases (One apple instead of %d apple). Turn this off by adding strict-format flag.

The flags can be customized per string (see Informații suplimentare despre șirurile sursă) or in a Configurația componentei. Having it defined per component is simpler, but it can lead to false positives in case the string is not interpreted as a formatting string, but format string syntax happens to be used.

Sugestie

În cazul în care verificarea unui format specific nu este disponibilă în Weblate, puteți utiliza genericul Substituenți.

Pe lângă verificare, acest lucru va evidenția, de asemenea, șirurile de formatare pentru a le insera cu ușurință în șirurile traduse:

../_images/format-highlight.webp

Șir de interpolare AngularJS

Sumar:

AngularJS interpolation strings do not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.angularjs.AngularJSInterpolationCheck

Identificatorul de verificare:

angularjs_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

angularjs-format

Indicator de ignorat:

ignore-angularjs-format

Exemplu de șir de formate cu nume:

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

Automattic components formatting

Sumar:

The Automattic components» placeholders do not match the source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.AutomatticComponentsCheck

Identificatorul de verificare:

automattic_components_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

automattic-components-format

Indicator de ignorat:

ignore-automattic-components-format

Exemplu simplu de șir de formate:

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

Format C

Sumar:

C format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.CFormatCheck

Identificatorul de verificare:

c_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

c-format

Indicator de ignorat:

ignore-c-format

Exemplu simplu de șir de formate:

There are %d apples

Exemplu de șir de formate de poziție:

Your balance is %1$d %2$s

Format C#

Sumar:

C# format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.CSharpFormatCheck

Identificatorul de verificare:

c_sharp_format

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Fișiere ResourceDictionary

Indicator de activare:

c-sharp-format, csharp-format

Indicator de ignorat:

ignore-c-sharp-format

Exemplu de șir de formate de poziție:

There are {0} apples

Literale șablon ECMAScript

Sumar:

ECMAScript template literals do not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.ESTemplateLiteralsCheck

Identificatorul de verificare:

es_format

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

draggable/i18n lang files

Indicator de activare:

es-format

Indicator de ignorat:

ignore-es-format

Exemplu de interpolare:

There are ${number} apples

Interpolare i18next

Added in version 4.0.

Sumar:

The i18next interpolation does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.I18NextInterpolationCheck

Identificatorul de verificare:

i18next_interpolation

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Fișiere i18next JSON, Fișiere i18next JSON

Indicator de activare:

i18next-interpolation

Indicator de ignorat:

ignore-i18next-interpolation

Exemplu de interpolare:

There are {{number}} apples

Exemplu de imbricare:

There are $t(number) apples

ICU MessageFormat

Added in version 4.9.

Sumar:

Erori de sintaxă și/sau nepotriviri de substituenți în șirurile ICU MessageFormat.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.icu.ICUMessageFormatCheck

Identificatorul de verificare:

icu_message_format

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Fișier ARB, Format.JS JSON file

Indicator de activare:

icu-message-format

Indicator de ignorat:

ignore-icu-message-format

Exemplu de interpolare:

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

Această verificare este compatibilă atât cu mesajele pur ICU MessageFormat, cât și cu ICU cu etichete XML simple. Puteți configura comportamentul acestei verificări utilizând icu-flags:*, fie prin optarea pentru suportul XML, fie prin dezactivarea anumitor subverificări. De exemplu, următorul indicator activează suportul XML, dar dezactivează validarea submesajelor cu plural:

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

xml

Activați suportul pentru etichete XML simple. În mod implicit, etichetele XML sunt analizate simplu. Caracterele < rătăcite sunt ignorate dacă nu fac parte în mod rezonabil dintr-o etichetă.

strict-xml

Activați suportul pentru etichete XML stricte. Toate caracterele < trebuie să fie evitate dacă nu fac parte dintr-o etichetă.

-highlight

Dezactivați evidențierea martorilor de poziție în editor.

-require_other

Dezactivarea cerinței ca mesajele secundare să aibă un selector other.

-submessage_selectors

Treceți peste verificarea faptului că selectorii de submesaj se potrivesc cu sursa.

-types

Treceți peste verificarea faptului că tipurile de caractere de tip placeholder corespund sursei.

-extra

Trece peste verificarea faptului că nu sunt prezente spații libere care nu erau prezente în șirul sursă.

-missing

Trece peste verificarea faptului că nu lipsesc caractere de poziție care erau prezente în șirul sursă.

În plus, atunci când strict-xml nu este activat, dar xml este activat, puteți utiliza indicatorul icu-tag-prefix:PREFIX pentru a solicita ca toate etichetele XML să înceapă cu un anumit șir de caractere. De exemplu, următorul indicator va permite ca etichetele XML să fie comparate numai dacă încep cu <x::

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

Acest lucru s-ar potrivi cu <x:link>click aici</x:link>, dar nu cu <strong>aceasta</strong>.

Format Java

Sumar:

Java format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.JavaFormatCheck

Identificatorul de verificare:

java_printf_format

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Resurse de șiruri Android, Resurse Mobile Kotlin, Compose Multiplatform resources

Indicator de activare:

java-printf-format

Indicator de ignorat:

ignore-java-printf-format

Exemplu simplu de șir de formate:

There are %d apples

Exemplu de șir de formate de poziție:

Your balance is %1$d %2$s

Schimbat în versiunea 4.14: This used to be toggled by the java-format flag, it was changed for consistency with GNU gettext.

MessageFormat Java

Sumar:

Java MessageFormat string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.JavaMessageFormatCheck

Identificatorul de verificare:

java_format

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Proprietăți Java, Proprietăți GWT

Indicator de activare:

auto-java-messageformat, java-format

Automatic flag behavior:

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

Indicator de ignorat:

ignore-java-format

Exemplu de șir de formate de poziție:

There are {0} apples

Schimbat în versiunea 4.14: Acest lucru era activat de steagul java-messageformat, dar a fost schimbat pentru a fi în concordanță cu GNU gettext.

This check validates that format string is valid for the Java MessageFormat class. Besides matching format strings in the curly braces, it also verifies single quotes as they have a special meaning. Whenever writing single quote, it should be written as ''. When not paired, it is treated as beginning of quoting and will not be shown when rendering the string.

Format JavaScript

Sumar:

JavaScript format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.JavaScriptFormatCheck

Identificatorul de verificare:

javascript_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

javascript-format

Indicator de ignorat:

ignore-javascript-format

Exemplu simplu de șir de formate:

There are %d apples

Laravel format

Sumar:

Laravel format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.LaravelFormatCheck

Identificatorul de verificare:

laravel_format

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Șiruri Laravel PHP

Indicator de activare:

laravel-format

Indicator de ignorat:

ignore-laravel-format

Exemplu de șir de formate cu nume:

The :attribute must be :value

Format Lua

Sumar:

Lua format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.LuaFormatCheck

Identificatorul de verificare:

lua_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

lua-format

Indicator de ignorat:

ignore-lua-format

Exemplu simplu de șir de formate:

There are %d apples

Format Object Pascal

Sumar:

Object Pascal format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.ObjectPascalFormatCheck

Identificatorul de verificare:

object_pascal_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

object-pascal-format

Indicator de ignorat:

ignore-object-pascal-format

Exemplu simplu de șir de formate:

There are %d apples

Objective-C format

Added in version 5.17.

Sumar:

Objective-C format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.ObjCFormatCheck

Identificatorul de verificare:

objc_format

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Șiruri Apple iOS, Format Stringsdict

Indicator de activare:

objc-format

Indicator de ignorat:

ignore-objc-format

Procentaj substituenți

Added in version 4.0.

Sumar:

The percent placeholders do not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.PercentPlaceholdersCheck

Identificatorul de verificare:

percent_placeholders

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

percent-placeholders

Indicator de ignorat:

ignore-percent-placeholders

Exemplu simplu de șir de formate:

There are %number% apples

Perl brace format

Sumar:

Perl brace format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.PerlBraceFormatCheck

Identificatorul de verificare:

perl_brace_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

perl-brace-format

Indicator de ignorat:

ignore-perl-brace-format

Exemplu de șir de formate cu nume:

There are {number} apples

Format Perl

Sumar:

Perl format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.PerlFormatCheck

Identificatorul de verificare:

perl_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

perl-format

Indicator de ignorat:

ignore-perl-format

Exemplu simplu de șir de formate:

There are %d apples

Exemplu de șir de formate de poziție:

Your balance is %1$d %2$s

Format PHP

Sumar:

PHP format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.PHPFormatCheck

Identificatorul de verificare:

php_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

php-format

Indicator de ignorat:

ignore-php-format

Exemplu simplu de șir de formate:

There are %d apples

Exemplu de șir de formate de poziție:

Your balance is %1$d %2$s

Format de acolade Python

Sumar:

Python brace format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.PythonBraceFormatCheck

Identificatorul de verificare:

python_brace_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

python-brace-format

Indicator de ignorat:

ignore-python-brace-format

Șir de format simplu:

There are {} apples

Exemplu de șir de formate cu nume:

Your balance is {amount} {currency}

Format Python

Sumar:

Python format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.PythonFormatCheck

Identificatorul de verificare:

python_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

python-format

Indicator de ignorat:

ignore-python-format

Șir de format simplu:

There are %d apples

Exemplu de șir de formate cu nume:

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

Format Qt

Sumar:

Qt format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.qt.QtFormatCheck

Identificatorul de verificare:

qt_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

qt-format

Indicator de ignorat:

ignore-qt-format

Exemplu de șir de formate de poziție:

There are %1 apples

Format plural Qt

Sumar:

Qt plural format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.qt.QtPluralCheck

Identificatorul de verificare:

qt_plural_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

qt-plural-format

Indicator de ignorat:

ignore-qt-plural-format

Exemplu de șir de formate la plural:

There are %Ln apple(s)

Format Ruby

Sumar:

Ruby format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.ruby.RubyFormatCheck

Identificatorul de verificare:

ruby_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

ruby-format

Indicator de ignorat:

ignore-ruby-format

Exemplu simplu de șir de formate:

There are %d apples

Exemplu de șir de formate de poziție:

Your balance is %1$f %2$s

Exemplu de șir de formate cu nume:

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

Șir de șabloane cu nume:

Your balance is %{amount} %{currency}

Format schemă

Sumar:

Scheme format string does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.SchemeFormatCheck

Identificatorul de verificare:

scheme_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

scheme-format

Indicator de ignorat:

ignore-scheme-format

Exemplu simplu de șir de formate:

There are ~d apples

Formatare Vue I18n

Sumar:

The Vue I18n formatting does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.format.VueFormattingCheck

Identificatorul de verificare:

vue_format

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

vue-format

Indicator de ignorat:

ignore-vue-format

Formatare cu nume:

There are {count} apples

Formatarea Rails i18n:

There are %{count} apples

Mesaje locale legate:

@:message.dio @:message.the_world!

A fost tradus

Sumar:

This string has been translated in the past.

Domeniu de aplicare:

toate șirurile de caractere

Verifică clasa:

weblate.checks.consistency.TranslatedCheck

Identificatorul de verificare:

translated

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-translated

Înseamnă că un șir a fost deja tradus. Acest lucru se poate întâmpla atunci când traducerile au fost anulate în VCS sau pierdute în alt mod.

Inconsecvent

Sumar:

Acest șir are mai multe traduceri în acest proiect sau este netradus în anumite componente.

Domeniu de aplicare:

toate șirurile de caractere

Verifică clasa:

weblate.checks.consistency.ConsistencyCheck

Identificatorul de verificare:

inconsistent

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-inconsistent

Weblate verifică traducerile aceluiași șir de caractere în toate traducerile din cadrul unui proiect pentru a vă ajuta să păstrați coerența traducerilor.

Verificarea eșuează în cazul traducerilor diferite ale unui șir de caractere în cadrul unui proiect. Acest lucru poate duce, de asemenea, la neconcordanțe în verificările afișate. Puteți găsi alte traduceri ale acestui șir de caractere în fila Other occurrences.

Această verificare se aplică tuturor componentelor dintr-un proiect care au activată opțiunea Permite propagarea traducerii.

Sugestie

Din motive de performanță, este posibil ca verificarea să nu găsească toate neconcordanțele, ci limitează numărul de rezultate.

Notă

Această verificare se declanșează și în cazul în care șirul este tradus într-o componentă și nu în alta. Poate fi utilizată ca o modalitate rapidă de a gestiona manual șirurile de caractere care nu sunt traduse în anumite componente, făcând clic pe butonul Utilizează această traducere afișat pe fiecare linie din fila Alte ocurențe.

Puteți utiliza add-onul Traducere automată pentru a automatiza traducerea șirurilor nou adăugate care sunt deja traduse într-o altă componentă.

Inconsistent reStructuredText

Added in version 5.10.

Sumar:

Inconsistent reStructuredText markup in the translated message.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.RSTReferencesCheck

Identificatorul de verificare:

rst-references

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

rst-text

Indicator de ignorat:

ignore-rst-references

reStructuredText term references or other markup do not match source, the typical causes for these errors are:

  • Mismatched or missing backticks.

  • Missing spaces or interpunction around the reference. The reStructuredText inline blocks need to be separated by non-word characters.

  • Space between inline tag and backticks.

  • The reference name is not being translated.

  • Using quotes instead of backticks.

  • Mismatched substitutions or footnote references.

Literă Kashida folosită

Sumar:

The decorative kashida letters should not be used.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.KashidaCheck

Identificatorul de verificare:

kashida

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-kashida

Literele decorative Kashida nu ar trebui să fie folosite în traducere. Acestea sunt cunoscute și sub numele de Tatweel.

Referințe Markdown

Sumar:

Referințele de legătură Markdown nu se potrivesc cu sursa.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.MarkdownRefLinkCheck

Identificatorul de verificare:

md-reflink

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Fișiere Markdown, MDX files

Indicator de activare:

md-text

Indicator de ignorat:

ignore-md-reflink

Referințele de legătură Markdown nu se potrivesc cu sursa.

Vezi și

Markdown links

Sintaxă Markdown

Sumar:

Markdown syntax does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.MarkdownSyntaxCheck

Identificatorul de verificare:

md-syntax

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Fișiere Markdown, MDX files

Indicator de activare:

md-text

Indicator de ignorat:

ignore-md-syntax

Sintaxa Markdown nu se potrivește cu sursa

Vezi și

Markdown inlines

Lungime maximă a traducerii

Sumar:

Translation should not exceed given length.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.MaxLengthCheck

Identificatorul de verificare:

max-length

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

max-length

Indicator de ignorat:

ignore-max-length

Verifică dacă traducerile au o lungime acceptabilă pentru a se potrivi cu spațiul disponibil. Se verifică numai lungimea caracterelor de traducere.

Spre deosebire de celelalte verificări, indicatorul trebuie setat ca o pereche key:value, cum ar fi max-length:100.

Sugestie

Această verificare se uită la numărul de caractere, ceea ce ar putea să nu fie cea mai bună măsură atunci când se utilizează fonturi proporționale pentru a reda textul. Verificarea Dimensiune maximă a traducerii verifică redarea efectivă a textului.

Indicatorul replacements: ar putea fi de asemenea util pentru a extinde elementele care pot fi plasate înainte de a verifica șirul.

În cazul în care se utilizează și indicatorul xml-text, calculul lungimii ignoră etichetele XML.

Dimensiune maximă a traducerii

Sumar:

Translation rendered text should not exceed given size.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.render.MaxSizeCheck

Identificatorul de verificare:

max-size

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

max-size

Indicator de ignorat:

ignore-max-size

Textul redat în traducere nu trebuie să depășească dimensiunea dată. Aceasta redă textul cu înfășurarea liniilor și verifică dacă acesta se încadrează în limitele date.

Această verificare are nevoie de unul sau doi parametri - lățimea maximă și numărul maxim de linii. În cazul în care numărul de rânduri nu este furnizat, se ia în considerare un text de un rând.

De asemenea, puteți configura fontul utilizat prin directivele font-* (a se vedea Personalizarea comportamentului cu ajutorul stegulețelor), de exemplu, următoarele indicatori de traducere spun că textul redat cu fontul ubuntu de dimensiune 22 trebuie să încapă pe două linii și 500 de pixeli:

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

Sugestie

Este posibil să doriți să setați directivele font-* în Configurația componentei pentru a avea același font configurat pentru toate șirurile de caractere dintr-o componentă. Puteți suprascrie aceste valori pentru fiecare șir de caractere, în cazul în care aveți nevoie să le personalizați pentru fiecare șir.

Indicatorul replacements: ar putea fi de asemenea util pentru a extinde elementele care pot fi plasate înainte de a verifica șirul.

În cazul în care se utilizează și indicatorul xml-text, calculul lungimii ignoră etichetele XML.

Nepotrivit \n

Sumar:

Number of \n literals in translation does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EscapedNewlineCountingCheck

Identificatorul de verificare:

escaped_newline

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-escaped-newline

Usually escaped newlines are important for formatting program output. Check fails if the number of \n literals in translation does not match the source.

Două puncte nepotrivite

Sumar:

Source and translation do not both end with a colon.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndColonCheck

Identificatorul de verificare:

end_colon

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-colon

Verifică dacă colonele sunt replicate atât între sursă, cât și între traducere. Prezența coloneilor este, de asemenea, verificată pentru diferite limbi în care nu au ce căuta (chineză sau japoneză).

Elipsă nepotrivită

Sumar:

Source and translation do not both end with an ellipsis.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndEllipsisCheck

Identificatorul de verificare:

end_ellipsis

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-ellipsis

Verifică dacă elipsele de urmărire sunt reproduse atât la sursă, cât și la traducere. Se verifică numai pentru elipsele reale (...), nu pentru trei puncte (...).

O elipsă este, de obicei, redată mai frumos decât trei puncte în scris și sună mai bine în text-to-speech.

Semn exclamare nepotrivit

Sumar:

Source and translation do not both end with an exclamation mark.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndExclamationCheck

Identificatorul de verificare:

end_exclamation

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-exclamation

Verifică dacă exclamațiile sunt reproduse între sursă și traducere. Prezența semnelor de exclamare este, de asemenea, verificată pentru diferite limbi în care acestea nu își au locul (chineză, japoneză, coreeană, armeană, limbu, Myanmar sau Nko).

Punct final nepotrivit

Sumar:

Source and translation do not both end with a full stop.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndStopCheck

Identificatorul de verificare:

end_stop

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-stop

Verifică dacă punctele de suspensie sunt reproduse atât la sursă, cât și la traducere. Prezența punctelor de suspensie este verificată pentru diferite limbi în care acestea nu au ce căuta (chineză, japoneză, devanagari sau urdu).

Mismatched interrobang

Sumar:

Source and translation do not both end with an interrobang expression.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndInterrobangCheck

Identificatorul de verificare:

end_interrobang

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-interrobang

Checks that interrobang marks are replicated between both source and translation. It allows the swap between „!?” and „?!”.

Semn de întrebare nepotrivit

Sumar:

Source and translation do not both end with a question mark.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndQuestionCheck

Identificatorul de verificare:

end_question

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-question

Verifică dacă semnele de întrebare sunt reproduse atât la sursă, cât și la traducere. Prezența semnelor de întrebare este, de asemenea, verificată pentru diferite limbi în care acestea nu își au locul (armeană, arabă, chineză, coreeană, japoneză, etiopiană, vai sau coptă).

Punct și virgulă nepotrivit

Sumar:

Source and translation do not both end with a semicolon.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndSemicolonCheck

Identificatorul de verificare:

end_semicolon

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-semicolon

Verifică dacă punctele și virgulele de la sfârșitul propozițiilor sunt reproduse atât în sursă, cât și în traducere.

Întreruperi de linie nepotrivite

Sumar:

Number of new lines in translation does not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.NewLineCountCheck

Identificatorul de verificare:

newline-count

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-newline-count

De obicei, liniile noi sunt importante pentru formatarea ieșirii programului. Verificarea eșuează dacă numărul de linii noi în traducere nu se potrivește cu sursa.

Lipsește plural

Sumar:

Some plural forms are untranslated.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.consistency.PluralsCheck

Identificatorul de verificare:

plurals

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-plurals

Verifică dacă toate formele de plural ale unui șir sursă au fost traduse. Detaliile privind modul în care este utilizată fiecare formă de plural se găsesc în definiția șirului.

Dacă nu se completează formele de plural, în unele cazuri nu se va afișa nimic atunci când forma de plural este utilizată.

Multiple capitals

Added in version 5.16.

Sumar:

Translation contains words with multiple misplaced capital letters.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.MultipleCapitalCheck

Identificatorul de verificare:

multiple_capital

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-multiple-capital

Checks for misplaced capitalization by detecting words that contain consecutive uppercase letters in otherwise lowercase or normally capitalized text (for example, HEllo or CAmelCase). Strings that contain capitalization in the source string are allowed to contain capitalization in the translation.

Non‑standard characters in Kabyle

Added in version 5.12.

Sumar:

Use standardized Latin Kabyle characters (e.g. ɣ instead of Greek γ; ɛ instead of ε).

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.KabyleCharactersCheck

Identificatorul de verificare:

kabyle-characters

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-kabyle-characters

Checks that Kabyle translations use correct Kabyle letters and not similar Greek ones, which were often used before Kabyle characters were standardized in Unicode.

Substituenți

Schimbat în versiunea 4.3: Puteți utiliza o expresie regulată ca spațiu liber.

Schimbat în versiunea 4.13: Cu indicatorul case-insensitive, caracterele de poziție nu sunt sensibile la majuscule și minuscule.

Sumar:

Translation is missing some placeholders.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.placeholders.PlaceholderCheck

Identificatorul de verificare:

placeholders

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

placeholders

Indicator de ignorat:

ignore-placeholders

Traducerea lipsește unele caractere de poziție. Acestea sunt fie extrase din fișierul de traducere, fie definite manual cu ajutorul steagului placeholders, mai multe pot fi separate prin două puncte, iar șirurile de caractere cu spațiu pot fi citate:

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

În cazul în care aveți o anumită sintaxă pentru caractere de poziție, puteți utiliza o expresie regulată:

placeholders:r"%[^% ]%"

Puteți avea, de asemenea, marcaje nesensibile la majuscule și minuscule:

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

Prohibited initial character

Added in version 5.9.

Sumar:

The string starts with a prohibited character in CSV.

Domeniu de aplicare:

glossary strings

Verifică clasa:

weblate.checks.glossary.ProhibitedInitialCharacterCheck

Identificatorul de verificare:

prohibited_initial_character

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-prohibited-initial-character

The glossary is often shared as CSV and using some characters at the beginning is restricted by many applications as these can cause the text being evaluated as an expression. This also affects Glossaries in automatic suggestion where many services use CSV for synchronizing glossaries and reject such strings.

Spațiere punctuație

Schimbat în versiunea 5.10: This check used to apply to Breton language as well, but it was limited to French only.

Sumar:

Missing non breakable space before double punctuation sign.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.PunctuationSpacingCheck

Identificatorul de verificare:

punctuation_spacing

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-punctuation-spacing

Checks that there is non breakable space before double punctuation sign (exclamation mark, question mark, semicolon and colon). This rule is used only in a few selected languages like French, where space before double punctuation sign is a typographic rule.

Expresie regulată

Schimbat în versiunea 5.10: Extended support for advanced regular expressions including Unicode codepoint properties.

Sumar:

Translation does not match regular expression.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.placeholders.RegexCheck

Identificatorul de verificare:

regex

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

regex

Indicator de ignorat:

ignore-regex

Traducerea nu se potrivește cu expresia regulată. Expresia este fie extrasă din fișierul de traducere, fie definită manual cu ajutorul indicatorului regex:

regex:^foo|bar$

The matching also supports Unicode codepoint properties, including scripts and blocks:

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

Sugestie

Use Substituenți for detecting missing placeholders in the string.

reStructuredText syntax error

Added in version 5.10.

Sumar:

reStructuredText syntax error in the translation.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.RSTSyntaxCheck

Identificatorul de verificare:

rst-syntax

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

rst-text

Indicator de ignorat:

ignore-rst-syntax

reStructuredText syntax error in the translation. Issues to look for:

  • Mismatched closing/opening tags.

  • Missing spaces or interpunction around the reference. The reStructuredText inline blocks need to be separated by non-word characters.

  • Using quotes instead of backticks.

Traducere refolosită

Added in version 4.18.

Sumar:

Diferite șiruri sunt traduse la fel.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.consistency.ReusedCheck

Identificatorul de verificare:

reused

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-reused

Check that fails if the same translation is used on different source strings. Such translations can be intentional, but can also confuse users.

Aceleași plurale

Sumar:

Some plural forms are translated in the same way.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.consistency.SamePluralsCheck

Identificatorul de verificare:

same-plurals

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-same-plurals

Verificare care eșuează în cazul în care unele forme de plural sunt duplicate în traducere. În majoritatea limbilor, acestea trebuie să fie diferite.

Începe linie nouă

Sumar:

Source and translation do not both start with a newline.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.BeginNewlineCheck

Identificatorul de verificare:

begin_newline

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-begin-newline

De obicei, liniile de început apar în șirurile sursă pentru un motiv întemeiat; omisiunile sau adăugările pot duce la probleme de formatare atunci când textul tradus este utilizat.

Spații de pornire

Sumar:

Source and translation do not both start with same number of spaces.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.BeginSpaceCheck

Identificatorul de verificare:

begin_space

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-begin-space

Un spațiu la începutul unui șir de caractere este de obicei utilizat pentru indentare în interfață și, prin urmare, este important să fie păstrat.

Linie nouă de urmărire

Sumar:

Source and translation do not both end with a newline.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndNewlineCheck

Identificatorul de verificare:

end_newline

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-newline

De obicei, liniile de început apar în șirurile sursă pentru un motiv întemeiat; omisiunile sau adăugările pot duce la probleme de formatare atunci când textul tradus este utilizat.

Spațiu de urmărire

Sumar:

Source and translation do not both end with a space.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.EndSpaceCheck

Identificatorul de verificare:

end_space

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-end-space

Verifică dacă spațiile din urmă sunt reproduse atât la sursă, cât și la traducere.

Spațiul final este, de obicei, utilizat pentru a distanța elementele vecine, astfel încât eliminarea lui ar putea afecta aspectul.

Traducere neschimbată

Sumar:

Source and translation are identical.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.same.SameCheck

Identificatorul de verificare:

same

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-same

Happens if the source and corresponding translation strings are identical, down to at least one of the plural forms. Some strings commonly found across all languages are ignored, and various markups are stripped. This reduces the number of false positives.

Această verificare poate ajuta la găsirea șirurilor de caractere netraduse din greșeală.

The default behavior of this check is to exclude words from the built-in terms list from the checking. These are words which are frequently not being translated. This is useful to avoid false positives on short strings, which consist only of a single word which is the same in several languages. This list can be disabled by adding strict-same flag to a string or component.

Schimbat în versiunea 4.17: With check-glossary flag (see Nu respectă glosarul), the untranslatable glossary terms are excluded from the checking.

HTML nesigur

Sumar:

The translation uses unsafe HTML markup.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.SafeHTMLCheck

Identificatorul de verificare:

safe-html

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Fișiere HTML, Fișiere Markdown, MDX files, AsciiDoc files

Indicator de activare:

auto-safe-html, safe-html

Automatic flag behavior:

auto-safe-html: Treat a text as conditional HTML, enabling HTML nesigur 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.

Indicator de ignorat:

ignore-safe-html

Traducerea utilizează marcaje HTML nesigure. Această verificare trebuie să fie activată cu ajutorul steagului safe-html (a se vedea Personalizarea comportamentului cu ajutorul stegulețelor). Există, de asemenea, un autofixer însoțit care poate curăța automat marcajul.

Sugestie

În cazul în care se utilizează și steagul md-text, sunt permise și legăturile în stil Markdown.

Vezi și

The HTML check is performed by the Ammonia library.

URL

Sumar:

The translation does not contain a URL.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.URLCheck

Identificatorul de verificare:

url

Trigger:

This check needs to be enabled using a flag.

Indicator de activare:

url

Indicator de ignorat:

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.

Marcaj XML

Sumar:

XML tags in translation do not match source.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.XMLTagsCheck

Identificatorul de verificare:

xml-tags

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-xml-tags

Acest lucru înseamnă, de obicei, că rezultatul va arăta diferit. În cele mai multe cazuri, acesta nu este un rezultat dorit în urma modificării traducerii, dar ocazional este.

Verifică dacă etichetele XML sunt reproduse între sursă și traducere.

The check is automatically enabled for XML like strings. You might need to add xml-text flag in some cases to force turning it on.

Notă

Această verificare este dezactivată de indicatorul safe-html, deoarece curățarea HTML efectuată de acesta poate produce marcaje HTML care nu sunt XML valide.

Sintaxă XML

Sumar:

The translation is not valid XML.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.markup.XMLValidityCheck

Identificatorul de verificare:

xml-invalid

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-xml-invalid

Marcajul XML nu este valid.

The check is automatically enabled for XML like strings. You might need to add xml-text flag in some cases to force turning it on.

Notă

Această verificare este dezactivată de indicatorul safe-html, deoarece curățarea HTML efectuată de acesta poate produce marcaje HTML care nu sunt XML valide.

Spațiu cu lățime zero

Sumar:

Translation contains extra zero-width space character.

Domeniu de aplicare:

șiruri traduse

Verifică clasa:

weblate.checks.chars.ZeroWidthSpaceCheck

Identificatorul de verificare:

zero-width-space

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-zero-width-space

Caracterele de spațiu de lățime zero (<U+200B>) sunt utilizate pentru a întrerupe mesajele în cadrul cuvintelor (word wrapping).

Deoarece acestea sunt de obicei inserate din greșeală, această verificare este declanșată odată ce sunt prezente în traducere. Unele programe ar putea avea probleme atunci când se utilizează acest caracter.

Verificări la sursă

Verificările sursei pot ajuta dezvoltatorii să îmbunătățească calitatea șirurilor sursă.

Elipsă

Sumar:

The string uses three dots (...) instead of an ellipsis character (…).

Domeniu de aplicare:

șiruri de surse

Verifică clasa:

weblate.checks.source.EllipsisCheck

Identificatorul de verificare:

ellipsis

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-ellipsis

Acest lucru eșuează atunci când șirul folosește trei puncte (...) când ar trebui să folosească un caracter de elipsă (...).

Utilizarea caracterului Unicode este, în majoritatea cazurilor, cea mai bună abordare și are un aspect mai bine redat și poate suna mai bine cu text-to-speech.

Sursă Fluent internă HTML

Added in version 5.0.

Sumar:

Fluent source should be valid inner HTML.

Domeniu de aplicare:

șiruri de surse

Verifică clasa:

weblate.checks.fluent.inner_html.FluentSourceInnerHTMLCheck

Identificatorul de verificare:

fluent-source-inner-html

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Format fluent

Indicator de activare:

fluent-source-inner-html

Indicator de ignorat:

ignore-fluent-source-inner-html

Fluent is often used in contexts where the value for a Message (or Term) is meant to be used directly as .innerHTML (rather than .textContent) for some HTML element. For example, when using the Fluent DOM package.

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.

This check is applied to the value of Fluent Messages or Terms, but not their Attributes. For Messages, the Fluent Attributes are often just HTML attribute values, so can be arbitrary strings. For Terms, the Fluent Attributes are often language properties that can only be referenced in the selectors of Fluent Select Expressions.

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.

Moreover, for the Fluent values that intentionally contain HTML tags or character references, this check will verify some „good practices”, such as matching closing and ending tags, valid character references, and quoted attribute values. In addition, whilst the HTML5 specification technically allows for quite arbitrary tag and attribute names, this check will restrain them to some basic ASCII values that should cover the standard HTML5 element tags and attributes, as well as allow some custom element or attribute names. This is partially to ensure that the user is using HTML intentionally.

Examples:

Fluent inner HTML examples

Valoare

Warns?

Reason

three<four

da

The <four part would be lost as .innerHTML.

three < four

nu

The .innerHTML would match the .textContent.

three <four>

da

Missing a closing tag.

three <four/>

da

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

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

nu

Custom element tag with a matching closing tag.

a <img/> b

nu

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

a <br> b

nu

br is an HTML void element.

<img class=a/>

da

The attribute value is not quoted.

<aØ attr=''/>

da

Non-ASCII tag name.

kind&ethical

da

The &eth part would be converted to ð.

kind&eth;ical

nu

The character reference seems to be intentional.

three&lte;four

da

The &lte; part would be converted to <e;.

three&lf;four

da

The character reference is not valid.

three<{ $val }

da

The Fluent variable may unintentionally become a tag.

&l{ $val }

da

The Fluent variable may unintentionally become a character reference.

Notă

This check will not ensure the inner HTML is safe or sanitized, and is not meant to protect against malicious attempts to alter the inner HTML. Moreover, it should be remembered that Fluent variables and references may expand to arbitrary strings, so could expand to arbitrary HTML unless they are escaped. As an exception, a < or & character before a Fluent reference will trigger this check since even an escaped value could lead to unexpected results.

Notă

The Fluent DOM package has further limitations, such as allowed tags and attributes, which this check will not enforce.

Sintaxă sursă Fluent

Added in version 5.0.

Sumar:

Fluent syntax error in the source.

Domeniu de aplicare:

șiruri de surse

Verifică clasa:

weblate.checks.fluent.syntax.FluentSourceSyntaxCheck

Identificatorul de verificare:

fluent-source-syntax

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Format fluent

Indicator de activare:

fluent-source-syntax

Indicator de ignorat:

ignore-fluent-source-syntax

In Weblate, Fluent strings use Fluent syntax for references and variables, but also for more complex features like defining attributes and selector variants, including plurals. This check ensures that the syntax used in source will be valid for Fluent.

Sintaxă ICU MessageFormat

Added in version 4.9.

Sumar:

Erori de sintaxă în șirurile ICU MessageFormat.

Domeniu de aplicare:

șiruri de surse

Verifică clasa:

weblate.checks.icu.ICUSourceCheck

Identificatorul de verificare:

icu_message_format_syntax

Trigger:

This check needs to be enabled using a flag.

File formats automatically enabling this check:

Fișier ARB, Format.JS JSON file

Indicator de activare:

icu-message-format

Indicator de ignorat:

ignore-icu-message-format

Mult timp netradus

Added in version 4.1.

Sumar:

The string has not been translated for a long time.

Domeniu de aplicare:

șiruri de surse

Verifică clasa:

weblate.checks.source.LongUntranslatedCheck

Identificatorul de verificare:

long_untranslated

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-long-untranslated

Atunci când șirul nu a fost tradus de mult timp, acest lucru poate indica o problemă în șirul sursă care face dificilă traducerea acestuia.

Mai multe verificări eșuate

Sumar:

The translations in several languages have failing checks.

Domeniu de aplicare:

șiruri de surse

Verifică clasa:

weblate.checks.source.MultipleFailingCheck

Identificatorul de verificare:

multiple_failures

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-multiple-failures

Numeroase traduceri ale acestui șir de caractere au eșuat la controalele de calitate. Acesta este, de obicei, un indiciu că se poate face ceva pentru a îmbunătăți șirul sursă.

Acest eșec al verificării poate fi cauzat destul de des de un punct de suspensie lipsă la sfârșitul unei propoziții sau de probleme minore similare pe care traducătorii au tendința de a le rezolva în traducere, în timp ce ar fi mai bine să le rezolve în șirul sursă.

Variabile multiple fără nume

Added in version 4.1.

Sumar:

Există mai multe variabile fără nume în șirul de caractere, ceea ce face imposibilă reordonarea acestora de către traducători.

Domeniu de aplicare:

șiruri de surse

Verifică clasa:

weblate.checks.format.MultipleUnnamedFormatsCheck

Identificatorul de verificare:

unnamed_format

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-unnamed-format

Există mai multe variabile fără nume în șirul de caractere, ceea ce face imposibilă reordonarea acestora de către traducători.

Luați în considerare utilizarea variabilelor numite pentru a permite traducătorilor să le reordoneze.

Fără plural

Sumar:

The string is used as plural, but not using plural forms.

Domeniu de aplicare:

șiruri de surse

Verifică clasa:

weblate.checks.source.OptionalPluralCheck

Identificatorul de verificare:

optional_plural

Trigger:

This check is always enabled but can be ignored using a flag.

Indicator de ignorat:

ignore-optional-plural

Șirul este folosit ca plural, dar nu folosește forme de plural. În cazul în care sistemul vostru de traducere suportă acest lucru, ar trebui să folosiți varianta conștientă de plural a acestuia.

De exemplu, cu Gettext în Python ar putea fi:

from gettext import ngettext

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

Placeables in automatic suggestion

Checks for placeables expose information on current placeables and this can be used to instruct automatic suggestion engines to keep them. The support for this varies in different services and in many cases there is no way to enforce keeping placeables intact.