mirror of
https://github.com/penpot/penpot.git
synced 2026-09-30 07:46:16 +00:00
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
270 lines
8.6 KiB
Plaintext
270 lines
8.6 KiB
Plaintext
msgid ""
|
|
msgstr ""
|
|
"PO-Revision-Date: 2026-05-27 16:03+0000\n"
|
|
"Last-Translator: Anderson Paulo <anderson.pr10@gmail.com>\n"
|
|
"Language-Team: Portuguese "
|
|
"<https://hosted.weblate.org/projects/penpot/frontend/pt/>\n"
|
|
"Language: pt\n"
|
|
"MIME-Version: 1.0\n"
|
|
"Content-Type: text/plain; charset=utf-8\n"
|
|
"Content-Transfer-Encoding: 8bit\n"
|
|
"Plural-Forms: nplurals=2; plural=n > 1;\n"
|
|
"X-Generator: Weblate 2026.6.dev0\n"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:227, src/app/main/ui/static.cljs:191, src/app/main/ui/viewer/login.cljs:119
|
|
msgid "auth.already-have-account"
|
|
msgstr "Já tem uma conta?"
|
|
|
|
#: src/app/main/ui/auth/recovery.cljs:83
|
|
msgid "auth.confirm-password"
|
|
msgstr "Confirme sua senha"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:239
|
|
msgid "auth.create-demo-account"
|
|
msgstr "Criar conta de demonstração"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:41
|
|
msgid "auth.demo-warning"
|
|
msgstr ""
|
|
"Este é um serviço DEMONSTRAÇÃO, NÃO USE para trabalho real, os projetos "
|
|
"serão apagados periodicamente."
|
|
|
|
#: src/app/main/ui/auth/login.cljs:203, src/app/main/ui/viewer/login.cljs:105
|
|
msgid "auth.forgot-password"
|
|
msgstr "Esqueceu sua senha?"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:175, src/app/main/ui/auth/register.cljs:335
|
|
msgid "auth.fullname"
|
|
msgstr "Nome completo"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:294
|
|
msgid "auth.login-account-title"
|
|
msgstr "Entrar na minha conta"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:231, src/app/main/ui/static.cljs:194, src/app/main/ui/viewer/login.cljs:122
|
|
msgid "auth.login-here"
|
|
msgstr "Faça login aqui."
|
|
|
|
#: src/app/main/ui/auth/login.cljs:297
|
|
msgid "auth.login-tagline"
|
|
msgstr ""
|
|
"Penpot é a ferramenta de design de código aberto e gratuita para "
|
|
"colaboração em design e código"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:254
|
|
msgid "auth.login-with-github-submit"
|
|
msgstr "GitHub"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:260
|
|
msgid "auth.login-with-gitlab-submit"
|
|
msgstr "GitLab"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:248
|
|
msgid "auth.login-with-google-submit"
|
|
msgstr "Google"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:213
|
|
msgid "auth.login-with-ldap-submit"
|
|
msgstr "LDAP"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:266
|
|
msgid "auth.login-with-oidc-submit"
|
|
msgstr "OpenID"
|
|
|
|
#: src/app/main/ui/auth/recovery.cljs:76
|
|
msgid "auth.new-password"
|
|
msgstr "Digite uma nova senha"
|
|
|
|
#: src/app/main/ui/auth/recovery.cljs:52
|
|
msgid "auth.notifications.password-changed-successfully"
|
|
msgstr "Senha alterada com sucesso"
|
|
|
|
#: src/app/main/ui/auth/recovery_request.cljs:50
|
|
msgid "auth.notifications.profile-not-verified"
|
|
msgstr ""
|
|
"O perfil não está verificado, por favor verifique o perfil antes de "
|
|
"continuar."
|
|
|
|
#: src/app/main/ui/auth/recovery_request.cljs:33
|
|
msgid "auth.notifications.recovery-token-sent"
|
|
msgstr "Link de recuperação de senha enviado para o seu e-mail."
|
|
|
|
#: src/app/main/ui/auth/verify_token.cljs:85
|
|
msgid "auth.notifications.team-invitation-accepted"
|
|
msgstr "Entrou para a equipe com sucesso"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:193, src/app/main/ui/auth/register.cljs:189
|
|
msgid "auth.password"
|
|
msgstr "Senha"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:188
|
|
msgid "auth.password-length-hint"
|
|
msgstr "Pelo menos 8 caracteres"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:272
|
|
msgid "auth.privacy-policy"
|
|
msgstr "Política de Privacidade"
|
|
|
|
#: src/app/main/ui/auth/recovery_request.cljs:81
|
|
msgid "auth.recovery-request-submit"
|
|
msgstr "Recuperar senha"
|
|
|
|
#: src/app/main/ui/auth/recovery.cljs:95, src/app/main/ui/auth/recovery_request.cljs:94
|
|
msgid "auth.recovery-request-subtitle"
|
|
msgstr "Enviaremos um e-mail com instruções"
|
|
|
|
#: src/app/main/ui/auth/recovery.cljs:94, src/app/main/ui/auth/recovery_request.cljs:93
|
|
msgid "auth.recovery-request-title"
|
|
msgstr "Esqueceu sua senha?"
|
|
|
|
#: src/app/main/ui/auth/recovery.cljs:86
|
|
msgid "auth.recovery-submit"
|
|
msgstr "Altere sua senha"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:310, src/app/main/ui/static.cljs:177, src/app/main/ui/viewer/login.cljs:109
|
|
msgid "auth.register"
|
|
msgstr "Ainda não tem uma conta?"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:357
|
|
msgid "auth.register-account-tagline"
|
|
msgstr "Informe como deseja ser chamado no painel e nos e-mails."
|
|
|
|
#: src/app/main/ui/auth/register.cljs:356
|
|
msgid "auth.register-account-title"
|
|
msgstr "Seu nome"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:314, src/app/main/ui/auth/register.cljs:199, src/app/main/ui/auth/register.cljs:345, src/app/main/ui/static.cljs:181, src/app/main/ui/viewer/login.cljs:112
|
|
msgid "auth.register-submit"
|
|
msgstr "Criar uma conta"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:218
|
|
msgid "auth.register-title"
|
|
msgstr "Criar uma conta"
|
|
|
|
#: src/app/main/ui/auth/register.cljs:49
|
|
#, markdown
|
|
msgid "auth.terms-and-privacy-agreement"
|
|
msgstr "Concordo com os [termos de serviço](%s) e a [política de privacidade](%s)."
|
|
|
|
#: src/app/main/ui/auth/register.cljs:264, src/app/main/ui/dashboard/sidebar.cljs:542, src/app/main/ui/workspace/main_menu.cljs:210
|
|
msgid "auth.terms-of-service"
|
|
msgstr "Termos de serviço"
|
|
|
|
#: src/app/main/ui/auth/login.cljs:185, src/app/main/ui/auth/recovery_request.cljs:77, src/app/main/ui/auth/register.cljs:182
|
|
msgid "auth.work-email"
|
|
msgstr "E-mail profissional"
|
|
|
|
#: src/app/main/ui/comments.cljs:577
|
|
msgid "comments.mentions.not-found"
|
|
msgstr "Nenhuma pessoa encontrada para @%s"
|
|
|
|
#: src/app/main/ui/workspace/libraries.cljs:437, src/app/main/ui/workspace/libraries.cljs:838
|
|
msgid "common.publish"
|
|
msgstr "Publicar"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:304, src/app/main/ui/viewer/share_link.cljs:314
|
|
msgid "common.share-link.all-users"
|
|
msgstr "Todos os usuários do Penpot"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:198
|
|
msgid "common.share-link.confirm-deletion-link-description"
|
|
msgstr ""
|
|
"Tem certeza de que deseja remover este link? Se fizer isso, ele não estará "
|
|
"mais disponível para ninguém"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:259, src/app/main/ui/viewer/share_link.cljs:289
|
|
msgid "common.share-link.current-tag"
|
|
msgstr "(atual)"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:207, src/app/main/ui/viewer/share_link.cljs:214
|
|
msgid "common.share-link.destroy-link"
|
|
msgstr "Excluir link"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:221
|
|
msgid "common.share-link.get-link"
|
|
msgstr "Obter link"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:137
|
|
msgid "common.share-link.link-copied-success"
|
|
msgstr "Link copiado com sucesso"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:231
|
|
msgid "common.share-link.manage-ops"
|
|
msgstr "Gerenciar permissões"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:277
|
|
msgid "common.share-link.page-shared"
|
|
msgid_plural "common.share-link.page-shared"
|
|
msgstr[0] "Página compartilhada"
|
|
msgstr[1] "%s páginas compartilhadas"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:298
|
|
msgid "common.share-link.permissions-can-comment"
|
|
msgstr "Pode comentar"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:308
|
|
msgid "common.share-link.permissions-can-inspect"
|
|
msgstr "Pode inspecionar o código"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:193
|
|
msgid "common.share-link.permissions-hint"
|
|
msgstr "Qualquer pessoa com o link terá acesso"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:241
|
|
msgid "common.share-link.permissions-pages"
|
|
msgstr "Páginas compartilhadas"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:183
|
|
msgid "common.share-link.placeholder"
|
|
msgstr "O link compartilhável aparecerá aqui"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:303, src/app/main/ui/viewer/share_link.cljs:313
|
|
msgid "common.share-link.team-members"
|
|
msgstr "Somente membros da equipe"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:171
|
|
msgid "common.share-link.title"
|
|
msgstr "Compartilhar protótipos"
|
|
|
|
#: src/app/main/ui/viewer/share_link.cljs:269
|
|
msgid "common.share-link.view-all"
|
|
msgstr "Selecionar tudo"
|
|
|
|
#: src/app/main/ui/workspace/libraries.cljs:432, src/app/main/ui/workspace/libraries.cljs:833
|
|
msgid "common.unpublish"
|
|
msgstr "Despublicar"
|
|
|
|
#: src/app/main/ui/dashboard/projects.cljs:90
|
|
msgid "dasboard.team-hero.management"
|
|
msgstr "Gestão da equipe"
|
|
|
|
#: src/app/main/ui/dashboard/projects.cljs:89
|
|
msgid "dasboard.team-hero.text"
|
|
msgstr ""
|
|
"O Penpot foi feito para equipes. Convide membros para trabalharem juntos em "
|
|
"projetos e arquivos"
|
|
|
|
#: src/app/main/ui/dashboard/projects.cljs:87
|
|
msgid "dasboard.team-hero.title"
|
|
msgstr "Monte sua equipe!"
|
|
|
|
#: src/app/main/ui/dashboard/placeholder.cljs:40
|
|
msgid "dashboard.add-file"
|
|
msgstr "Adicionar arquivo"
|
|
|
|
#: src/app/main/ui/dashboard/file_menu.cljs:324, src/app/main/ui/workspace/main_menu.cljs:700
|
|
msgid "dashboard.add-shared"
|
|
msgstr "Adicionar como Biblioteca Compartilhada"
|
|
|
|
#: src/app/main/ui/settings/profile.cljs:75
|
|
msgid "dashboard.change-email"
|
|
msgstr "Alterar e-mail"
|
|
|
|
#: src/app/main/data/dashboard.cljs:300, src/app/main/data/dashboard.cljs:535, src/app/main/data/workspace/pages.cljs:201
|
|
msgid "dashboard.copy-suffix"
|
|
msgstr "(copiar)"
|
|
|
|
#: src/app/main/ui/dashboard/organization_team_switch.cljs:280
|
|
msgid "dashboard.create-new-team"
|
|
msgstr "Criar nova equipe"
|