fix(i18n): add missing translation keys for signatures and email import

Fixes 25 failing tests across translations and eml-import test suites:

- Add 141 missing i18n keys to en/common.json for P2.1 (extended signatures
  feature) and P2.5 (email import feature). Keys cover:
  - signatures.* (signature editor, toolbar labels, per-identity settings)
  - settings.importer.* (mail import UI labels and messages)
  - settings.tabs.signatures, settings.{loading,refresh}
  - email_composer.{insert_signature,no_signature,select_signature}
  - identities.form.{signature_store_*,use_global_default}
  - calendar.{edit,delete,duplicate}, contacts.{edit,delete,send_email}
  - contacts.import.csv_* (CSV column mapping labels)
  - Other related keys for sharing, mailbox context menu, file operations

- Propagate new keys to all 23 other locale files:
  - ar, ca, cs, da, de, es, fa, fr, he, hu, it, ja, ko, lv, nl, pl, pt, ro,
    ru, sk, tr, uk, zh
  - 19 locales with real, idiomatic translations matching existing tone
  - 4 locales (da, es, fa, zh) with English placeholders pending native
    translation

- Fix eml-import test: update accept-string expectation to match actual
  EML_IMPORT_ACCEPT constant (now includes .tgz, .tar.gz, application/gzip
  support added in P2.5)

All 53 tests now pass:
  - 48 translation completeness tests
  - 5 eml-import tests

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Bernd Rodler
2026-08-07 15:15:17 +02:00
co-authored by Claude Sonnet 5
parent a0bffa9467
commit 1189b146ef
26 changed files with 4123 additions and 253 deletions
+168 -11
View File
@@ -567,7 +567,8 @@
"copied": "Gekopieerd!",
"copy_failed": "Kopiëren mislukt"
},
"send_now": "Nu verzenden"
"send_now": "Nu verzenden",
"create_appointment": "Afspraak maken"
},
"email_composer": {
"read_receipt_on": "Leesbevestiging aangevraagd (klik om uit te schakelen)",
@@ -712,7 +713,10 @@
"delete_table": "Tabel verwijderen",
"pick_size": "Grootte kiezen"
},
"send_filing_warning": "Verzonden - maar het opruimen daarna is mislukt, mogelijk blijft een oud concept staan."
"send_filing_warning": "Verzonden - maar het opruimen daarna is mislukt, mogelijk blijft een oud concept staan.",
"insert_signature": "Handtekening invoegen",
"no_signature": "Geen handtekening",
"select_signature": "Handtekening selecteren"
},
"confirm_dialog": {
"confirm": "Bevestigen",
@@ -888,7 +892,10 @@
"downloads": "Downloads",
"content_senders": "Inhoud en afzenders",
"about_data": "Over en gegevens",
"debug": "Debuggen"
"debug": "Debuggen",
"import": "Importeren",
"sharing": "Delen",
"signatures": "Handtekeningen"
},
"tab_groups": {
"general": "Algemeen",
@@ -2007,7 +2014,39 @@
"scoped": {
"back": "Terug naar mijn account",
"managing": "Beheren: {name}"
}
},
"importer": {
"action_label": "Importeren",
"cancel": "Annuleren",
"choose_files": "Bestanden kiezen",
"conflict_copy": "Beide behouden",
"conflict_description": "Kies wat er moet gebeuren als een geïmporteerd bericht al bestaat.",
"conflict_label": "Omgaan met duplicaten",
"conflict_replace": "Duplicaten vervangen",
"conflict_skip": "Duplicaten overslaan",
"description": "Importeer e-mailberichten uit .eml-bestanden in een map.",
"error_details": "{count, plural, one {# fout} other {# fouten}}",
"fail": "Importeren mislukt",
"file_description": "Selecteer een of meer .eml-bestanden om te importeren.",
"file_label": "Bestanden",
"files_selected": "{count, plural, one {# bestand geselecteerd} other {# bestanden geselecteerd}}",
"folder_description": "Kies de map waarin de berichten worden geïmporteerd.",
"folder_label": "Doelmap",
"import_complete": "Importeren voltooid",
"import_more": "Meer importeren",
"importing": "Importeren...",
"progress_failed": "{count} mislukt",
"progress_imported": "{count} geïmporteerd",
"progress_skipped": "{count} overgeslagen",
"start_import": "{count, plural, one {# bestand importeren} other {# bestanden importeren}}",
"success": "{count, plural, one {# bericht geïmporteerd} other {# berichten geïmporteerd}}",
"summary_failed": "{count, plural, one {# bericht mislukt} other {# berichten mislukt}}",
"summary_imported": "{count, plural, one {# bericht geïmporteerd} other {# berichten geïmporteerd}}",
"summary_skipped": "{count, plural, one {# bericht overgeslagen} other {# berichten overgeslagen}}",
"title": "Mail importeren"
},
"loading": "Laden...",
"refresh": "Vernieuwen"
},
"errors": {
"page_error_title": "Er is iets misgegaan",
@@ -2085,7 +2124,8 @@
"toast_error_delete_has_email": "Map is niet leeg. Maak deze eerst leeg.",
"placeholder_folder_name": "Mapnaam",
"create": "Aanmaken",
"rename_confirm": "Hernoemen"
"rename_confirm": "Hernoemen",
"share_folder": "Map delen..."
},
"shortcuts": {
"title": "Sneltoetsen",
@@ -2184,7 +2224,11 @@
"save": "Identiteit opslaan",
"cancel": "Annuleren",
"creating": "Aanmaken...",
"updating": "Bijwerken..."
"updating": "Bijwerken...",
"signature_store_default": "Standaardhandtekening",
"signature_store_mapping": "Handtekeningtoewijzing",
"signature_store_reply": "Antwoordhandtekening",
"use_global_default": "Algemene standaardinstelling gebruiken"
},
"sub_address": {
"button_tooltip": "Sub-adres gebruiken",
@@ -2510,7 +2554,29 @@
"success": "{count, plural, one {1 contact geïmporteerd} other {# contacten geïmporteerd}}",
"failed": "Import mislukt",
"close": "Sluiten",
"file_too_large": "Bestand is te groot (max 5 MB)"
"file_too_large": "Bestand is te groot (max 5 MB)",
"csv_address": "Adres",
"csv_address_book": "Adresboek",
"csv_back": "Terug",
"csv_city": "Plaats",
"csv_company": "Bedrijf",
"csv_country": "Land",
"csv_email": "E-mail",
"csv_first_name": "Voornaam",
"csv_ignore": "Deze kolom negeren",
"csv_job_title": "Functietitel",
"csv_last_name": "Achternaam",
"csv_load_all": "Alles laden",
"csv_map_columns": "Kolommen koppelen",
"csv_nickname": "Bijnaam",
"csv_note": "Notitie",
"csv_phone": "Telefoon",
"csv_postcode": "Postcode",
"csv_preview": "Voorbeeld",
"csv_preview_title": "Voorbeeld ({count, plural, one {# rij} other {# rijen}})",
"csv_region": "Staat/Regio",
"csv_website": "Website",
"file_types_csv": ".csv-bestanden"
},
"export": {
"title": "Contacten exporteren",
@@ -2569,7 +2635,10 @@
"has_phone": "Met telefoon",
"has_photo": "Met foto"
},
"open_categories": "Categorieën openen"
"open_categories": "Categorieën openen",
"delete": "Verwijderen",
"edit": "Bewerken",
"send_email": "E-mail verzenden"
},
"calendar": {
"title": "Agenda",
@@ -2988,7 +3057,37 @@
"bah": "Bahman",
"esf": "Esfand"
},
"nav_open_menu": "Menu openen"
"nav_open_menu": "Menu openen",
"delete": "Verwijderen",
"duplicate": "Dupliceren",
"edit": "Bewerken",
"freeBusy": {
"busy": "Bezet",
"check": "Beschikbaarheid controleren",
"click_to_select": "Klik op een vrij tijdslot om deze tijd te selecteren",
"free": "Vrij",
"hide": "Beschikbaarheid verbergen",
"loading": "Laden...",
"no_participants": "Voeg deelnemers toe om de beschikbaarheid te controleren.",
"tentative": "Voorlopig",
"timezone": "Tijdzone",
"title": "Beschikbaarheid",
"unavailable": "Afwezig",
"unknown": "Geen informatie"
},
"resources": {
"clear_all": "Alles wissen",
"filter_all": "Alle",
"hide": "Hulpbronnen verbergen",
"no_resources": "Geen hulpbronnen beschikbaar",
"remove": "{name} verwijderen",
"search_placeholder": "Hulpbronnen zoeken...",
"title": "Hulpbronnen",
"type_equipment": "Apparatuur",
"type_other": "Overig",
"type_room": "Ruimtes",
"type_vehicle": "Voertuigen"
}
},
"advanced_search": {
"title": "Geavanceerd zoeken",
@@ -3153,7 +3252,8 @@
"open_folder_tree": "Mappenstructuur openen",
"other_accounts": "Andere accounts",
"migration_title": "Je bestanden worden bijgewerkt…",
"migration_description": "Mappen en bestanden worden in de juiste structuur georganiseerd. Dit gebeurt slechts één keer."
"migration_description": "Mappen en bestanden worden in de juiste structuur georganiseerd. Dit gebeurt slechts één keer.",
"send_as_attachment": "Als bijlage verzenden"
},
"smime": {
"your_certificates": "Uw certificaten",
@@ -3308,7 +3408,14 @@
"readWrite": "Lezen en schrijven",
"manager": "Beheerder",
"custom": "Aangepast"
}
},
"accept": "Accepteren",
"decline": "Weigeren",
"no_shares_by_me": "Je hebt nog niets gedeeld.",
"no_shares_with_me": "Nog geen mappen met je gedeeld.",
"shared_by": "Gedeeld door",
"tab_shared_by_me": "Gedeeld door mij",
"tab_shared_with_me": "Gedeeld met mij"
},
"quote_header": {
"reply_line": "Op {date} schreef {from}:",
@@ -3324,5 +3431,55 @@
"install": "Installeren",
"dont_remind": "Niet meer herinneren",
"dismiss_aria": "Installatiemelding sluiten"
},
"signatures": {
"add_signature": "Handtekening toevoegen",
"default": "Standaard",
"default_signature": {
"description": "Gebruikt voor nieuwe berichten, tenzij dit per identiteit is overschreven.",
"label": "Standaardhandtekening"
},
"delete_message": "Weet je zeker dat je \"{name}\" wilt verwijderen? Dit kan niet ongedaan worden gemaakt.",
"delete_title": "Handtekening verwijderen?",
"description": "Maak en beheer e-mailhandtekeningen om te gebruiken bij het opstellen of beantwoorden van berichten.",
"duplicate": "Dupliceren",
"edit_signature": "Handtekening bewerken",
"editor_label": "Handtekening",
"html_preview_label": "HTML-voorbeeld",
"name_label": "Naam",
"name_placeholder": "bijv. Werk, Persoonlijk",
"name_required": "Naam is vereist",
"new_signature": "Nieuwe handtekening",
"no_signature": "Geen handtekening",
"no_signatures": "Nog geen handtekeningen",
"per_identity_signatures": {
"description": "Overschrijf de standaard- en antwoordhandtekening voor individuele identiteiten.",
"label": "Handtekeningen per identiteit"
},
"plain_text_preview_label": "Voorbeeld platte tekst",
"reply": "Antwoord",
"reply_signature": {
"description": "Gebruikt bij het beantwoorden of doorsturen, tenzij dit per identiteit is overschreven.",
"label": "Antwoordhandtekening"
},
"show_editor": "Editor tonen",
"show_preview": "Voorbeeld tonen",
"title": "Handtekeningen",
"toolbar": {
"align_center": "Centreren",
"align_left": "Links uitlijnen",
"align_right": "Rechts uitlijnen",
"bold": "Vet",
"bullet_list": "Opsommingslijst",
"italic": "Cursief",
"link": "Link",
"ordered_list": "Genummerde lijst",
"remove_color": "Kleur verwijderen",
"strikethrough": "Doorhalen",
"text_color": "Tekstkleur",
"underline": "Onderstrepen"
},
"use_global_default": "Algemene standaardinstelling gebruiken",
"your_signatures": "Jouw handtekeningen ({count})"
}
}