Kontroly a opravy

Vlastné automatické opravy

Môžete tiež implementovať vlastnú automatickú opravu navyše k štandardným a zahrnúť ich do AUTOFIX_LIST.

Automatické opravy sú mocné, ale môžu tiež spôsobiť škody; buďte opatrní pri ich písaní.

Napríklad nasledujúca automatická oprava by nahradila každý výskyt reťazca foo v preklade reťazcom bar:

from __future__ import annotations

from typing import TYPE_CHECKING

from weblate.trans.autofixes.base import AutoFix

if TYPE_CHECKING:
    from weblate.trans.models import Unit


class ReplaceFooWithBar(AutoFix):
    """Replace foo with bar."""

    # Might be localized using gettext_lazy
    name = "Foobar"

    def fix_single_target(
        self, target: str, source: str, unit: Unit
    ) -> tuple[str, bool]:
        if "foo" in target:
            return target.replace("foo", "bar"), True
        return target, False

Na inštaláciu vlastných kontrol uveďte úplnú cestu k triede v Pythone v AUTOFIX_LIST, pozri Custom quality checks, add-ons, translation services and auto-fixes.

Prispôsobenie správania pomocou príznakov

Správanie Weblate môžete jemne doladiť pomocou príznakov. Príznaky poskytujú vizuálnu spätnú väzbu prekladateľom a pomáhajú im zlepšiť ich preklad. Príznaky sa spájajú z nasledujúcich zdrojov:

Príznaky sú oddelené čiarkami; ak majú parametre, sú oddelené dvojbodkou. Môžete použiť úvodzovky na zahrnutie medzier alebo špeciálnych znakov v reťazci. Napríklad:

placeholders:"special:value":"other value", regex:.*

Akceptujú sa jednoduché aj dvojité úvodzovky, špeciálne znaky sa escapujú pomocou spätnej lomky:

placeholders:"quoted \"string\"":'single \'quoted\''
placeholders:r"^#*"

Na overenie, že prekladatelia nemenia nadpis dokumentu Markdown. Neúspešná kontrola sa spustí, ak sa reťazec ### Index preloží ako # Indice.

placeholders:r"\]\([^h].*?\)"

Na zabezpečenie, že interné odkazy sa neprekladajú (t.j. [test](../checks) sa nestane [test](../chequeos).

Príznaky definované na vyššej úrovni možno zahodiť pomocou syntaxe discard:NAME. Napríklad, ak je komponent nakonfigurovaný na safe-html, môžete pridať discard:safe-html k príznakom reťazca, aby ste ho pre tento konkrétny reťazec preskočili. Prekladové príznaky nemôžu zrušiť explicitný príznak read-only nastavený na zdrojovom reťazci.

Tu je zoznam momentálne akceptovaných príznakov:

read-only

Reťazec je iba na čítanie a nemal by sa upravovať vo Weblate, pozrite Reťazce iba na čítanie.

terminology

Používa sa v Slovník. Kopíruje reťazec do všetkých jazykov slovníka, aby sa mohol konzistentne používať vo všetkých prekladoch. Tiež užitočné v kombinácii s read-only, napríklad pri názvoch produktov.

priority:N

Priorita reťazca. Reťazce s vyššou prioritou sa prezentujú ako prvé na preklad. Predvolená priorita je 100, čím vyššiu prioritu má reťazec, tým skôr je ponúknutý na preklad.

xml-text

Spracovávať text ako dokument XML, ovplyvňuje Syntax XML a Značkovanie XML.

font-family:NAME

Definujte font-family pre kontroly vykresľovania, pozri Správa písiem.

font-weight:WEIGHT

Definujte font-weight pre kontroly vykresľovania, pozri Správa písiem.

font-size:SIZE

Definovať font-size pre kontroly vykresľovania, pozrite Správa písiem.

font-spacing:SPACING

Definujte letter spacing pre kontroly vykresľovania, pozri Správa písiem.

font-monospace

Zobrazovať reťazec v editore prekladu pomocou písma s pevnou šírkou. Na rozdiel od príznakov font-family/font-size/font-weight/font-spacing toto neovplyvňuje kontroly vykresľovania a nikdy nenačítava nahrané písmo; iba prepne editor na vstavaný zásobník písma s pevnou šírkou prehliadača.

icu-flags:FLAGS

Definovať príznaky na prispôsobenie správania kontroly kvality ICU MessageFormat.

icu-tag-prefix:PREFIX

Nastaviť požadovaný prefix pre značky XML pre kontrolu kvality ICU MessageFormat.

placeholders:NAME:NAME2:...

Očakávané reťazce zástupných symbolov v preklade, pozrite Zástupné symboly.

replacements:FROM:TO:FROM2:TO2...

Nahrádzania na vykonanie pri kontrole výsledných textových parametrov (napríklad v Maximálna veľkosť prekladu alebo Maximálna dĺžka prekladu). Typickým prípadom použitia je rozšírenie umiestniteľných prvkov, aby sa zabezpečilo, že text zapadne aj pri dlhých hodnotách, napríklad: replacements:%s:"John Doe".

variants:SOURCE

Označiť tento reťazec ako variant reťazca so zodpovedajúcim zdrojom. Pozrite Varianty reťazcov.

regex:REGEX

Regulárny výraz na zhodu s prekladom, pozrite Regulárny výraz.

discard:NAME

Zahodí príznak definovaný na vyššej úrovni.

forbidden

Označuje zakázaný preklad v slovníku, pozrite Zakázané preklady.

strict-same

Spôsobiť, že Nezmenený preklad nebude používať vstavané výnimky slov.

strict-format

Spôsobiť, že kontroly formátu vynútia používanie formátu aj pre tvary množného čísla s jednou hodnotou, pozrite Formátované reťazce.

case-insensitive

Upraviť správanie kontrol tak, aby nerozlišovali veľkosť písmen. Momentálne ovplyvňuje iba kontrolu kvality Zástupné symboly.

accelerator

Určite jediný interpunkčný znak akcelerátora, napríklad accelerator:&, accelerator:_ alebo accelerator:~. Zapína kontrolu kvality Kľúč akcelerátora.

asciidoc-text

Spracovávať text ako dokument AsciiDoc, ovplyvňuje Nezmenený preklad. Zapína kontrolu kvality Značkovanie AsciiDoc.

bbcode-text

Spracovávať text ako dokument Bulletin Board Code (BBCode), ovplyvňuje Nezmenený preklad. Zapína kontrolu kvality Značkovanie BBCode.

check-glossary

Zapína kontrolu kvality Nenasleduje slovník.

fluent-parts

Zapína kontrolu kvality Časti Fluent.

fluent-references

Zapína kontrolu kvality Referencie Fluent.

fluent-target-inner-html

Zapína kontrolu kvality Vnútorné HTML prekladu Fluent.

fluent-target-syntax

Zapína kontrolu kvality Syntax prekladu Fluent.

angularjs-format

Zapína kontrolu kvality Reťazec interpolácie AngularJS.

automattic-components-format

Zapína kontrolu kvality Formátovanie komponentov Automattic.

c-format

Zapína kontrolu kvality Formát C.

c-sharp-format

Zapína kontrolu kvality Formát C#.

csharp-format

Zapína kontrolu kvality Formát C#.

es-format

Zapína kontrolu kvality Šablónové literály ECMAScript.

i18next-interpolation

Zapína kontrolu kvality Interpolácia i18next.

icu-message-format

Zapína kontroly kvality ICU MessageFormat a Syntax ICU MessageFormat.

java-printf-format

Zapína kontrolu kvality Formát Java.

java-format

Zapína kontrolu kvality Java MessageFormat.

auto-java-messageformat

Spracovávať text ako podmienený Java MessageFormat, zapína Java MessageFormat iba vtedy, keď zdroj obsahuje zástupné symboly Java MessageFormat. Zapína kontrolu kvality Java MessageFormat.

javascript-format

Zapína kontrolu kvality Formát JavaScript.

laravel-format

Zapína kontrolu kvality Formát Laravel.

lua-format

Zapína kontrolu kvality Formát Lua.

object-pascal-format

Zapína kontrolu kvality Formát Object Pascal.

objc-format

Zapína kontrolu kvality Formát Objective-C.

percent-placeholders

Zapína kontrolu kvality Percentuálne zástupné symboly.

perl-brace-format

Zapína kontrolu kvality Formát zátvoriek Perl.

perl-format

Zapína kontrolu kvality Formát Perl.

php-format

Zapína kontrolu kvality Formát PHP.

python-brace-format

Zapína kontrolu kvality Formát zátvoriek Python.

python-format

Zapína kontrolu kvality Formát Python.

qt-format

Zapína kontrolu kvality Formát Qt.

qt-plural-format

Zapína kontrolu kvality Formát množného čísla Qt.

ruby-format

Zapína kontrolu kvality Formát Ruby.

scheme-format

Zapína kontrolu kvality Formát Scheme.

vue-format

Zapína kontrolu kvality Formátovanie Vue I18n.

rst-text

Spracovávať text ako dokument reStructuredText, ovplyvňuje Nezmenený preklad. Zapína kontroly kvality Nekonzistentné reStructuredText a Chyba syntaxe reStructuredText.

md-text

Spracovávať text ako dokument Markdown a poskytovať zvýraznenie syntaxe Markdown v oblasti textu prekladu. Zapína kontroly kvality Odkazy Markdown, Referencie Markdown a Syntax Markdown.

max-length

Zapína kontrolu kvality Maximálna dĺžka prekladu.

max-lines

Zapína kontrolu kvality Maximálny počet riadkov.

max-size

Zapína kontrolu kvality Maximálna veľkosť prekladu.

placeholders

Zapína kontrolu kvality Zástupné symboly.

regex

Zapína kontrolu kvality Regulárny výraz.

safe-mdx

Zapína kontrolu kvality Bezpečný MDX.

safe-html

Zapína kontrolu kvality Nebezpečné HTML.

auto-safe-html

Spracovávať text ako podmienené HTML, zapína Nebezpečné HTML iba pre prostý text alebo zdrojové reťazce, ktoré obsahujú štandardné značky HTML alebo platné vlastné prvky. Toto je užitočné pre rozšírené varianty Markdown, ako je MDX, kde syntax s lomenými zátvorkami nemusí byť HTML. Zapína kontrolu kvality Nebezpečné HTML.

url

Reťazec by mal pozostávať iba z URL. Zapína kontrolu kvality URL.

fluent-source-inner-html

Zapína kontrolu kvality Vnútorné HTML zdroja Fluent.

fluent-source-syntax

Zapína kontrolu kvality Syntax zdroja Fluent.

ignore-all-checks

Ignorovať všetky kontroly kvality.

ignore-accelerator

Preskočiť kontrolu kvality Kľúč akcelerátora.

ignore-ai-accuracy

Preskočiť kontrolu kvality AI: Presnosť.

ignore-ai-fluency

Preskočiť kontrolu kvality AI: Plynulosť.

ignore-ai-formatting

Preskočiť kontrolu kvality AI: Formátovanie.

ignore-ai-style

Preskočiť kontrolu kvality AI: Štýl.

ignore-ai-terminology

Preskočiť kontrolu kvality AI: Terminológia.

ignore-asciidoc-markup

Preskočiť kontrolu kvality Značkovanie AsciiDoc.

ignore-bbcode

Preskočiť kontrolu kvality Značkovanie BBCode.

ignore-xml-chars-around-tags

Preskočiť kontrolu kvality Znaky okolo značiek XML.

ignore-duplicate

Preskočiť kontrolu kvality Po sebe idúce duplicitné slová.

ignore-check-glossary

Preskočiť kontrolu kvality Nenasleduje slovník.

ignore-double-space

Preskočiť kontrolu kvality Dvojitá medzera.

ignore-fluent-parts

Preskočiť kontrolu kvality Časti Fluent.

ignore-fluent-references

Preskočiť kontrolu kvality Referencie Fluent.

ignore-fluent-target-inner-html

Preskočiť kontrolu kvality Vnútorné HTML prekladu Fluent.

ignore-fluent-target-syntax

Preskočiť kontrolu kvality Syntax prekladu Fluent.

ignore-angularjs-format

Preskočiť kontrolu kvality Reťazec interpolácie AngularJS.

ignore-automattic-components-format

Preskočiť kontrolu kvality Formátovanie komponentov Automattic.

ignore-c-format

Preskočiť kontrolu kvality Formát C.

ignore-c-sharp-format

Preskočiť kontrolu kvality Formát C#.

ignore-es-format

Preskočiť kontrolu kvality Šablónové literály ECMAScript.

ignore-i18next-interpolation

Preskočiť kontrolu kvality Interpolácia i18next.

ignore-icu-message-format

Preskočiť kontrolu kvality ICU MessageFormat.

ignore-java-printf-format

Preskočiť kontrolu kvality Formát Java.

ignore-java-format

Preskočiť kontrolu kvality Java MessageFormat.

ignore-javascript-format

Preskočiť kontrolu kvality Formát JavaScript.

ignore-laravel-format

Preskočiť kontrolu kvality Formát Laravel.

ignore-lua-format

Preskočiť kontrolu kvality Formát Lua.

ignore-object-pascal-format

Preskočiť kontrolu kvality Formát Object Pascal.

ignore-objc-format

Preskočiť kontrolu kvality Formát Objective-C.

ignore-percent-placeholders

Preskočiť kontrolu kvality Percentuálne zástupné symboly.

ignore-perl-brace-format

Preskočiť kontrolu kvality Formát zátvoriek Perl.

ignore-perl-format

Preskočiť kontrolu kvality Formát Perl.

ignore-php-format

Preskočiť kontrolu kvality Formát PHP.

ignore-python-brace-format

Preskočiť kontrolu kvality Formát zátvoriek Python.

ignore-python-format

Preskočiť kontrolu kvality Formát Python.

ignore-qt-format

Preskočiť kontrolu kvality Formát Qt.

ignore-qt-plural-format

Preskočiť kontrolu kvality Formát množného čísla Qt.

ignore-ruby-format

Preskočiť kontrolu kvality Formát Ruby.

ignore-scheme-format

Preskočiť kontrolu kvality Formát Scheme.

ignore-vue-format

Preskočiť kontrolu kvality Formátovanie Vue I18n.

ignore-translated

Preskočiť kontrolu kvality Bolo preložené.

ignore-inconsistent

Preskočiť kontrolu kvality Nekonzistentné.

ignore-rst-references

Preskočiť kontrolu kvality Nekonzistentné reStructuredText.

ignore-kashida

Preskočiť kontrolu kvality Použitý znak Kashida.

ignore-md-link

Preskočiť kontrolu kvality Odkazy Markdown.

ignore-md-reflink

Preskočiť kontrolu kvality Referencie Markdown.

ignore-md-syntax

Preskočiť kontrolu kvality Syntax Markdown.

ignore-max-length

Preskočiť kontrolu kvality Maximálna dĺžka prekladu.

ignore-max-lines

Preskočiť kontrolu kvality Maximálny počet riadkov.

ignore-max-size

Preskočiť kontrolu kvality Maximálna veľkosť prekladu.

ignore-escaped-newline

Preskočiť kontrolu kvality Nezhodné \n.

ignore-end-colon

Preskočiť kontrolu kvality Nesúlad dvojbodky.

ignore-end-ellipsis

Preskočiť kontrolu kvality Nesúlad trojbodky.

ignore-end-exclamation

Preskočiť kontrolu kvality Nesúlad výkričníka.

ignore-end-stop

Preskočiť kontrolu kvality Nesúlad bodky.

ignore-end-interrobang

Preskočiť kontrolu kvality Nesúlad interrobangu.

ignore-end-question

Preskočiť kontrolu kvality Nesúlad otáznika.

ignore-end-semicolon

Preskočiť kontrolu kvality Nesúlad bodkočiarky.

ignore-newline-count

Preskočiť kontrolu kvality Nesúlad zalomenia riadkov.

ignore-plurals

Preskočiť kontrolu kvality Chýbajúce množné čísla.

ignore-multiple-capital

Preskočiť kontrolu kvality Viacero veľkých písmen.

ignore-kabyle-characters

Preskočiť kontrolu kvality Neštandardné znaky v kabylčine.

ignore-placeholders

Preskočiť kontrolu kvality Zástupné symboly.

ignore-prohibited-initial-character

Preskočiť kontrolu kvality Zakázaný počiatočný znak.

ignore-punctuation-spacing

Preskočiť kontrolu kvality Rozostup interpunkcie.

ignore-regex

Preskočiť kontrolu kvality Regulárny výraz.

ignore-rst-syntax

Preskočiť kontrolu kvality Chyba syntaxe reStructuredText.

ignore-reused

Preskočiť kontrolu kvality Opakovane použitý preklad.

ignore-safe-mdx

Preskočiť kontrolu kvality Bezpečný MDX.

ignore-same-plurals

Preskočiť kontrolu kvality Rovnaké množné čísla.

ignore-begin-newline

Preskočiť kontrolu kvality Počiatočný nový riadok.

ignore-begin-space

Preskočiť kontrolu kvality Počiatočné medzery.

ignore-end-newline

Preskočiť kontrolu kvality Koncový nový riadok.

ignore-end-space

Preskočiť kontrolu kvality Koncová medzera.

ignore-same

Preskočiť kontrolu kvality Nezmenený preklad.

ignore-safe-html

Preskočiť kontrolu kvality Nebezpečné HTML.

ignore-url

Preskočiť kontrolu kvality URL.

ignore-xml-tags

Preskočiť kontrolu kvality Značkovanie XML.

ignore-xml-invalid

Preskočiť kontrolu kvality Syntax XML.

ignore-zero-width-space

Preskočiť kontrolu kvality Medzera nulovej šírky.

ignore-ellipsis

Preskočiť kontrolu kvality Trojbodka.

ignore-fluent-source-inner-html

Preskočiť kontrolu kvality Vnútorné HTML zdroja Fluent.

ignore-fluent-source-syntax

Preskočiť kontrolu kvality Syntax zdroja Fluent.

ignore-icu-message-format

Preskočiť kontrolu kvality Syntax ICU MessageFormat.

ignore-long-untranslated

Preskočiť kontrolu kvality Dlhodobo nepreložený.

ignore-multiple-failures

Preskočiť kontrolu kvality Viacero zlyhávajúcich kontrol.

ignore-unnamed-format

Preskočiť kontrolu kvality Viacero nepomenovaných premenných.

ignore-source-max-length

Preskočiť kontrolu kvality Dĺžka zdrojového reťazca.

ignore-optional-plural

Preskočiť kontrolu kvality Nemnožné číslo.

Poznámka

Všeobecne sa pravidlo nazýva ignore-* pre akúkoľvek kontrolu, používajúc jej identifikátor, takže to môžete použiť aj pre vaše vlastné kontroly.

Tieto príznaky sú chápané v nastaveniach Konfigurácia komponentu, v nastaveniach pre každý zdrojový reťazec a v samotnom prekladovom súbore (napríklad v GNU gettext).

Príznaky založené na umiestnení

Niektoré príznaky sa pridávajú k reťazcom predvolene, na základe ich umiestnenia. To znamená, že určité kontroly sa automaticky povolia v závislosti od toho, kde sa reťazec používa.

  • rst-text: Tento príznak sa automaticky pridáva k reťazcom v súboroch reStructuredText, ak je prípona umiestnenia .rst.

  • md-text: Tento príznak sa automaticky pridáva k reťazcom v súboroch Markdown a MDX, ak je prípona umiestnenia .md, .markdown alebo .mdx.

Vynucovanie kontrol

Vynútené kontroly nemožno zamietnuť a označia reťazec ako Potrebuje úpravu (pozri Stavy prekladu). Toto bráni prekladateľom skrývať takéto kontroly.

Rada

Zapnutie vynucovania kontrol ho nezapne automaticky. Niektoré kontroly je potrebné zapnúť pridaním zodpovedajúceho príznaku k príznakom reťazca alebo komponentu.

Najlepšie sa to používa s kontrolami, ktoré môžu spôsobiť vážne problémy, ako sú kontroly pre Formátované reťazce. Použitie pre štýlové kontroly ako Nezmenený preklad sa neodporúča, pretože zamietnutie je niekedy rozumný prístup v týchto prípadoch.

Filter kvality prekladu sa potom dá použiť na vylúčenie reťazcov potrebujúcich úpravu zo zapísania do správy verzií.

Správa písiem

Rada

Písma nahrané do Weblate sa používajú výlučne na účely kontroly Maximálna veľkosť prekladu, nemajú vplyv na používateľské rozhranie Weblate.

Kontrola Maximálna veľkosť prekladu používaná na výpočet rozmerov vykresleného textu potrebuje, aby bolo písmo načítané do Weblate a vybrané pomocou prekladového príznaku (pozri Prispôsobenie správania pomocou príznakov).

Nástroj na správu písiem Weblate v Písma pod ponukou Operácie vášho prekladového projektu poskytuje rozhranie na nahrávanie a správu písiem. Je možné nahrať písma TrueType alebo OpenType, nastaviť skupiny písiem a použiť ich v kontrole.

Skupiny písiem vám umožňujú definovať rôzne písma pre rôzne jazyky, čo je typicky potrebné pre nelatinské jazyky:

../_images/font-group-edit.webp

Skupiny písiem sú identifikované podľa názvu, ktorý nemôže obsahovať medzery alebo špeciálne znaky, aby sa dali ľahko použiť v definícii kontroly:

../_images/font-group-list.webp

Rodina písiem a štýl sú automaticky rozpoznané po ich nahraní:

../_images/font-edit.webp

Môžete mať načítaných niekoľko písiem do Weblate:

../_images/font-list.webp

Na použitie písiem na kontrolu dĺžky reťazca mu odovzdajte vhodné príznaky (pozri Prispôsobenie správania pomocou príznakov). Pravdepodobne budete potrebovať nasledujúce:

max-size:500 / max-size:300:5

Definuje maximálnu šírku v pixeloch a voliteľne maximálny počet riadkov. Zalamovanie slov sa aplikuje, keď je nakonfigurovaný viac ako jeden riadok.

font-family:ubuntu

Definuje skupinu písiem na použitie špecifikovaním jej identifikátora.

font-size:22

Definuje veľkosť písma v pixeloch.

Písanie vlastných kontrol

Je vstavaný široký rozsah kontrol kvality (pozri Kontroly kvality), hoci nemusia pokrývať všetko, čo chcete kontrolovať. Zoznam vykonávaných kontrol je možné upraviť pomocou CHECK_LIST a môžete tiež pridať vlastné kontroly.

  1. Podtrieda weblate.checks.Check

  2. Nastavte niekoľko atribútov.

  3. Implementujte buď metódu check (ak chcete riešiť množné čísla vo svojom kóde) alebo metódu check_single (ktorá to urobí za vás).

Niektoré príklady:

Na inštaláciu vlastných kontrol uveďte úplnú cestu k triede v Pythone v CHECK_LIST, pozri Custom quality checks, add-ons, translation services and auto-fixes.

Kontroly deklarujúce propagates = "source" alebo propagates = "target" aktualizujú súvisiace reťazce na pozadí po uložení. Môžu prepísať evaluate_propagated(units) na hromadné vyhodnotenie zodpovedajúcej skupiny. Vráťte pár (unit, failed) pre každý reťazec, vrátane prechádzajúcich reťazcov, aby sa mohli odstrániť zastarané varovania. Bez tohto prepísania Weblate vyhodnocuje kontrolu na každom zodpovedajúcom reťazci v chunkoch.

Kontrola, že prekladový text neobsahuje „foo“

Toto je celkom jednoduchá kontrola, ktorá len kontroluje, či v preklade nechýba reťazec „foo“.

"""Simple quality check example."""

from __future__ import annotations

from typing import TYPE_CHECKING

from django.utils.translation import gettext_lazy

from weblate.checks.base import TargetCheck

if TYPE_CHECKING:
    from weblate.trans.models import Unit


class FooCheck(TargetCheck):
    # Used as identifier for check, should be unique
    # Has to be shorter than 50 characters
    check_id = "foo"

    # Short name used to display failing check
    # Might be localized using gettext_lazy
    name = "Foo check"

    # Description for failing check
    description = gettext_lazy("Your translation is foo")

    # Real check code
    def check_single(self, source: str, target: str, unit: Unit) -> bool:
        return "foo" in target

Kontrola, že plurály v českom prekladovom texte sa líšia

Kontrola pomocou informácií o jazyku na overenie, že dve formy množného čísla v češtine nie sú rovnaké.

"""Quality check example for Czech plurals."""

from __future__ import annotations

from django.utils.translation import gettext_lazy

from weblate.checks.base import TargetCheck


class PluralCzechCheck(TargetCheck):
    # Used as identifier for check, should be unique
    # Has to be shorter than 50 characters
    check_id = "foo"

    # Short name used to display failing check
    # Might be localized using gettext_lazy
    name = "Foo check"

    # Description for failing check
    description = gettext_lazy("Your translation is foo")

    # Real check code
    def check_target_unit(self, sources, targets, unit) -> bool:
        if unit.translation.language.is_base({"cs"}):
            return targets[1] == targets[2]
        return False

    def check_single(self, source, target, unit) -> bool:
        """We don't check target strings here."""
        return False