Comprovacions i correccions¶
The quality checks help catch common translator errors, ensuring the translation is in good shape. The checks can be ignored in case of false positives. For practical translation guidance around placeholders, markup, punctuation, and plural forms, see Translating special text safely.
Un cop enviada una traducció amb una comprovació fallida, això es mostra immediatament a l’usuari:
Correccions automàtiques¶
A més de Controls de qualitat, Weblate pot corregir alguns errors habituals a les cadenes traduïdes automàticament. Utilitzeu-lo amb precaució per no afegir errors.
Vegeu també
Trailing ellipsis replacer¶
- Class name:
weblate.trans.autofixes.chars.ReplaceTrailingDotsWithEllipsis
Substituïu els punts finals (...) per uns punts suspensius (…) perquè sigui coherent amb la cadena d’origen.
Zero-width space removal¶
- Class name:
weblate.trans.autofixes.chars.RemoveZeroSpace
Normalment no es desitja un espai d’amplada zero a la traducció. Aquesta correcció l’eliminarà tret que també estigui present a la cadena d’origen.
Control characters removal¶
- Class name:
weblate.trans.autofixes.chars.RemoveControlChars
Elimina els caràcters de control si la font no en conté.
Barra devanagari¶
- Class name:
weblate.trans.autofixes.chars.DevanagariDanda
Substitueix el punt final de la frase en Bangla pel caràcter Devanagari danda (।).
Espaiat de la puntuació¶
- Class name:
weblate.trans.autofixes.chars.PunctuationSpacing
Afegit a la versió 5.3.
Assegura que el francès utilitza l’espai de puntuació correcte.
Aquesta correcció es pot desactivar mitjançant el senyalador ignore-punctuation-spacing (que també desactiva Espaiat de la puntuació).
Unsafe HTML cleanup¶
- Class name:
weblate.trans.autofixes.html.BleachHTML
Elimina el marcatge HTML no segur de les cadenes marcades com a safe-html.
Vegeu també
Trailing and leading whitespace fixer¶
- Class name:
weblate.trans.autofixes.whitespace.SameBookendingWhitespace
Fa que els espais en blanc inicials i finals siguin coherents amb la cadena d’origen. El comportament es pot ajustar amb els senyaladors ignore-begin-space i ignore-end-space per saltar el processament de parts de la cadena.
Controls de qualitat¶
Weblate utilitza una àmplia gamma de controls de qualitat a les cordes. La secció següent els descriu tots amb més detall. També hi ha controls específics d’idioma. Si us plau, envieu un error si s’informa d’algun error.
Comprovacions de traducció¶
S’executa a cada canvi de traducció, ajudant els traductors a mantenir traduccions de bona qualitat.
Accelerator key¶
Afegit a la versió 2026.7.
- Resum:
Source and translation contain inconsistent accelerator keys.
- Abast:
translated strings
- Check class:
weblate.checks.chars.AcceleratorKeyCheck- Check identifier:
accelerator- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
accelerator- Marca per ignorar:
ignore-accelerator
Accelerator keys (also known as mnemonics) let users trigger a UI action from
the keyboard. They are marked in the string by a single punctuation character,
typically & (Qt, Windows), _ (GTK), or ~. Literal marker characters
can usually be escaped by doubling them, and are ignored by this check. Enable
this check with the accelerator: flag to explicitly choose the marker, for
example accelerator:&, accelerator:_, or accelerator:~.
This check verifies that the source and the translation contain the same number of accelerator keys, and that the translation does not contain more than one.
Nota
A string such as Walter & Sons might be translated without the
ampersand and trigger a false positive. Use the ignore-accelerator
flag to skip the check for such strings.
AsciiDoc markup¶
Afegit a la versió 2026.8.
- Resum:
AsciiDoc markup does not match source.
- Abast:
translated strings
- Check class:
weblate.checks.markup.AsciiDocMarkupCheck- Check identifier:
asciidoc-markup- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
asciidoc-text- Marca per ignorar:
ignore-asciidoc-markup
This check compares the markups found in the source with the markups found in the translation. It includes:
inline and block macros (e.g.
link:andimage::)cross-references (
<<id>>)passthroughs (e.g.
+++...+++,$$...$$)
Macro attribute text and cross-reference labels may be translated; the macro name, target, and reference identifier must stay the same in both the source and the translation.
Sintaxi de BBCode¶
Canviat a la versió 5.10: Aquesta comprovació ja no depèn d’una detecció automàtica poc fiable, ara s’ha d’activar mitjançant la marca bbcode-text.
- Resum:
El BBCode de la traducció no coincideix amb el d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.markup.BBCodeCheck- Check identifier:
bbcode- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
bbcode-text- Marca per ignorar:
ignore-bbcode
El BBCode representa un etiquetatge senzill, com, per exemple, ressaltar les parts importants d’un missatge en negreta o en cursiva.
Aquesta comprovació garanteix que també es trobin en traducció.
Nota
El mètode per detectar el BBCode és actualment bastant senzill, de manera que aquesta comprovació pot produir falsos positius.
Paraules duplicades consecutives¶
Afegit a la versió 4.1.
- Resum:
El text conté la mateixa paraula dues vegades seguides.
- Abast:
translated strings
- Check class:
weblate.checks.duplicate.DuplicateCheck- Check identifier:
duplicate- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-duplicate
Comprova que no hi hagi paraules duplicades consecutives en una traducció. Això sol indicar un error en la traducció.
Suggeriment
This check includes language specific rules to avoid false positives. In case it triggers falsely in your case, let us know. See Informeu de problemes a Weblate.
No s’ajusta al glossari¶
Afegit a la versió 4.5.
- Resum:
La traducció no s’ajusta als termes definits en un glossari.
- Abast:
translated strings
- Check class:
weblate.checks.glossary.GlossaryCheck- Check identifier:
check_glossary- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
check-glossary- Marca per ignorar:
ignore-check-glossary
Aquesta comprovació s’ha d’activar utilitzant el senyalador check-glossary (vegeu Personalització del comportament mitjançant banderes). Si us plau, considereu el següent abans d’activar-lo:
Fa una coincidència exacta de cadenes, s’espera que el glossari contingui termes en totes les variants.
Comprovar cada cadena amb el glossari és car, alentirà qualsevol operació a Weblate que impliqui comprovacions com importar cadenes o traduir.
També utilitza termes de glossari no traduïbles a Traducció no modificada.
Espai doble¶
- Resum:
La traducció conté un espai doble.
- Abast:
translated strings
- Check class:
weblate.checks.chars.DoubleSpaceCheck- Check identifier:
double_space- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-double-space
Comprova que hi hagi doble espai a la traducció per evitar falsos positius en altres comprovacions relacionades amb l’espai.
La verificació és falsa quan es troba un espai doble a la font, el que significa que el doble espai és intencionat.
Parts de Fluent¶
Afegit a la versió 5.0.
- Resum:
Les parts Fluent haurien de coincidir.
- Abast:
translated strings
- Check class:
weblate.checks.fluent.parts.FluentPartsCheck- Check identifier:
fluent-parts- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
fluent-parts- Marca per ignorar:
ignore-fluent-parts
Cada missatge fluid pot tenir un valor opcional (el contingut del text principal) i atributs opcionals, cadascun dels quals és una «part» del missatge. A Weblate, totes aquestes parts apareixen dins del mateix bloc, utilitzant una sintaxi semblant a Fluent per especificar els atributs. Per exemple:
This is the Message value
.title = This is the title attribute
.alt = This is the alt attribute
Aquesta comprovació assegura que el Missatge traduït també té un valor si el Missatge font en té un, o cap valor si la font no en té. Això també comprova que els mateixos atributs utilitzats al missatge font també apareixen a la traducció, sense cap addició.
Nota
Aquesta comprovació no s’aplica als termes fluids, ja que els termes sempre tenen un valor i els atributs dels termes solen ser específics de la localització (utilitzats per a regles gramaticals, etc.) i no s’espera que apareguin a totes les traduccions.
Vegeu també
Referències de Fluent¶
Afegit a la versió 5.0.
- Resum:
Les referències Fluent haurien de coincidir.
- Abast:
translated strings
- Check class:
weblate.checks.fluent.references.FluentReferencesCheck- Check identifier:
fluent-references- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
fluent-references- Marca per ignorar:
ignore-fluent-references
Un missatge o terme fluid pot fer referència a un altre missatge, terme, atribut o variable. Per exemple:
Here is a { message }, a { message.attribute } a { -term } and a { $variable }.
Within a function { NUMBER($num, minimumFractionDigits: 2) }
En general, s’espera que els Missatges o Termes traduïts continguin les mateixes referències que la font, encara que no necessàriament en el mateix ordre d’aparició. Per tant, aquesta comprovació garanteix que les traduccions utilitzen les mateixes referències en el seu valor que el valor d’origen, el mateix nombre de vegades i sense addicions. Per als missatges, això també comprovarà que cada atribut de la traducció utilitza les mateixes referències que l’atribut coincident a la font.
Quan la font o la traducció conté expressions de selecció fluida, cada variant possible de la font s’ha de relacionar com a mínim amb una variant de la traducció amb les mateixes referències, i viceversa.
A més, si una referència variable apareix tant al selector de l’expressió de selecció com dins d’una de les seves variants, llavors totes les variants també es poden considerar com si també continguessin aquesta referència. La hipòtesi és que la clau de la variant pot haver fet que la referència sigui redundant per a aquesta variant. Per exemple:
{ $num ->
[one] an apple
*[other] { $num } apples
}
Aquí, per als propòsits d’aquesta comprovació, també es considerarà que la variant [one] conté la referència $num.
Tanmateix, una referència dins del selector de l’expressió de selecció, que només pot ser una variable d’un atribut de terme en la sintaxi de Fluent, no comptarà per si mateixa com a referència necessària perquè no formen el contingut de text real de la cadena que veurà l’usuari final i la presència d’una expressió de selecció es considera específica de la configuració regional. Per exemple:
{ -term.starts-with-vowel ->
[yes] an { -term }
*[no] a { -term }
}
Aquí no s’espera que aparegui una referència a -term.starts-with-vowel a les traduccions, però sí una referència a -term.
HTML interior de la traducció de Fluent¶
Afegit a la versió 5.0.
- Resum:
La destinació Fluent hauria de ser HTML interior que coincidís.
- Abast:
translated strings
- Check class:
weblate.checks.fluent.inner_html.FluentTargetInnerHTMLCheck- Check identifier:
fluent-target-inner-html- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
fluent-target-inner-html- Marca per ignorar:
ignore-fluent-target-inner-html
Aquesta comprovació verificarà que el valor traduït d’un missatge o terme conté els mateixos elements HTML que el valor d’origen.
En primer lloc, si el valor d’origen falla la comprovació HTML interior de l’origen Fluent, aquesta comprovació no farà res. En cas contrari, el valor traduït també es comprovarà amb les mateixes condicions.
En segon lloc, els elements HTML que es troben al valor traduït es compararan amb els elements HTML que es troben al valor font. Dos elements coincidiran si comparteixen exactament el mateix nom d’etiqueta, els mateixos atributs i valors, i tots els seus avantpassats coincideixen de la mateixa manera. Aquesta comprovació garantirà que tots els elements de la font apareguin en algun lloc de la traducció, amb el mateix nombre d’aparences i sense elements addicionals afegits. Quan hi ha diversos elements al valor, no cal que apareguin en el mateix ordre en el valor de traducció.
Quan la font o la traducció conté expressions de selecció fluida, cada variant possible de la font s’ha de fer coincidir com a mínim amb una variant de la traducció amb els mateixos elements HTML, i viceversa.
Quan utilitzeu Fluent en combinació amb el paquet DOM de Fluent, aquesta comprovació garantirà que la traducció també inclogui qualsevol element requerit data-l10n-name que aparegui a la font, o qualsevol dels elements en línia permesos com <br>.
Per exemple, la font següent:
Source message <img data-l10n-name="icon"/> with icon
coincidiria amb:
Translated message <img data-l10n-name="icon"/> with icon
però no:
Translated message <img data-l10n-name="new-val"/> with icon
nor
Translated message <br data-l10n-name="icon"/> with no icon
Vegeu també
Sintaxi de la traducció de Fluent¶
Afegit a la versió 5.0.
- Resum:
Error de sintaxi de Fluent a la traducció.
- Abast:
translated strings
- Check class:
weblate.checks.fluent.syntax.FluentTargetSyntaxCheck- Check identifier:
fluent-target-syntax- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
fluent-target-syntax- Marca per ignorar:
ignore-fluent-target-syntax
A Weblate, les cadenes Fluent utilitzen la sintaxi Fluent per a referències i variables, però també per a funcions més complexes com ara definir atributs i variants de selecció, inclosos els plurals. Aquesta comprovació garanteix que la sintaxi utilitzada a la traducció serà vàlida per a Fluent.
Cordes formatades¶
Comprova que el format de les cadenes es replica tant entre la font com la traducció. L’omissió de cadenes de format a la traducció sol causar problemes greus, de manera que el format de les cadenes normalment hauria de coincidir amb la font.
Weblate admet la comprovació de cadenes de format en diversos idiomes. La comprovació no s’habilita automàticament, només si una cadena està marcada adequadament (per exemple, «format C» per al format C). Gettext afegeix això automàticament, però probablement l’haureu d’afegir manualment per a altres formats de fitxer o si els vostres fitxers PO no els genera xgettext.
La majoria de les comprovacions de format permeten ometre cadenes de format per a formes plurals amb un sol recompte. Això permet als traductors escriure cadenes més agradables per a aquests casos (One apple en lloc de %d apple). Desactiveu-ho afegint la bandera strict-format.
The flags can be customized per string (see Informació addicional sobre les cadenes d’origen) or in a Configuració dels components. 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.
Suggeriment
En cas que la comprovació de format específica no estigui disponible a Weblate, podeu utilitzar Marcadors de substitució.
A més de comprovar, això també destacarà les cadenes de format per inserir-les fàcilment a les cadenes traduïdes:
Cadena d’interpolació d’AngularJS¶
- Resum:
La cadena d’interpolació d’AngularJS no coincideix amb l’origen.
- Abast:
translated strings
- Check class:
weblate.checks.angularjs.AngularJSInterpolationCheck- Check identifier:
angularjs_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
angularjs-format- Marca per ignorar:
ignore-angularjs-format
- Named format string example:
Your balance is {{amount}} {{ currency }}
Vegeu també
Formatació de components d’Automattic¶
- Resum:
Els marcadors de substitució dels components d’Automattic no coincideixen amb els d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.AutomatticComponentsCheck- Check identifier:
automattic_components_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
automattic-components-format- Marca per ignorar:
ignore-automattic-components-format
- Simple format string example:
They bought {{strong}}apples{{/strong}}.
Vegeu també
Format C¶
- Resum:
La cadena de format C no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.CFormatCheck- Check identifier:
c_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
c-format- Marca per ignorar:
ignore-c-format
- Simple format string example:
There are %d apples- Position format string example:
Your balance is %1$d %2$s
Vegeu també
Format C#¶
- Resum:
La cadena de format C# no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.CSharpFormatCheck- Check identifier:
c_sharp_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
c-sharp-format,csharp-format- Marca per ignorar:
ignore-c-sharp-format
- Position format string example:
There are {0} apples
Vegeu també
Literals de la plantilla ECMAScript¶
- Resum:
Els literals de la plantilla ECMAScript no coincideixen amb l’original.
- Abast:
translated strings
- Check class:
weblate.checks.format.ESTemplateLiteralsCheck- Check identifier:
es_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
es-format- Marca per ignorar:
ignore-es-format
- Exemple d’interpolació:
There are ${number} apples
Vegeu també
Interpolació d’i18next¶
Afegit a la versió 4.0.
- Resum:
La interpolació d’i18next no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.I18NextInterpolationCheck- Check identifier:
i18next_interpolation- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
i18next-interpolation- Marca per ignorar:
ignore-i18next-interpolation
- Exemple d’interpolació:
There are {{number}} apples- Nesting example:
There are $t(number) apples
Vegeu també
MessageFormat d’ICU¶
Afegit a la versió 4.9.
- Resum:
Hi ha errors de sintaxi i/o discrepàncies en els marcadors de substitució a les cadenes de MessageFormat d’ICU.
- Abast:
translated strings
- Check class:
weblate.checks.icu.ICUMessageFormatCheck- Check identifier:
icu_message_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
icu-message-format- Marca per ignorar:
ignore-icu-message-format
- Exemple d’interpolació:
There {number, plural, one {is one apple} other {are # apples}}.
Aquesta comprovació té suport tant per a missatges de format de missatge de la UCI pura com per a UCI amb etiquetes XML senzilles. Podeu configurar el comportament d’aquesta comprovació utilitzant icu-flags:*, ja sigui activant el suport XML o desactivant determinades comprovacions secundàries. Per exemple, la marca següent activa el suport XML mentre desactiva la validació de submissatges plurals:
icu-message-format, icu-flags:xml:-plural_selectors
|
Activeu el suport per a etiquetes XML senzilles. De manera predeterminada, les etiquetes XML s’analitzen sense problemes. Els caràcters |
|
Activeu el suport per a etiquetes XML estrictes. Tots els caràcters |
|
Disable highlighting placeholders in the editor. |
|
Desactiveu l’exigència que els submissatges tinguin un selector |
|
Omet la comprovació que els selectors de submissatge coincideixen amb la font. |
|
Skip checking that placeholder types match the source. |
|
Omet la comprovació que no hi hagi marcadors de posició que no estiguessin presents a la cadena d’origen. |
|
Omet la comprovació que no falti cap marcador de posició present a la cadena d’origen. |
A més, quan strict-xml no està habilitat però xml està habilitat, podeu utilitzar el senyalador icu-tag-prefix:PREFIX per requerir que totes les etiquetes XML comencin amb una cadena específica. Per exemple, la marca següent només permetrà que les etiquetes XML coincideixen si comencen per <x::
icu-message-format, icu-flags:xml, icu-tag-prefix:"x:"
Això coincidiria amb <x:link>feu clic aquí</x:link> però no amb <strong>this</strong>.
Format Java¶
- Resum:
La cadena de format Java no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.JavaFormatCheck- Check identifier:
java_printf_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
Recursos de cadenes d’Android, Recursos mòbils de Kotlin, Redacta recursos multiplataforma
- Marca per activar-lo:
java-printf-format- Marca per ignorar:
ignore-java-printf-format
- Simple format string example:
There are %d apples- Position format string example:
Your balance is %1$d %2$s
Canviat a la versió 4.14: Això solia ser alternat per la bandera java-format, es va canviar per a la coherència amb GNU gettext.
Vegeu també
MessageFormat de Java¶
- Resum:
La cadena de format Java MessageFormat no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.JavaMessageFormatCheck- Check identifier:
java_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
auto-java-messageformat,java-format- Automatic flag behavior:
auto-java-messageformat: Tracta un text com a Java MessageFormat condicional, habilitant MessageFormat de Java només quan la font conté marcadors de posició Java MessageFormat.- Marca per ignorar:
ignore-java-format
- Position format string example:
There are {0} apples
Canviat a la versió 4.14: Això solia ser alternat per la bandera java-messageformat, es va canviar per coherència amb GNU gettext.
Aquesta comprovació valida que la cadena de format és vàlida per a la classe Java MessageFormat. A més de fer coincidir les cadenes de format a les claus, també verifica les cometes simples, ja que tenen un significat especial. Sempre que s’escriu cometes simples, s’ha d’escriure com a ''. Quan no està emparellat, es tracta com a principi de cita i no es mostrarà en renderitzar la cadena.
Vegeu també
Format JavaScript¶
- Resum:
La cadena de format JavaScript no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.JavaScriptFormatCheck- Check identifier:
javascript_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
javascript-format- Marca per ignorar:
ignore-javascript-format
- Simple format string example:
There are %d apples
Vegeu també
Format Laravel¶
- Resum:
La cadena de format Laravel no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.LaravelFormatCheck- Check identifier:
laravel_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
laravel-format- Marca per ignorar:
ignore-laravel-format
- Named format string example:
The :attribute must be :value
Vegeu també
Format Lua¶
- Resum:
La cadena de format Lua no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.LuaFormatCheck- Check identifier:
lua_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
lua-format- Marca per ignorar:
ignore-lua-format
- Simple format string example:
There are %d apples
Vegeu també
Format d’Object Pascal¶
- Resum:
La cadena de format d’Object Pascal no coincideix amb l’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.ObjectPascalFormatCheck- Check identifier:
object_pascal_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
object-pascal-format- Marca per ignorar:
ignore-object-pascal-format
- Simple format string example:
There are %d apples
Objective-C format¶
Afegit a la versió 5.17.
- Resum:
Objective-C format string does not match source.
- Abast:
translated strings
- Check class:
weblate.checks.format.ObjCFormatCheck- Check identifier:
objc_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
objc-format- Marca per ignorar:
ignore-objc-format
Marcadors de substitució de percentatge¶
Afegit a la versió 4.0.
- Resum:
Els marcadors de substitució de percentatge no coincideixen amb els d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.PercentPlaceholdersCheck- Check identifier:
percent_placeholders- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
percent-placeholders- Marca per ignorar:
ignore-percent-placeholders
- Simple format string example:
There are %number% apples
Vegeu també
Format de claus del Perl¶
- Resum:
La cadena de format de claus del Perl no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.PerlBraceFormatCheck- Check identifier:
perl_brace_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
perl-brace-format- Marca per ignorar:
ignore-perl-brace-format
- Named format string example:
There are {number} apples
Vegeu també
Format Perl¶
- Resum:
La cadena de format Perl no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.PerlFormatCheck- Check identifier:
perl_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
perl-format- Marca per ignorar:
ignore-perl-format
- Simple format string example:
There are %d apples- Position format string example:
Your balance is %1$d %2$s
Vegeu també
Format PHP¶
- Resum:
La cadena de format PHP no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.PHPFormatCheck- Check identifier:
php_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
php-format- Marca per ignorar:
ignore-php-format
- Simple format string example:
There are %d apples- Position format string example:
Your balance is %1$d %2$s
Format de claus del Python¶
- Resum:
La cadena de format de claus del Python no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.PythonBraceFormatCheck- Check identifier:
python_brace_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
python-brace-format- Marca per ignorar:
ignore-python-brace-format
- Cadena de format senzill:
There are {} apples- Named format string example:
Your balance is {amount} {currency}
Format Python¶
- Resum:
La cadena de format Python no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.PythonFormatCheck- Check identifier:
python_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
python-format- Marca per ignorar:
ignore-python-format
- Cadena de format senzill:
There are %d apples- Named format string example:
Your balance is %(amount)d %(currency)s
Format Qt¶
- Resum:
La cadena de format Qt no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.qt.QtFormatCheck- Check identifier:
qt_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
qt-format- Marca per ignorar:
ignore-qt-format
- Position format string example:
There are %1 apples
Vegeu també
Format de plurals de Qt¶
- Resum:
La cadena de format de plurals de Qt no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.qt.QtPluralCheck- Check identifier:
qt_plural_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
qt-plural-format- Marca per ignorar:
ignore-qt-plural-format
- Plural format string example:
There are %Ln apple(s)
Vegeu també
Format Ruby¶
- Resum:
La cadena de format Ruby no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.ruby.RubyFormatCheck- Check identifier:
ruby_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
ruby-format- Marca per ignorar:
ignore-ruby-format
- Simple format string example:
There are %d apples- Position format string example:
Your balance is %1$f %2$s- Named format string example:
Your balance is %+.2<amount>f %<currency>s- Cadena de plantilla anomenada:
Your balance is %{amount} %{currency}
Vegeu també
Format Scheme¶
- Resum:
La cadena de format Scheme no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.SchemeFormatCheck- Check identifier:
scheme_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
scheme-format- Marca per ignorar:
ignore-scheme-format
- Simple format string example:
There are ~d apples
Formatació l18n de Vue¶
- Resum:
La formatació l18n de Vue no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.format.VueFormattingCheck- Check identifier:
vue_format- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
vue-format- Marca per ignorar:
ignore-vue-format
- Named formatting:
There are {count} apples- Rails i18n formatting:
There are %{count} apples- Linked locale messages:
@:message.dio @:message.the_world!
S’ha traduït¶
- Resum:
Aquesta cadena ja s’ha traduït en el passat.
- Abast:
all strings
- Check class:
weblate.checks.consistency.TranslatedCheck- Check identifier:
translated- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-translated
Significa que una cadena ja s’ha traduït. Això pot passar quan les traduccions s’han revertit a VCS o s’han perdut d’una altra manera.
Inconsistent¶
- Resum:
Aquesta cadena té més d’una traducció en aquest projecte o no està traduïda en algun component.
- Abast:
all strings
- Check class:
weblate.checks.consistency.ConsistencyCheck- Check identifier:
inconsistent- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-inconsistent
Weblate comprova les traduccions de la mateixa cadena en totes les traduccions d’un projecte per ajudar-vos a mantenir les traduccions coherents.
La comprovació falla en traduccions diferents d’una cadena dins d’un projecte. Això també pot provocar inconsistències en les comprovacions mostrades. Podeu trobar altres traduccions d’aquesta cadena a la pestanya Altres ocurrències.
Aquesta comprovació s’aplica a tots els components d’un projecte que tinguin activat Permet la propagació de traduccions.
Suggeriment
Per raons de rendiment, és possible que la comprovació no trobi totes les incoherències, limita el nombre de coincidències.
Nota
Aquesta comprovació també s’activa en cas que la cadena es tradueixi en un component i no en un altre. Es pot utilitzar com a forma ràpida de gestionar manualment les cadenes que no es tradueixen en alguns components només fent clic al botó Utilitza aquesta traducció que es mostra a cada línia de la pestanya Altres ocurrències.
Podeu utilitzar el complement Traducció automatitzada per automatitzar la traducció de les cadenes afegides recentment que ja estan traduïdes en un altre component.
reStructuredText inconsistent¶
Afegit a la versió 5.10.
- Resum:
Hi ha sintaxi de reStructuredText inconsistent al missatge traduït.
- Abast:
translated strings
- Check class:
weblate.checks.markup.RSTReferencesCheck- Check identifier:
rst-references- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
rst-text- Marca per ignorar:
ignore-rst-references
reStructuredText term references or other markup do not match source, the typical causes for these errors are:
Mismatched or missing backticks.
Falten espais o interpunció al voltant de la referència. Els blocs en línia reStructuredText han d’estar separats per caràcters que no siguin de paraula.
Espai entre l’etiqueta en línia i els backticks.
The reference name is not being translated.
Utilitza cometes en comptes de backticks.
Substitucions o referències de notes a peu de pàgina no coincidents.
S’ha utilitzat kashida¶
- Resum:
No s’haurien de fer servir les lletres decoratives kashida.
- Abast:
translated strings
- Check class:
weblate.checks.chars.KashidaCheck- Check identifier:
kashida- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-kashida
Les lletres Kashida decoratives no s’han d’utilitzar en la traducció. Aquests també es coneixen com Tatweel.
Vegeu també
Enllaços Markdown¶
- Resum:
Els enllaços Markdown no coincideixen amb els d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.markup.MarkdownLinkCheck- Check identifier:
md-link- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
md-text- Marca per ignorar:
ignore-md-link
Els enllaços Markdown no coincideixen amb els d’origen.
Vegeu també
Referències de Markdown¶
- Resum:
Les referències d’enllaços Markdown no coincideixen amb les d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.markup.MarkdownRefLinkCheck- Check identifier:
md-reflink- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
md-text- Marca per ignorar:
ignore-md-reflink
Les referències d’enllaços Markdown no coincideixen amb les d’origen.
Vegeu també
Sintaxi Markdown¶
- Resum:
La sintaxi Markdown no coincideix amb la d’origen.
- Abast:
translated strings
- Check class:
weblate.checks.markup.MarkdownSyntaxCheck- Check identifier:
md-syntax- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
md-text- Marca per ignorar:
ignore-md-syntax
La sintaxi Markdown no coincideix amb la d’origen
Vegeu també
Longitud màxima de la traducció¶
- Resum:
La traducció no hauria d’excedir la longitud proporcionada.
- Abast:
translated strings
- Check class:
weblate.checks.chars.MaxLengthCheck- Check identifier:
max-length- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
max-length- Marca per ignorar:
ignore-max-length
Comprova que les traduccions tinguin una longitud acceptable per adaptar-se a l’espai disponible. Això només comprova la longitud dels caràcters de traducció.
A diferència de les altres comprovacions, el senyalador s’hauria d’establir com a parell clau:valor com max-length:100.
The max-length flag also triggers Longitud de la cadena d’origen for source
strings. For English source strings, including English variants, this check
warns when the source uses more than 85% of the configured length to leave room
for translation expansion. For other source languages, the configured
max-length is used directly.
Suggeriment
Aquesta comprovació analitza el nombre de caràcters, el que podria no ser la millor mètrica quan s’utilitzen tipus de lletra proporcionals per representar el text. La comprovació Mida màxima de la traducció verifica la representació real del text.
El senyalador replacements: també pot ser útil per ampliar els elements col·locables abans de comprovar la cadena.
Quan també s’utilitza el senyalador xml-text, el càlcul de longitud ignora les etiquetes XML.
Maximum number of lines¶
- Resum:
Translation should not exceed given number of lines.
- Abast:
translated strings
- Check class:
weblate.checks.chars.MaxLinesCheck- Check identifier:
max-lines- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
max-lines- Marca per ignorar:
ignore-max-lines
Checks that translations do not exceed the configured maximum number of lines. This is useful for translations targeting fixed-height UI elements such as displays, terminals, or constrained containers where a specific number of visible lines is required.
Unlike the other checks, the flag should be set as a key:value pair like
max-lines:3.
A translation with more lines than the configured value triggers a warning. Lines are counted by the number of newline characters plus one.
Suggeriment
This check counts display lines (separated by \\n), not wrapped lines.
If your UI wraps text automatically, use Mida màxima de la traducció instead.
Mida màxima de la traducció¶
- Resum:
Rendered text should not exceed given size.
- Abast:
source and translated strings
- Check class:
weblate.checks.render.MaxSizeCheck- Check identifier:
max-size- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
max-size- Marca per ignorar:
ignore-max-size
Rendered source or translation text should not exceed given size. It renders the text and checks if it fits into given boundaries. Word wrapping is applied when more than one line is configured.
Aquesta comprovació necessita un o dos paràmetres: amplada màxima i nombre màxim de línies. En cas que no es proporcioni el nombre de línies, es considera el text d’una línia.
També podeu configurar el tipus de lletra utilitzat mitjançant les directives font-* (vegeu Personalització del comportament mitjançant banderes), per exemple, les marques de traducció següents diuen que el text representat amb una mida de lletra ubuntu 22 hauria d’encaixar en dues línies i 500 píxels:
max-size:500:2, font-family:ubuntu, font-size:22
Suggeriment
És possible que vulgueu configurar les directives font-* a Configuració dels components per tenir el mateix tipus de lletra configurat per a totes les cadenes d’un component. Podeu substituir aquests valors per cadena en cas que necessiteu personalitzar-los per cadena.
El senyalador replacements: també pot ser útil per ampliar els elements col·locables abans de comprovar la cadena.
Quan també s’utilitza el senyalador xml-text, el càlcul de longitud ignora les etiquetes XML.
Mismatched \n¶
- Resum:
Number of \n literals in translation does not match source.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EscapedNewlineCountingCheck- Check identifier:
escaped_newline- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-escaped-newline
Normalment, les noves línies escapades són importants per a la formateja de la sortida del programa. La comprovació falla si el nombre de literals \n a la traducció no coincideix amb la font.
Dos punts no coincidents¶
- Resum:
L’original o la traducció no acaba amb dos punts.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndColonCheck- Check identifier:
end_colon- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-colon
Comprova que els dos punts es reprodueixen tant entre la font com la traducció. També es comprova la presència de dos punts per a diferents idiomes on no pertanyen (xinès o japonès).
Vegeu també
Punts suspensius no coincidents¶
- Resum:
L’original o la traducció no acaba amb punts suspensius.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndEllipsisCheck- Check identifier:
end_ellipsis- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-ellipsis
Comprova que les el·lipses posteriors es reprodueixen tant entre la font com la traducció. Això només comprova si hi ha punts suspensius reals (…) no tres punts (...).
Normalment, una el·lipse es mostra més agradable que tres punts a la impressió i sona millor amb la conversió de text a veu.
Vegeu també
Signe d’exclamació no coincident¶
- Resum:
L’original o la traducció no acaba amb un signe d’exclamació.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndExclamationCheck- Check identifier:
end_exclamation- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-exclamation
Comprova que les exclamacions es reprodueixen tant entre la font com la traducció. També es comprova la presència de signes d’exclamació per a diferents idiomes on no pertanyen (xinès, japonès, coreà, armeni, limbu, Myanmar o Nko).
Vegeu també
Punt no coincident¶
- Resum:
L’original o la traducció no acaba amb un punt.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndStopCheck- Check identifier:
end_stop- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-stop
Comprova que els punts es reprodueixen tant entre la font com la traducció. Es comprova la presència de punts per a diversos idiomes on no pertanyen (xinès, japonès, devanagari o urdú).
Vegeu també
Interrobang no coincident¶
- Resum:
L’original o la traducció no acaba amb una expressió interrobang.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndInterrobangCheck- Check identifier:
end_interrobang- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-interrobang
Comprova que les marques interrobang es reprodueixen tant entre la font com la traducció. Permet l’intercanvi entre «!?» i «?!».
Vegeu també
Signe d’interrogació no coincident¶
- Resum:
L’original o la traducció no acaba amb un signe d’interrogació.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndQuestionCheck- Check identifier:
end_question- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-question
Comprova que els signes d’interrogació es reprodueixen tant entre la font com la traducció. També es comprova la presència de signes d’interrogació per a diverses llengües a les quals no pertanyen (armeni, àrab, xinès, coreà, japonès, etíop, vai o copte).
Vegeu també
Punt i coma no coincident¶
- Resum:
L’original o la traducció no acaba amb punt i coma.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndSemicolonCheck- Check identifier:
end_semicolon- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-semicolon
Comprova que els punts i coma al final de les frases es reprodueixen tant entre la font com la traducció.
Vegeu també
Salts de línia no coincidents¶
- Resum:
El nombre de salts de línia a la traducció no coincideix amb l’original.
- Abast:
translated strings
- Check class:
weblate.checks.chars.NewLineCountCheck- Check identifier:
newline-count- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-newline-count
En general, les línies noves són importants per a donar format a la sortida del programa. La comprovació falla si el nombre de línies noves a la traducció no coincideix amb la font.
Manquen plurals¶
- Resum:
Algunes formes de plural no s’han traduït.
- Abast:
translated strings
- Check class:
weblate.checks.consistency.PluralsCheck- Check identifier:
plurals- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-plurals
Comprova que totes les formes plurals d’una cadena d’origen s’han traduït. Podeu trobar informació específica sobre com s’utilitza cada forma plural a la definició de cadena.
Si no s’omplen els formularis en plural, en alguns casos no es mostrarà res quan s’utilitza la forma plural.
Multiple capitals¶
Afegit a la versió 5.16.
- Resum:
Translation contains words with multiple misplaced capital letters.
- Abast:
translated strings
- Check class:
weblate.checks.chars.MultipleCapitalCheck- Check identifier:
multiple_capital- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-multiple-capital
Comprova si hi ha majúscules mal col·locades detectant paraules que contenen lletres majúscules consecutives en text en minúscula o normalment en majúscula (per exemple, Hello o CAmelCase). Les cadenes que contenen majúscules a la cadena font poden incloure majúscules a la traducció.
Caràcters no estàndard en cabil¶
Afegit a la versió 5.12.
- Resum:
Utilitzeu caràcters cabils llatins estandarditzats (p. ex. ɣ en lloc de γ grec; ɛ en lloc de ε).
- Abast:
translated strings
- Check class:
weblate.checks.chars.KabyleCharactersCheck- Check identifier:
kabyle-characters- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-kabyle-characters
Comprova que les traduccions cabil·les utilitzen lletres cabil·les correctes i no gregues semblants, que sovint s’utilitzaven abans que els caràcters cabil·les fossin estandarditzats a Unicode.
Marcadors de substitució¶
Canviat a la versió 4.3: You can use regular expression as placeholder.
Canviat a la versió 4.13: Amb el senyalador que no distingeix entre majúscules i minúscules, els marcadors de posició no distingeixen entre majúscules i minúscules.
- Resum:
Manquen alguns marcadors de substitució a la traducció.
- Abast:
translated strings
- Check class:
weblate.checks.placeholders.PlaceholderCheck- Check identifier:
placeholders- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
placeholders- Marca per ignorar:
ignore-placeholders
A la traducció li falten alguns marcadors de posició. Aquests s’extreuen del fitxer de traducció o es defineixen manualment mitjançant el senyalador placeholders, es poden separar més amb dos punts, les cadenes amb espai es poden citar:
placeholders:$URL$:$TARGET$:"some long text"
En cas que tingueu alguna sintaxi per als marcadors de posició, podeu utilitzar una expressió regular:
placeholders:r"%[^% ]%"
També podeu tenir marcadors de posició que no distingeixen entre majúscules i minúscules:
placeholders:$URL$:$TARGET$,case-insensitive
Caràcter inicial prohibit¶
Afegit a la versió 5.9.
- Resum:
La cadena comença amb un caràcter prohibit en CSV.
- Abast:
glossary strings
- Check class:
weblate.checks.glossary.ProhibitedInitialCharacterCheck- Check identifier:
prohibited_initial_character- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-prohibited-initial-character
El glossari sovint es comparteix com a CSV i l’ús d’alguns caràcters al principi està restringit per moltes aplicacions, ja que poden fer que el text sigui avaluat com una expressió. Això també afecta Glossaries in automatic suggestion on molts serveis utilitzen CSV per sincronitzar glossaris i rebutgen aquestes cadenes.
Espaiat de la puntuació¶
Canviat a la versió 5.10: Aquesta verificació solia aplicar-se també a la llengua bretona, però només es limitava al francès.
- Resum:
Manca un espai no divisible davant del doble signe de puntuació.
- Abast:
translated strings
- Check class:
weblate.checks.chars.PunctuationSpacingCheck- Check identifier:
punctuation_spacing- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-punctuation-spacing
Comprova que hi hagi un espai no trencable abans del signe de doble puntuació (signe d’exclamació, signe d’interrogació, punt i coma i dos punts). Aquesta regla només s’utilitza en alguns idiomes seleccionats com el francès, on l’espai abans del signe de puntuació doble és una regla tipogràfica.
Vegeu també
Expressió regular¶
Canviat a la versió 5.10: Suport estès per a expressions regulars avançades incloses propietats de punt de codi Unicode.
- Resum:
La traducció no coincideix amb l’expressió regular.
- Abast:
translated strings
- Check class:
weblate.checks.placeholders.RegexCheck- Check identifier:
regex- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
regex- Marca per ignorar:
ignore-regex
La traducció no coincideix amb l’expressió regular. L’expressió s’extreu del fitxer de traducció o es defineix manualment mitjançant el senyalador regex:
regex:^foo|bar$
La concordança també admet propietats de punt de codi Unicode, inclosos scripts i blocs:
regex:^[-_\p{L}\p{N}\p{sc=Deva}\p{sc=Thai}]{1,32}$
Suggeriment
Utilitzeu Marcadors de substitució per detectar els marcadors de posició que falten a la cadena.
Vegeu també
Error de sintaxi de reStructuredText¶
Afegit a la versió 5.10.
- Resum:
Error de sintaxi de reStructuredText a la traducció.
- Abast:
translated strings
- Check class:
weblate.checks.markup.RSTSyntaxCheck- Check identifier:
rst-syntax- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
rst-text- Marca per ignorar:
ignore-rst-syntax
reStructuredText syntax error in the translation. Issues to look for:
Mismatched closing/opening tags.
Falten espais o interpunció al voltant de la referència. Els blocs en línia reStructuredText han d’estar separats per caràcters que no siguin de paraula.
Utilitza cometes en comptes de backticks.
Vegeu també
Traducció reutilitzada¶
Afegit a la versió 4.18.
- Resum:
Hi ha cadenes diferents traduïdes de la mateixa manera.
- Abast:
translated strings
- Check class:
weblate.checks.consistency.ReusedCheck- Check identifier:
reused- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-reused
Comproveu que falla si s’utilitza la mateixa traducció en diferents cadenes d’origen. Aquestes traduccions poden ser intencionades, però també poden confondre els usuaris.
Safe MDX¶
Afegit a la versió 2026.7.
- Resum:
JSX expressions in the translation do not match the source.
- Abast:
translated strings
- Check class:
weblate.checks.mdx.SafeMDXCheck- Check identifier:
safe-mdx- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
safe-mdx- Marca per ignorar:
ignore-safe-mdx
Plurals idèntics¶
- Resum:
Alguna forma del plural s’ha traduït de manera idèntica.
- Abast:
translated strings
- Check class:
weblate.checks.consistency.SamePluralsCheck- Check identifier:
same-plurals- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-same-plurals
Comproveu que falla si algunes formes de plural es dupliquen a la traducció. En la majoria d’idiomes han de ser diferents.
Salt de línia inicial¶
- Resum:
L’original o la traducció no comença amb un salt de línia.
- Abast:
translated strings
- Check class:
weblate.checks.chars.BeginNewlineCheck- Check identifier:
begin_newline- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-begin-newline
Les noves línies solen aparèixer a les cadenes d’origen per una bona raó, les omissions o les addicions poden provocar problemes de format quan s’utilitza el text traduït.
Vegeu també
Espais inicials¶
- Resum:
L’original i la traducció no comencen amb el mateix nombre d’espais.
- Abast:
translated strings
- Check class:
weblate.checks.chars.BeginSpaceCheck- Check identifier:
begin_space- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-begin-space
Normalment s’utilitza un espai al començament d’una cadena per al sagnat a la interfície i, per tant, és important mantenir-lo.
Salt de línia final¶
- Resum:
L’original o la traducció no acaba amb un salt de línia.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndNewlineCheck- Check identifier:
end_newline- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-newline
Les noves línies solen aparèixer a les cadenes d’origen per una bona raó, les omissions o les addicions poden provocar problemes de format quan s’utilitza el text traduït.
Vegeu també
Espai al final¶
- Resum:
L’original o la traducció no acaba amb un espai.
- Abast:
translated strings
- Check class:
weblate.checks.chars.EndSpaceCheck- Check identifier:
end_space- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-end-space
Comprova que els espais al final es reprodueixen tant entre la font com la traducció.
L’espai posterior s’utilitza normalment per separar els elements veïns, de manera que eliminar-lo podria trencar el disseny.
Traducció no modificada¶
- Resum:
La cadena d’origen i la traducció són idèntiques.
- Abast:
translated strings
- Check class:
weblate.checks.same.SameCheck- Check identifier:
same- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-same
Succeeix si la font i les cadenes de traducció corresponents són idèntiques, fins a almenys una de les formes plurals. S’ignoren algunes cadenes que es troben habitualment en tots els idiomes i s’eliminen diverses marques. Això redueix el nombre de falsos positius.
Aquesta comprovació pot ajudar a trobar cadenes no traduïdes per error.
El comportament per defecte d’aquesta comprovació és excloure paraules de la llista de termes integrada de la comprovació. Són paraules que sovint no es tradueixen. Això és útil per evitar falsos positius en cadenes curtes, que consisteixen només en una sola paraula que és la mateixa en diversos idiomes. Aquesta llista es pot desactivar afegint el senyalador strict-same a una cadena o component.
Canviat a la versió 4.17: Amb el senyalador check-glossary (vegeu No s’ajusta al glossari), els termes del glossari no traduïbles queden exclosos de la comprovació.
HTML insegur¶
- Resum:
La traducció utilitza marcatge HTML insegur.
- Abast:
translated strings
- Check class:
weblate.checks.markup.SafeHTMLCheck- Check identifier:
safe-html- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
auto-safe-html,safe-html- Automatic flag behavior:
auto-safe-html: tracteu un text com a HTML condicional, habilitant HTML insegur només per a text sense format o cadenes d’origen que continguin un marcatge HTML estàndard o elements personalitzats vàlids. Això és útil per a variants de Markdown esteses, com ara MDX, on la sintaxi entre claudàtors no és HTML.- Marca per ignorar:
ignore-safe-html
La traducció utilitza un marcatge HTML no segur. Aquesta comprovació s’ha d’habilitar utilitzant el senyalador safe-html (vegeu Personalització del comportament mitjançant banderes). També hi ha un autofixador acompanyat que pot desinfectar automàticament el marcatge.
Suggeriment
Quan també s’utilitza el senyalador md-text, també es permeten els enllaços d’estil Markdown.
Vegeu també
La comprovació d’HTML la realitza la biblioteca Ammonia.
URL¶
- Resum:
The translation does not contain a URL.
- Abast:
translated strings
- Check class:
weblate.checks.markup.URLCheck- Check identifier:
url- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Marca per activar-lo:
url- Marca per ignorar:
ignore-url
La traducció no conté cap URL. Això només s’activa en cas que la unitat estigui marcada com a URL que conté. En aquest cas, la traducció ha de ser una URL vàlida.
Marcatge XML¶
- Resum:
Les etiquetes XML de la traducció no coincideixen amb l’original.
- Abast:
translated strings
- Check class:
weblate.checks.markup.XMLTagsCheck- Check identifier:
xml-tags- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-xml-tags
Això normalment significa que la sortida resultant tindrà un aspecte diferent. En la majoria dels casos, aquest no és un resultat desitjat de canviar la traducció, però de vegades ho és.
Comprova que les etiquetes XML es repliquin tant entre la font com la traducció.
La comprovació s’habilita automàticament per a cadenes com XML. És possible que hàgiu d’afegir el senyalador xml-text en alguns casos per forçar l’activació.
Nota
Aquesta comprovació està desactivada per la marca safe-html, ja que la neteja d’HTML que fa pot produir un marcatge HTML que no és XML vàlid.
Sintaxi XML¶
- Resum:
La traducció no és XML vàlid.
- Abast:
translated strings
- Check class:
weblate.checks.markup.XMLValidityCheck- Check identifier:
xml-invalid- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-xml-invalid
El marcatge XML no és vàlid.
La comprovació s’habilita automàticament per a cadenes com XML. És possible que hàgiu d’afegir el senyalador xml-text en alguns casos per forçar l’activació.
Nota
Aquesta comprovació està desactivada per la marca safe-html, ja que la neteja d’HTML que fa pot produir un marcatge HTML que no és XML vàlid.
Espai d’amplada zero¶
- Resum:
La traducció conté un caràcter addicional d’espai d’amplada zero.
- Abast:
translated strings
- Check class:
weblate.checks.chars.ZeroWidthSpaceCheck- Check identifier:
zero-width-space- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-zero-width-space
Els caràcters d’espai d’amplada zero (<U+200B>) s’utilitzen per dividir els missatges dins de les paraules (ajustament de paraules).
Com que normalment s’insereixen per error, aquesta comprovació s’activa un cop estan presents en la traducció. Alguns programes poden tenir problemes quan s’utilitza aquest caràcter.
Vegeu també
Comprovacions de font¶
Les comprovacions d’origen poden ajudar els desenvolupadors a millorar la qualitat de les cadenes d’origen.
Punts suspensius¶
- Resum:
The string uses three dots
(...)instead of an ellipsis character(…).- Abast:
Cadenes d’origen
- Check class:
weblate.checks.source.EllipsisCheck- Check identifier:
ellipsis- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-ellipsis
Això falla quan la cadena utilitza tres punts (...) quan hauria d’utilitzar un caràcter el·lipse (...).
L’ús del caràcter Unicode és en la majoria dels casos el millor enfocament i es veu millor representat, i pot sonar millor amb la conversió de text a veu.
Vegeu també
HTML interior de l’origen Fluent¶
Afegit a la versió 5.0.
- Resum:
L’origen Fluent hauria de ser un HTML interior vàlid.
- Abast:
Cadenes d’origen
- Check class:
weblate.checks.fluent.inner_html.FluentSourceInnerHTMLCheck- Check identifier:
fluent-source-inner-html- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
fluent-source-inner-html- Marca per ignorar:
ignore-fluent-source-inner-html
El fluent s’utilitza sovint en contextos on el valor d’un missatge (o terme) s’ha d’utilitzar directament com a .innerHTML (en lloc de .textContent) per a algun element HTML. Per exemple, quan utilitzeu el paquet Fluent DOM.
L’objectiu d’aquesta comprovació és predir com s’analitzarà el valor com a HTML intern, assumint un analitzador conforme a HTML5, per detectar casos en què hi hauria alguna pèrdua «no intencionada» de la cadena, sense ser massa estricte amb els errors tècnics d’anàlisi que no condueixen a una pèrdua de la cadena.
Aquesta comprovació s’aplica al valor dels missatges o termes fluids, però no als seus atributs. Per als missatges, els atributs fluids solen ser només valors d’atributs HTML, per la qual cosa poden ser cadenes arbitràries. Per als termes, els atributs de fluent solen ser propietats d’idioma que només es poden fer referència als selectors d’expressions de selecció fluida.
En general, no s’espera que la majoria dels valors de Fluent continguin cap marcatge HTML. Per tant, aquesta comprovació no espera ni vol que els traductors i desenvolupadors s’hagin de preocupar d’evitar estrictament qualsevol error tècnic d’anàlisi HTML5 (i molt menys errors d’anàlisi XHTML). En lloc d’això, aquesta comprovació només voldrà avisar-los quan potser hagin obert sense voler una etiqueta HTML o inserit una referència de caràcter.
A més, per als valors Fluent que continguin intencionadament etiquetes HTML o referències de caràcters, aquesta comprovació verificarà algunes «bones pràctiques», com ara la concordança d’etiquetes de tancament i finalització, referències de caràcters vàlides i valors d’atributs citats. A més, tot i que l’especificació HTML5 permet tècnicament noms d’etiquetes i atributs força arbitraris, aquesta comprovació els limitarà a alguns valors ASCII bàsics que haurien de cobrir les etiquetes i atributs d’element HTML5 estàndard, així com permetrà alguns noms d’elements o atributs personalitzats. Això és parcialment per garantir que l’usuari utilitzi HTML de manera intencionada.
Examples:
Value |
Avisa? |
Reason |
|---|---|---|
|
sí |
La part |
|
no |
El |
|
sí |
Missing a closing tag. |
|
sí |
|
|
no |
Etiqueta d’element personalitzada amb una etiqueta de tancament coincident. |
|
no |
|
|
no |
|
|
sí |
The attribute value is not quoted. |
|
sí |
Nom d’etiqueta no ASCII. |
|
sí |
La part |
|
no |
La referència del personatge sembla ser intencionada. |
|
sí |
La part |
|
sí |
The character reference is not valid. |
|
sí |
La variable Fluent pot convertir-se sense voler en una etiqueta. |
|
sí |
La variable Fluent pot convertir-se sense voler en una referència de caràcter. |
Nota
Aquesta comprovació no garantirà que l’HTML intern estigui segur o desinfectat, i no pretén protegir contra intents maliciosos d’alterar l’HTML intern. A més, cal recordar que les variables i referències Fluent poden expandir-se a cadenes arbitràries, de manera que es podrien expandir a HTML arbitrari tret que s’escapi. Com a excepció, un caràcter < o & abans d’una referència Fluent activarà aquesta comprovació, ja que fins i tot un valor d’escapada podria donar lloc a resultats inesperats.
Nota
El paquet Fluent DOM té més limitacions, com ara etiquetes i atributs permesos, que aquesta comprovació no aplicarà.
Vegeu també
Sintaxi de l’origen de Fluent¶
Afegit a la versió 5.0.
- Resum:
Error de sintaxi Fluent a l’origen.
- Abast:
Cadenes d’origen
- Check class:
weblate.checks.fluent.syntax.FluentSourceSyntaxCheck- Check identifier:
fluent-source-syntax- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
fluent-source-syntax- Marca per ignorar:
ignore-fluent-source-syntax
A Weblate, les cadenes Fluent utilitzen la sintaxi Fluent per a referències i variables, però també per a funcions més complexes com ara definir atributs i variants de selecció, inclosos els plurals. Aquesta comprovació garanteix que la sintaxi utilitzada a la font serà vàlida per a Fluent.
Sintaxi MessageFormat d’ICU¶
Afegit a la versió 4.9.
- Resum:
Errors de sintaxi a les cadenes de MessageFormat d’ICU.
- Abast:
Cadenes d’origen
- Check class:
weblate.checks.icu.ICUSourceCheck- Check identifier:
icu_message_format_syntax- Trigger:
Aquesta comprovació s’ha d’habilitar mitjançant una bandera.
- Formats de fitxer que activen automàticament aquesta comprovació:
- Marca per activar-lo:
icu-message-format- Marca per ignorar:
ignore-icu-message-format
Vegeu també
No traduïda de fa molt de temps¶
Afegit a la versió 4.1.
- Resum:
Aquesta cadena no s’ha traduït de fa molt de temps.
- Abast:
Cadenes d’origen
- Check class:
weblate.checks.source.LongUntranslatedCheck- Check identifier:
long_untranslated- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-long-untranslated
Quan la cadena no s’ha traduït durant molt de temps, pot indicar un problema en una cadena d’origen que dificulta la traducció.
Diverses comprovacions fallides¶
- Resum:
Les traduccions en diferents llengües tenen comprovacions fallides.
- Abast:
Cadenes d’origen
- Check class:
weblate.checks.source.MultipleFailingCheck- Check identifier:
multiple_failures- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-multiple-failures
Nombroses traduccions d’aquesta cadena tenen comprovacions de qualitat fallides. Això sol ser una indicació que es podria fer alguna cosa per millorar la cadena d’origen.
Sovint, aquest error de verificació pot ser causat per la falta d’un punt al final d’una frase o per problemes menors similars que els traductors solen solucionar en la traducció, mentre que seria millor solucionar-ho a la cadena d’origen.
Múltiples variables sense nom¶
Afegit a la versió 4.1.
- Resum:
Hi ha múltiples variables sense nom a la cadena, la qual cosa fa impossible que els traductors les reordenin.
- Abast:
Cadenes d’origen
- Check class:
weblate.checks.format.MultipleUnnamedFormatsCheck- Check identifier:
unnamed_format- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-unnamed-format
Hi ha múltiples variables sense nom a la cadena, la qual cosa fa impossible que els traductors les reordenin.
Penseu en utilitzar variables amb nom per permetre als traductors reordenar-les.
Longitud de la cadena d’origen¶
- Resum:
Source string is close to or exceeds the configured maximum length for translations.
- Abast:
Cadenes d’origen
- Check class:
weblate.checks.source.SourceMaxLengthCheck- Check identifier:
source-max-length- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-source-max-length
Translations often need more room than the source text, especially when the
source language is English. This check helps maintainers find source strings
that are already close to their configured max-length before translators
have to shorten or omit meaning to fit the limit.
For English source strings, including English variants, the check reports
strings using more than 85% of the configured max-length. For other source
languages, it reports source strings longer than the configured
max-length.
This catches source strings that are likely to make translations fail Longitud màxima de la traducció, and source strings that already do not fit the declared limit.
No pluralitzada¶
- Resum:
La cadena s’utilitza com a plural, però no utilitza formes plurals.
- Abast:
Cadenes d’origen
- Check class:
weblate.checks.source.OptionalPluralCheck- Check identifier:
optional_plural- Trigger:
Aquesta comprovació sempre està habilitada, però es pot ignorar mitjançant una marca.
- Marca per ignorar:
ignore-optional-plural
La cadena s’utilitza com a plural, però no utilitza formes plurals. En cas que el vostre sistema de traducció ho admeti, hauríeu d’utilitzar la variant conscient del plural.
Per exemple, amb Gettext a Python podria ser:
from gettext import ngettext
print(ngettext("Selected %d file", "Selected %d files", files) % files)
Placeables in automatic suggestion¶
Les comprovacions dels elements ubicables exposen informació sobre els ubicables actuals i això es pot utilitzar per indicar als motors de suggeriments automàtics que els conservin. El suport per a això varia en diferents serveis i, en molts casos, no hi ha manera d’aplicar el manteniment dels objectes col·locables intactes.
Vegeu també