17 Commits

Author SHA1 Message Date
Andrey Antukh
1349d1ef2d 🌐 Rehash and validate translation files 2026-09-28 10:15:48 +02:00
Andrey Antukh
4b978767ea
🌐 Clean up en translations (#11853)
Drop 277 keys nothing references from en.po (verified against
frontend/src and common/src) and let sync propagate the
deletions to every locale. Clear all 10 fuzzy entries: fill
the 5 empty translations, keep the 4 valid ones, and drop the
duplicated max-quote-reached in favor of max-quota-reached
(the backend code stays, the UI maps it to the quota text).

Recover 22 used-but-missing keys with translations: the 19
shortcuts section/subsection labels plus connected-to,
pixel-grid-color and tokens.add-set. Make the rest
statically visible to rehash instead: :label fns on shortcut
commands, sections and subsections (one debug-only and one
colorpicker-local id exempt); case branches in place of
dm/str-built keys (export modal, text decoration and
transform, undo history with raw-key fallback); hoist
conditionals out of tr calls; pre-translate modal props and
role labels; replace the lone (i18n/tr ...) site with tr.
Turn static :error/code data into eager :error/fn calls in
the common schemas and the auth/password forms. Rename the
two keys containing spaces and point team leave at
max-quota-reached. Backend-driven keys stay dynamic by
design, declared with (tr ...) comments: the five
weak-password details, team and organization notifications.

Tooling: rehash also scans common/src and no longer treats
a missing -l as no locale; new clj-kondo tr-dynamic warning
flags non-literal tr args (lint scripts use --fail-level
error so it never fails CI); tr docstring states the
literal-only rule. Tests cover the shortcut label wiring,
the undo-history fallback and the :error/fn schemas.
Translations memory rewritten to match; es check word list
gains three entries.

Rebased onto develop: adopt the register field-error UX
(the weak-password declarations move onto the :options
code), keep develop's newer keys (connection-error,
account-locked, save-retrying, tokens-source strings) with
fresh references, and reword the shortcuts.cljs prose
comment so rehash does not invent a "literal" key.

AI-assisted-by: muse-spark-1.3-contributor
2026-09-25 11:11:44 +02:00
Andrey Antukh
5c38dcab28 🌐 Validate and rehash translations 2026-09-15 19:21:59 +02:00
Andrey Antukh
e3325dd3eb 🌐 Validate and rehash translation files 2026-06-22 09:33:10 +02:00
Andrey Antukh
5d80f7f5b2 🌐 Validate and Rehash translation files 2026-06-01 14:58:07 +02:00
Anderson Paulo
ed6e4db749
🌐 Add translations for: Portuguese
Currently translated at 3.2% (75 of 2330 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/pt/
2026-06-01 13:52:24 +02:00
Hosted Weblate
c753506039
🌐 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/
2026-06-01 13:52:24 +02:00
Andrey Antukh
7301973655 🌐 Rehash and sync translation files 2026-02-16 09:41:49 +01:00
Andrey Antukh
e5d677f449 🌐 Validate and rehash translation files 2026-01-08 18:05:51 +01:00
Andrey Antukh
a71baa5a78 🌐 Rehash and validate translation files 2026-01-08 14:46:18 +01:00
Andrey Antukh
407d28d187 🌐 Rehash and sync translation files 2025-11-19 14:18:41 +01:00
Andrey Antukh
4937580585 🌐 Rehash and validate translation files 2025-10-07 18:38:28 +02:00
Andrey Antukh
8568098c5e 🌐 Validate and rehash translation files 2025-08-28 12:49:35 +02:00
Andrey Antukh
0683b20b25 🌐 Rehash and validate translation files 2025-06-09 11:01:08 +02:00
Anderson Paulo
5fed12d807
🌐 Add translations for: Portuguese
Currently translated at 5.1% (93 of 1808 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/pt/
2025-06-05 11:01:50 +02:00
Andrey Antukh
32cd388b06 📎 Rehash and sort translation files 2024-11-14 11:35:28 +01:00
Madalena Melo
b6f82be56a
🌐 Added translation for: Portuguese. 2024-09-09 16:10:46 +02:00