Übersetzungsabläufe

Der Einsatz von Weblate erhöht die Qualität, reduziert den manuellen Aufwand und bringt alle am Lokalisierungsprozess Beteiligten näher zusammen. Es liegt an Ihnen, zu entscheiden, wie viele Weblate-Funktionen Sie nutzen möchten.

Die folgende Liste ist keine vollständige Auflistung der Konfigurationsmöglichkeiten von Weblate. Sie können weitere Arbeitsabläufe auf der Grundlage der hier aufgeführten Beispiele erstellen.

Arbeitsablauf-Anpassung

Zusätzlich zur Konfiguration unter Projektkonfiguration und Komponentenkonfiguration (wie Überprüfung aktivieren, Vorschläge aktivieren, Über Vorschläge abstimmen, und Vorschläge automatisch annehmen) kann der Übersetzungsablauf pro Sprache angepasst werden.

Das plattformweite Anpassen des Arbeitsablaufs kann während dem Sprachdefinitionen ändern vorgenommen werden.

Das Anpassen pro Projekt kann auf jeder Sprachenseite des Projekts vorgenommen werden.

Review and suggestion settings can be overridden, the only limitation is that Überprüfung aktivieren needs to be turned on and can only be disabled in the per-language customization.

Es gilt die erste vorhandene Einstellung:

  1. Anpassung der Projektsprache

  2. Anpassung der Sprache

  3. Die Projekt/Komponenten-Einstellungen

Bemerkung

Bitte seien Sie vorsichtig, wenn Sie plattformweite Überschreibungen verwenden, da diese für alle Projekte gelten (es sei denn, sie haben eigene Überschreibungen für eine bestimmte Sprache).

Custom source language

Select Source language in a project’s language workflow settings to translate from another language in the same project. For example, you can translate a regional language variant from its parent language. Leave the selection empty to use the component’s source language.

The selected language’s translation is displayed as the source in the editor and used for translation checks, automatic translation, and translation memory. The original source strings and file identifiers remain unchanged.

Changing a parent translation marks its translated children as needing editing. Children are read-only while their parent is untranslated or needs editing, including when reviews are disabled. A parent that is translated (waiting for review) or approved permits editing. This restriction also applies through multiple levels of parent languages. Languages cannot depend on themselves or form a cycle.

If a component lacks the selected language or a matching string, its children are read-only until that source becomes available. Weblate preserves their translations and the configured source language; it does not fall back to the component source. Clearing the setting or selecting the component source language restores the canonical source. Moving a component applies the destination project’s workflow settings. Changing workflow settings updates affected strings before returning; on large projects, this can delay translation edits.

Languages selected as custom sources cannot be deleted until these workflow settings are cleared or changed to another language.

This setting can only be configured per project and language. Existing intermediate language configuration continues to control the component source.

Workflow changes affect new translation-memory updates. Previously stored source and target pairs remain subject to the existing translation-memory retention and cleanup settings. A missing source does not create an active memory entry.

Übersetzungssprachen begrenzen

Several settings can limit translation languages. They address different stages of the translation lifecycle and can be combined:

Control requests for languages that do not exist yet

Configure Neue Übersetzung hinzufügen at workspace, project, category, or component level. Categories and components can inherit this setting; see Vererbung von Einstellungen. You can let users contact maintainers, point them to translation instructions, create the language file automatically, or disable adding new translations.

Project admins can still add a translation when Weblate can create its file. For components that do not inherit the project setting, change Neue Übersetzung hinzufügen individually or automate the changes using PATCH /api/components/(string:project)/(string:component)/.

To allow existing project languages while requesting approval for new ones, select Create existing project languages; contact maintainers for new languages. A language qualifies when any non-glossary component in the project has a target translation for it, even with no translated strings. Source-only languages and glossary translations do not qualify. This applies across categories, including shared components and components the contributor cannot access.

Maintainers approve a language by creating its first target translation. Removing the last qualifying translation removes eligibility. Component overrides that allow unrestricted language creation can also introduce an eligible language. Project and category submissions use the languages present at the start of the operation, so component processing order does not affect the result.

Project and category submissions modify only components owned by that project or category. To add a language to a shared component, use its own language creation page; the owning project’s eligibility and permissions apply there.

The REST translation creation endpoint returns HTTP 403 for languages requiring approval; submit these requests through the web interface. The permission to add several languages does not bypass this policy. Maintainers and trusted add-ons retain their existing creation permissions, and repository file discovery is unaffected.

Disabling new translations controls user requests. It does not stop discovery of translation files added to the repository or automatic glossary language synchronization.

Limit which translation files Weblate discovers or creates

Configure Sprachfilter on each component. For example, ^(de|en|fr)$ limits the component to translation files whose language code is de, en, or fr. The filter applies while scanning the component file mask and when creating a new translation file; it does not change permissions for translations that are already present.

Language filters are configured per component, with no project-wide language allowlist. To apply a filter across many components, automate the changes using PATCH /api/components/(string:project)/(string:component)/.

Zugriff auf Übersetzungen nur für ausgewählte Sprachen gewähren

Use language-scoped teams when different users should be able to translate different languages. A team can only grant permissions, so remove any broader translation permission that would otherwise apply to the same users.

Direktes Bearbeiten einer bestehenden Sprache einschränken

Open the language settings in the project, enable Customize translation workflow for this language in this project, and turn on Restrict direct editing.

Users with the Edit string when suggestions are enforced permission can continue editing directly. Other users can add suggestions when Turn on suggestions is enabled. Turn off suggestions as well to make the language editable only by privileged users.

The restriction can also be configured site-wide while Sprachdefinitionen ändern. A project-language customization takes precedence over the site-wide language setting.

Über Vorschläge abstimmen verwenden

Turn on Suggestion voting to let users vote on suggestions. Voting alone does not restrict direct editing. A positive Automatically accept suggestions threshold also requires users without the Edit string when suggestions are enforced permission to submit suggestions. Use Restrict direct editing when this restriction should not depend on automatic acceptance.

Übersetzungszugriff

Die Zugriffssteuerung wird in den Arbeitsabläufen nicht im Detail behandelt, da die meisten ihrer Optionen auf jeden Arbeitsablauf angewendet werden kann. Bitte lesen Sie in der jeweiligen Dokumentation nach, wie Sie den Zugriff auf Übersetzungen verwalten können.

In den folgenden Kapiteln steht jeder Benutzer für einen Benutzer, der Zugriff auf die Übersetzung hat. Das kann jeder authentifizierte Benutzer sein, wenn das Projekt öffentlich ist, oder ein Benutzer mit der Berechtigung Übersetzen für das Projekt.

Übersetzungsstatus

Jede übersetzte Zeichenkette kann sich in einem der folgenden Status befinden:

Nicht übersetzt

Die Übersetzung ist leer, je nach Dateiformat kann sie in der Datei gespeichert werden oder nicht.

Bearbeitungsbedürftig

Die Übersetzung ist bearbeitungsbedürftig, was normalerweise auf ein ungenaues Matching oder eine Aktion des Übersetzers zurückzuführen ist. Je nach Dateiformat kann sie als bearbeitungsbedürftig gekennzeichnet sein (zum Beispiel durch eine fuzzy-Markierung in der gettext-Datei).

Muss umgeschrieben werden

Translation needs to be rewritten because of a source string change.

Muss überprüft werden

State used for source/template strings that need developer review. It is typically set for new source strings imported from the VCS when the Source edit addon is enabled, or when a source string is reported for checking.

Übersetzt / Überprüfung ausstehend

Translation is made. The translated state is shown as „Waiting for review“ if reviews are enabled.

Genehmigt

Die Übersetzung wurde in der Überprüfung genehmigt. Sie kann nicht mehr von Übersetzern geändert werden, sondern nur noch von Prüfern. Übersetzer können nur noch Vorschläge einreichen.

Dieser Status ist nur verfügbar, wenn Überprüfungen aktiviert sind.

Schreibgeschützt

Die Zeichenkette ist schreibgeschützt, weil sie die Markierung read-only hat, eine nicht editierbare Ausgangszeichenkette ist, oder in der Übersetzungsdatei als solche markiert wurde.

Vorschläge

Vorschläge werden nur in Weblate und nicht in der Übersetzungsdatei gespeichert.

Die Status werden soweit möglich in den Übersetzungsdateien dargestellt.

Hinweis

Wenn das von Ihnen verwendete Dateiformat das Speichern von Status nicht unterstützt, sollten Sie die Erweiterung Unveränderte Übersetzungen als „Muss umgeschrieben werden“ markieren verwenden, um unveränderte Zeichenketten als umzuschreibend zu markieren.

Bemerkung

The Filter für die Übersetzungsqualität determines which translation states are stored in the file.

Direkte Übersetzung

Die häufigste Einstellung für kleinere Teams, in denen jeder direkt übersetzen kann. Dies ist auch die Standardeinstellung in Weblate.

  • Jeder Benutzer kann Übersetzungen bearbeiten.

  • Vorschläge sind eine optionale Möglichkeit, Änderungen vorzuschlagen, wenn sich die Übersetzer über die Änderung unsicher sind.

Einstellung

Wert

Anmerkung

Überprüfung aktivieren

aus

Auf Projektebene konfiguriert.

Vorschläge aktivieren

an

Nützlich für Benutzer, die Vorschläge machen können, wenn sie sich nicht sicher sind.

Über Vorschläge abstimmen

aus

Vorschläge automatisch annehmen

0

Übersetzergruppe

Benutzer

Oder Übersetzen mit per-project access control.

Prüfergruppe

N/A

Nicht verwendet.

Peer-Review

In diesem Arbeitsablauf kann jeder einen Übersetzungsvorschlag einbringen, der von weiteren Mitgliedern genehmigt werden muss, bevor er als Übersetzung angenommen wird.

  • Jeder Benutzer kann Übersetzungsvorschläge hinzufügen.

  • Jeder Benutzer kann für Übersetzungsvorschläge abstimmen.

  • Vorschläge werden zu Übersetzungen, wenn sie eine bestimmte Anzahl von Stimmen erhalten haben.

Einstellung

Wert

Anmerkung

Überprüfung aktivieren

aus

Auf Projektebene konfiguriert.

Vorschläge aktivieren

an

Über Vorschläge abstimmen

an

Vorschläge automatisch annehmen

2

Es kann ein höherer Wert eingestellt werden, um mehr Peer-Reviews zu verlangen.

Übersetzergruppe

Benutzer

Oder Übersetzen mit per-project access control.

Prüfergruppe

N/A

Nicht verwendet, alle Übersetzer überprüfen.

Dedizierte Prüfer

Mit dedizierten Prüfern haben Sie zwei Benutzergruppen, von denen eine Übersetzungen einreichen kann und die andere sie überprüft, um sicherzustellen, dass die Übersetzungen konsistent sind und die Qualität stimmt.

  • Jeder Benutzer kann nicht genehmigte Übersetzungen bearbeiten.

  • Prüfer kann Zeichenketten genehmigen / nicht genehmigen.

  • Prüfer können alle Übersetzungen (einschließlich genehmigten) bearbeiten.

  • Vorschläge können auch verwendet werden, um Änderungen für genehmigte Zeichenketten vorzuschlagen.

Einstellung

Wert

Anmerkung

Überprüfung aktivieren

an

Auf Projektebene konfiguriert.

Vorschläge aktivieren

an

Nützlich für Benutzer, die Vorschläge machen können, wenn sie sich nicht sicher sind.

Über Vorschläge abstimmen

aus

Vorschläge automatisch annehmen

0

Übersetzergruppe

Benutzer

Oder Übersetzen mit per-project access control.

Prüfergruppe

Prüfer

Oder Überprüfen mit projektspezifischer Zugriffssteuerung.

Überprüfungen einschalten

Überprüfungen können in der Projektkonfiguration auf der Unterseite Arbeitsablauf der Projekteinstellungen aktiviert werden (zu finden im Menü Operationen → Einstellungen):

_images/project-workflow.webp

Überprüfungen pro Sprache

To require review only for selected languages, first turn on Überprüfung aktivieren for the whole project. Then open each project language page that should use different behavior, enable Customize translation workflow for this language in this project, and turn Enable reviews off for languages that should not require review.

Reviewers also need review access for the same language. Add them to a team whose roles include Review strings, and limit that team or the user membership to the language they should review. See Projektspezifische Zugriffssteuerung verwalten and Plattformweite Zugriffssteuerung for language-scoped access setup.

If approval buttons are not visible, check both parts of the setup: reviews have to be enabled for that translation, and the signed-in user has to have review permission for that language.

Machine translation and LLM workflows

Machine translation services, including large language model (LLM) services, can assist human translators or generate translations for them to edit or approve. Choose a workflow based on when humans should check the generated text and when it should reach the repository.

First, configure the services under Automatic suggestions in the project settings or site administration; see Automatische Vorschläge. For LLM services, see LLM-Übersetzungskontext for the context and instructions used to guide translation.

To process strings in bulk, run Automatische Übersetzung, select Machine translation as the source, and choose the services to use. For ongoing automation, configure the Automatische Übersetzung add-on on the component with the same source and desired mode. Use the query state:empty to fill empty translations without replacing existing human work; see Nach Zeichenketten suchen.

Human translation assisted by services

Use this workflow when translators should choose when to use machine translation for each string.

Translators consult the Automatische Vorschläge tab in the editor, choose a service result, edit it as needed, and save the translation. These service results are distinct from stored suggestions awaiting acceptance: a human decides what to save. This workflow does not require the Automatic translation add-on and can be combined with Dedizierte Prüfer.

Service translation with human editing

Use this workflow to fill translations automatically and let humans improve them directly.

The service output becomes a translation that humans can edit in the usual editor. It can be committed to the repository without human approval.

For machine drafts that should remain visibly unfinished, choose Add as „Needing edit“ instead. Humans edit these drafts and clear the Needs editing state when finished. To keep unfinished drafts out of repository commits, set Filter für die Übersetzungsqualität to Skip translations marked as needing editing.

Service suggestions with human acceptance

Use this workflow when humans should check service output before it becomes a translation.

Humans check the stored suggestions and accept suitable ones, or edit the proposed text before saving a translation. Suggestions are stored only in Weblate and do not enter translation files until accepted as translations. Accepting a suggestion is separate from approving a translation in the dedicated review workflow.

Service translation with review and a quality gateway

Use this workflow when humans should edit machine translations in Weblate, but only reviewer-approved translations should reach the repository.

Generated translations appear as Waiting for review. Translators can edit them, and reviewers check and approve the finished translations. Only after approval are these translations eligible for repository commits. Translators can suggest further changes to approved strings, while reviewers can edit them directly.

Enabling reviews alone does not keep unapproved translations out of commits. The translation quality filter provides that gateway. Keep reviews enabled for every language that should follow this workflow; check any workflow customization overrides.

AI-assisted quality evaluation

Use the KI-Qualitätsevaluierung add-on to check existing human or machine translations for accuracy, fluency, terminology, style, and formatting. It records quality checks without editing translations or approving them.

Configure an LLM service under Automatic suggestions, then install AI quality evaluation and select the Evaluation service. Choose a query to limit the translations evaluated. Run the add-on manually, choose an Evaluation frequency, or enable evaluation after translation changes or repository updates. Installation does not run evaluation. See the add-on documentation for provider costs and the data sent to the service.

Translators and reviewers can inspect the findings in the editor or search for checks such as check:ai_accuracy. Correct the translation or ignore a finding when appropriate. Combine this with Dedizierte Prüfer when human approval is required; AI evaluation does not replace approval or change the translation quality filter used for repository commits.

The component’s Diagnostics recommends the add-on when an LLM service is configured. If the selected service becomes unavailable, an error diagnostic links maintainers to the installed add-on’s configuration.

Reusing existing translations

Use existing translations to bootstrap a new language or component, then have humans adapt matches and fill the remaining gaps.

Run Automatische Übersetzung with Other translation components as the source, or select the Übersetzungsspeicher service under Machine translation. Choose whether matches become translations, drafts needing editing, or suggestions using the modes described above. Use state:empty to preserve existing translations. The Automatische Übersetzung add-on can apply this reuse automatically as strings arrive.

For ongoing consistency, Übersetzungsweitergabe can copy edits to matching strings across components in the same project. Propagation happens while translating; it does not copy translations merely loaded from the repository. See Übersetzungen aller Komponenten einheitlich halten for its requirements and for checks that help humans resolve differences.

Qualitäts-Gateway für die Ausgangszeichenketten

Die Ausgangszeichenketten der Ausgangssprache stammen in der Regel von Entwicklern, da sie den Code schreiben und die ursprünglichen Zeichenketten bereitstellen. Die Entwickler sind jedoch oft keine Muttersprachler der Ausgangssprache und liefern nicht die gewünschte Qualität der Ausgangszeichenketten. Die Zwischenübersetzung kann Ihnen dabei helfen, dies zu beheben – es gibt ein zusätzliches Qualitäts-Gateway für die Zeichenketten zwischen Entwicklern und Übersetzern.

Durch das Einstellen der Zwischensprachedatei wird diese Datei für das Übersetzen von Zeichenketten in die Ausgangssprache durch Übersetzer/Editor verwendet, während sie den Entwicklern gehört (oft unter Verwendung beliebiger Sprachen wie en_devel). Sobald dieser Schritt abgeschlossen ist, stehen die Zeichenketten für Übersetzungen in die Zielsprachen zur Verfügung, basierend auf der nun ausgefeilten Ausgangssprache, die in Einsprachige Basissprachdatei gespeichert ist.

digraph translations { graph [fontname = "sans-serif", fontsize=10]; node [fontname = "sans-serif", fontsize=10, margin=0.1, height=0, style=filled, fillcolor=white, shape=note]; edge [fontname = "sans-serif", fontsize=10]; subgraph cluster_dev { style=filled; color=lightgrey; label = "Development process"; "Developers" [shape=box, fillcolor="#144d3f", fontcolor=white]; "Developers" -> "Intermediate file"; } subgraph cluster_l10n { style=filled; color=lightgrey; label = "Localization process"; "Translators" [shape=box, fillcolor="#144d3f", fontcolor=white]; "Editors" [shape=box, fillcolor="#144d3f", fontcolor=white]; "Editors" -> "Monolingual base language file"; "Translators" -> "Translation language file"; } "Intermediate file" -> "Monolingual base language file" [constraint=false]; "Monolingual base language file" -> "Translation language file" [constraint=false]; }

Zeichenkettenkonsolidierung mithilfe der Zweitsprache

Wenn die Zwischensprachedatei nicht zum Konsolidieren der Zeichenketten verwendet werden kann, können Sie eine der Übersetzungen als Zweitsprache auswählen. Die Sprache kann in einem Projekt (Zweitsprache) oder in einer Komponente (Zweitsprache) konfiguriert werden. Sie wird dann den Übersetzern beim Übersetzen angezeigt (siehe Zweitsprachen) und kann optional als Quelle für maschinelle Übersetzungen verwendet werden (siehe Ausgangszeichenketten für die maschinelle Übersetzung).

Diese Vorgehensweise kann bei gemischtsprachigen Ausgangszeichenketten nützlich sein, um sie in einer einzigen Übersetzung zusammenzufassen, die dann als Grundlage für weitere Übersetzungen verwendet wird.

Ausgangszeichenketten überprüfen

Wenn Quellenüberprüfungen aktivieren aktiviert ist, kann der Überprüfungsprozess für Ausgangszeichenketten angewendet werden. Sobald er aktiviert ist, können Benutzer Probleme mit Ausgangszeichenketten melden. Der tatsächliche Prozess hängt davon ab, ob ein- oder zweisprachige Formate verwendet werden.

Für einsprachige Formate funktioniert das Überprüfen von Ausgangszeichenketten ähnlich wie Dedizierte Prüfer – sobald ein Problem mit einer Ausgangszeichenkette gemeldet wird, wird die Ausgangszeichenkette als Bearbeitungsbedürftig markiert.

Zweisprachige Formate erlauben keine direkte Bearbeitung von Ausgangszeichenketten (diese werden normalerweise direkt aus dem Quellcode extrahiert). In diesem Fall wird ein Ausgangszeichenkette muss überprüft werden-Label an die Zeichenketten angehängt, die von Übersetzern gemeldet wurden. Sie sollten solche Zeichenketten überprüfen und sie entweder im Quellcode bearbeiten oder das Label entfernen.