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:
co-authored by
Claude Sonnet 5
parent
a0bffa9467
commit
1189b146ef
@@ -0,0 +1,141 @@
|
||||
calendar.delete Delete
|
||||
calendar.duplicate Duplicate
|
||||
calendar.edit Edit
|
||||
calendar.freeBusy.busy Busy
|
||||
calendar.freeBusy.check Check Availability
|
||||
calendar.freeBusy.click_to_select Click a free slot to select this time
|
||||
calendar.freeBusy.free Free
|
||||
calendar.freeBusy.hide Hide Availability
|
||||
calendar.freeBusy.loading Loading...
|
||||
calendar.freeBusy.no_participants Add participants to check availability.
|
||||
calendar.freeBusy.tentative Tentative
|
||||
calendar.freeBusy.timezone Timezone
|
||||
calendar.freeBusy.title Availability
|
||||
calendar.freeBusy.unavailable Out of office
|
||||
calendar.freeBusy.unknown No information
|
||||
calendar.resources.clear_all Clear all
|
||||
calendar.resources.filter_all All
|
||||
calendar.resources.hide Hide resources
|
||||
calendar.resources.no_resources No resources available
|
||||
calendar.resources.remove Remove {name}
|
||||
calendar.resources.search_placeholder Search resources...
|
||||
calendar.resources.title Resources
|
||||
calendar.resources.type_equipment Equipment
|
||||
calendar.resources.type_other Other
|
||||
calendar.resources.type_room Rooms
|
||||
calendar.resources.type_vehicle Vehicles
|
||||
contacts.delete Delete
|
||||
contacts.edit Edit
|
||||
contacts.import.csv_address Address
|
||||
contacts.import.csv_address_book Address book
|
||||
contacts.import.csv_back Back
|
||||
contacts.import.csv_city City
|
||||
contacts.import.csv_company Company
|
||||
contacts.import.csv_country Country
|
||||
contacts.import.csv_email Email
|
||||
contacts.import.csv_first_name First name
|
||||
contacts.import.csv_ignore Ignore this column
|
||||
contacts.import.csv_job_title Job title
|
||||
contacts.import.csv_last_name Last name
|
||||
contacts.import.csv_load_all Load all
|
||||
contacts.import.csv_map_columns Map columns
|
||||
contacts.import.csv_nickname Nickname
|
||||
contacts.import.csv_note Note
|
||||
contacts.import.csv_phone Phone
|
||||
contacts.import.csv_postcode Postal code
|
||||
contacts.import.csv_preview Preview
|
||||
contacts.import.csv_preview_title Preview ({count, plural, one {# row} other {# rows}})
|
||||
contacts.import.csv_region State/Region
|
||||
contacts.import.csv_website Website
|
||||
contacts.import.file_types_csv .csv files
|
||||
contacts.send_email Send email
|
||||
email_composer.insert_signature Insert signature
|
||||
email_composer.no_signature No signature
|
||||
email_composer.select_signature Select signature
|
||||
email_viewer.create_appointment Create Appointment
|
||||
files.send_as_attachment Send as Attachment
|
||||
identities.form.signature_store_default Default signature
|
||||
identities.form.signature_store_mapping Signature mapping
|
||||
identities.form.signature_store_reply Reply signature
|
||||
identities.form.use_global_default Use global default
|
||||
mailbox_context_menu.share_folder Share Folder...
|
||||
settings.importer.action_label Import
|
||||
settings.importer.cancel Cancel
|
||||
settings.importer.choose_files Choose files
|
||||
settings.importer.conflict_copy Keep both
|
||||
settings.importer.conflict_description Choose what to do when an imported message already exists.
|
||||
settings.importer.conflict_label Duplicate handling
|
||||
settings.importer.conflict_replace Replace duplicates
|
||||
settings.importer.conflict_skip Skip duplicates
|
||||
settings.importer.description Import email messages from .eml files into a folder.
|
||||
settings.importer.error_details {count, plural, one {# error} other {# errors}}
|
||||
settings.importer.fail Import failed
|
||||
settings.importer.file_description Select one or more .eml files to import.
|
||||
settings.importer.file_label Files
|
||||
settings.importer.files_selected {count, plural, one {# file selected} other {# files selected}}
|
||||
settings.importer.folder_description Choose the folder to import messages into.
|
||||
settings.importer.folder_label Destination folder
|
||||
settings.importer.import_complete Import complete
|
||||
settings.importer.import_more Import more
|
||||
settings.importer.importing Importing...
|
||||
settings.importer.progress_failed {count} failed
|
||||
settings.importer.progress_imported {count} imported
|
||||
settings.importer.progress_skipped {count} skipped
|
||||
settings.importer.start_import {count, plural, one {Import # file} other {Import # files}}
|
||||
settings.importer.success {count, plural, one {# message imported} other {# messages imported}}
|
||||
settings.importer.summary_failed {count, plural, one {# message failed} other {# messages failed}}
|
||||
settings.importer.summary_imported {count, plural, one {# message imported} other {# messages imported}}
|
||||
settings.importer.summary_skipped {count, plural, one {# message skipped} other {# messages skipped}}
|
||||
settings.importer.title Import Mail
|
||||
settings.loading Loading...
|
||||
settings.refresh Refresh
|
||||
settings.tabs.import Import
|
||||
settings.tabs.sharing Sharing
|
||||
settings.tabs.signatures Signatures
|
||||
sharing.accept Accept
|
||||
sharing.decline Decline
|
||||
sharing.no_shares_by_me You haven't shared anything yet.
|
||||
sharing.no_shares_with_me No folders shared with you yet.
|
||||
sharing.shared_by Shared by
|
||||
sharing.tab_shared_by_me Shared by me
|
||||
sharing.tab_shared_with_me Shared with me
|
||||
signatures.add_signature Add signature
|
||||
signatures.default Default
|
||||
signatures.default_signature.description Used for new messages unless overridden per identity.
|
||||
signatures.default_signature.label Default signature
|
||||
signatures.delete_message Are you sure you want to delete "{name}"? This cannot be undone.
|
||||
signatures.delete_title Delete signature?
|
||||
signatures.description Create and manage email signatures to use when composing or replying.
|
||||
signatures.duplicate Duplicate
|
||||
signatures.edit_signature Edit signature
|
||||
signatures.editor_label Signature
|
||||
signatures.html_preview_label HTML preview
|
||||
signatures.name_label Name
|
||||
signatures.name_placeholder e.g., Work, Personal
|
||||
signatures.name_required Name is required
|
||||
signatures.new_signature New signature
|
||||
signatures.no_signature No signature
|
||||
signatures.no_signatures No signatures yet
|
||||
signatures.per_identity_signatures.description Override the default and reply signature for individual identities.
|
||||
signatures.per_identity_signatures.label Per-identity signatures
|
||||
signatures.plain_text_preview_label Plain text preview
|
||||
signatures.reply Reply
|
||||
signatures.reply_signature.description Used when replying or forwarding unless overridden per identity.
|
||||
signatures.reply_signature.label Reply signature
|
||||
signatures.show_editor Show editor
|
||||
signatures.show_preview Show preview
|
||||
signatures.title Signatures
|
||||
signatures.toolbar.align_center Align center
|
||||
signatures.toolbar.align_left Align left
|
||||
signatures.toolbar.align_right Align right
|
||||
signatures.toolbar.bold Bold
|
||||
signatures.toolbar.bullet_list Bullet list
|
||||
signatures.toolbar.italic Italic
|
||||
signatures.toolbar.link Link
|
||||
signatures.toolbar.ordered_list Ordered list
|
||||
signatures.toolbar.remove_color Remove color
|
||||
signatures.toolbar.strikethrough Strikethrough
|
||||
signatures.toolbar.text_color Text color
|
||||
signatures.toolbar.underline Underline
|
||||
signatures.use_global_default Use global default
|
||||
signatures.your_signatures Your signatures ({count})
|
||||
|
Can't render this file because it contains an unexpected character in line 106 and column 59.
|
Reference in New Issue
Block a user