collective

Browse / github.com/storytold/designcraft / patch

pt-BR: translate the 645 missing interface strings and the unit names

pt-BR: translate the 645 missing interface strings and the unit names The Brazilian Portuguese interface had fallen behind. #495 completed the catalog on 2026-10-15, but the features merged since then added strings that only the other catalogs translate, so a pt-BR user saw English in Edit › Menus, the tool names, the Japanese typesetting dialogs, Type › Insert Special Character, Load Styles, Data Merge, Preflight, font replacement and About › Contributors. `docs/localization-parity.md` still listed pt-BR at 61%. This adds the 645 missing strings and File › New's unit names. Counted the way the doc counts (every catalog key, engine command label and `tr`/`t`

Status
open
Score
0.00
Adopters
0 other operators
Author
AndreRese (imported from pull request #1539, open)
Base
2e36dcf909627c8f0e5662fe6b4825b1c1c24420
Size
+774 −14 in 7 files
Review
pending
Shared
2026-10-28
Id
b7f636f337212dd9a1fabc3a

How it went

No other operator has reported using it yet.

Diff

raw · ROADMAP.md crates/ui-egui/src/i18n.rs crates/ui-egui/src/i18n/pt_br.rs crates/ui-egui/src/new_document.rs docs/gaps.md docs/localization-parity.md docs/target-app-parity.md

diff --git a/ROADMAP.md b/ROADMAP.md--- a/ROADMAP.md+++ b/ROADMAP.md@@ -300,7 +300,7 @@ measured); Ready estimated.  ## Languages -Interface strings translated, of 1,724 measured. Detail: [docs/localization-parity.md](docs/localization-parity.md).+Interface strings translated, of 1,724 measured (pt-BR: of 2,434, re-measured 2026-10-23). Detail: [docs/localization-parity.md](docs/localization-parity.md).  | Language | Code | Status | Translated | |---|---|---|---|@@ -310,15 +310,14 @@ Interface strings translated, of 1,724 measured. Detail: [docs/localization-pari | Hindi | hi | none | 0% | | Arabic | ar | partial (RTL UI and composition) | 85% | | French | fr | partial | 83% |-| Portuguese (Brazil) | pt-br | partial | 61% |+| Portuguese (Brazil) | pt-br | partial | ~100% | | Indonesian | id | none | 0% | | Japanese | ja | partial | 95% | | German | de | partial | 83% | | Korean | ko | none | 0% | | Vietnamese | vi | none | 0% | -Also shipped: Czech (99%), Italian (85%), Ukrainian (83%), Polish (99%).-Also shipped: Italian (85%), Ukrainian (83%), Georgian (100%).+Also shipped: Czech (99%), Italian (85%), Ukrainian (83%), Polish (99%), Georgian (100%), Russian (70% of 2,434).  ## Upcoming @@ -353,6 +352,7 @@ Newest first. - **2026-10-22** · macOS: the app menu has a Language submenu after Settings… with each interface language in its own name and the current one checked, as in the suite's other apps; Preferences › General › Interface Language stays. No readiness percentage change. - **2026-10-22** · macOS menu bar: the menus keep working after the interface language or Show CJK Features changes (a rebuilt menu bar lost every click, Quit included), and its key equivalents are the shortcuts in effect, so a shortcut moved in the Keyboard Shortcuts editor leaves its old menu item. No readiness percentage change. - **2026-10-22** · Paragraph rules: Rule Above's offset is measured from the first line's baseline to the rule's bottom edge, as in InDesign. Rules sat one ascent too high and crossed the previous paragraph's text (reported from an imported INDD document). No readiness percentage change.+- **2026-10-21** · Interface Language › Português (Brasil) translates the whole interface: 645 strings the catalog lacked (tool names, window and guide commands, Edit › Menus paths, the Japanese typesetting dialogs, special characters, Load Styles, Data Merge, Preflight, font replacement, About) and File › New's unit names. Re-measured, pt-BR covers 2,431 of 2,434 strings (61% before); only the Control panel's `IT`, `VA` and `Y:` captions stay English, as in every language. No readiness percentage change. - **2026-10-21** · Ruler guides are selected like objects (#1282): a click with the Selection tools selects a guide (also where it crosses an object), Shift-click adds or removes one, a new guide from the rulers is selected, a marquee that touches no object selects the guides it crosses, and Edit › Select All Guides (⌥⌘G, `guide.selectAll`) selects every unlocked guide on the spread. Selected guides draw thicker in their layer's color, drag together (all of them shown moving), nudge with the arrow keys and go with Delete, each as one undo step (`guide.select`, `guide.deselect`, `guide.moveBy`, `guide.delete {}`). With one guide selected the Control bar's X (vertical guide) or Y (horizontal guide) field and Properties › Transform show where it is, as the rulers measure, and typing a value moves it there. No readiness percentage change. - **2026-10-16** · Selection: drag a column guide to move its gutter, as in InDesign (#1096). Both guides of the gutter move together and keep its width, stop at the neighbouring guides and the margins, and snap to the document grid, guides and objects, or with Shift to the ruler's tick marks; Escape cancels and the drag is one undo step. Locked column guides (the default) are not picked. A document page takes the result as its own columns; on a parent page it passes to the pages that follow it. `layout.moveColumnGuide` does the same over the control channel and MCP. No readiness percentage change. - **2026-10-16** · Layout: autoflow, inserted pages and new parents follow dragged column guides (#1096). Autoflow sets one frame per dragged column and counts the pages it adds from them; Insert Pages and New Parent keep the custom positions with the column count and gutter; a page that moves to the other side of the spine (inserted, deleted or moved pages, Duplicate Spread, a new parent's other page) has them mirrored across its margin box, as InDesign does; `document.inspect` reports each page's gutter, column rects and whether its columns are custom. No readiness percentage change.diff --git a/crates/ui-egui/src/i18n.rs b/crates/ui-egui/src/i18n.rs--- a/crates/ui-egui/src/i18n.rs+++ b/crates/ui-egui/src/i18n.rs@@ -4846,6 +4846,8 @@ mod tests {         keys.extend(crate::about::SIBLINGS.iter().map(|(_, _, what)| *what));         keys.extend(crate::credits::NameMode::ALL.iter().map(|mode| mode.label()));         keys.extend(crate::credits::SortKey::ALL.iter().flat_map(|key| [key.label().0, key.label().1]));+        // File › New's Units list passes each unit's name to `tr`.+        keys.extend(crate::new_document::NEW_DOCUMENT_UNITS.map(|unit| unit.label()));         // UI labels passed to `tr` that no other catalog has yet.         keys.extend([             "(any)",@@ -4910,6 +4912,54 @@ mod tests {             "Story Editor — {count} words",             "Text Anchor",             "Use Document Style Definition",+            // Dialog, panel and Control panel labels.+            "  Save  ",+            "  Update  ",+            "/1000 em",+            "All pages",+            "Apply to:",+            "Auto-Size",+            "Auto-Sizing",+            "Between Entry and Number:",+            "Both pages of the parent spread",+            "Both pages of the spread",+            "Color Theme",+            "Corner Size",+            "Create Links When Placing Text Files",+            "Currently Rendered With",+            "Delete Character Style…",+            "Delete Paragraph Style…",+            "Delete the character style \"{name}\"?",+            "Delete the paragraph style \"{name}\"?",+            "Entry Style:",+            "Include Paragraph Styles:",+            "Kerning/Tracking:",+            "Minimum Height",+            "Minimum Width",+            "No Line Breaks",+            "Other Styles:",+            "Page Number:",+            "Reference Point",+            "Remove Existing Ruler Guides",+            "Remove »",+            "Replace All",+            "Replace All updates this font throughout text and styles. Done keeps remaining fallback fonts.",+            "Replace Existing Table of Contents",+            "Replace with:",+            "Show the Typography panel",+            "Stroke Behind Fill",+            "Stroke Weight",+            "Styles in Table of Contents",+            "Stylistic Set",+            "The selected fonts have no OpenType features.",+            "This document uses unavailable fonts. Choose replacements, or select Done to continue with fallback fonts.",+            "This page",+            "This page is",+            "This story was edited in the layout: you'll be asked before those edits are replaced",+            "This style is in use. Text using it will be reassigned to:",+            "Title:",+            "« Add",+            "“{}” has been edited in this layout. Updating replaces those edits with the text from the file.",             // Status-bar messages.             "Alternate layout",             "Couldn't write recovery data: {error}",@@ -4923,6 +4973,9 @@ mod tests {             "the default printer",             "{name}: import cancelled while a dialog is open; choose the file again",             "{name}: {count} step(s) done",+            // Edit › Keyboard Shortcuts imports a set saved by InDesign.+            "Import InDesign Set…",+            "Imported {count} shortcuts from “{set}”; {unmatched} items not matched, {unreadable} unreadable.",         ]);         keys     }diff --git a/crates/ui-egui/src/i18n/pt_br.rs b/crates/ui-egui/src/i18n/pt_br.rs--- a/crates/ui-egui/src/i18n/pt_br.rs+++ b/crates/ui-egui/src/i18n/pt_br.rs@@ -1817,4 +1817,693 @@ pub(super) const TABLE: &[(&str, &str)] = &[     ("Insert field", "Inserir campo"),     ("Pass csv, rows, or bytes from the control channel.", "Passe csv, linhas ou bytes pelo canal de controle."),     ("Panels", "Painéis"),+    // Strings added to the interface since the catalog was completed (2026-10-15).+    ("  Save  ", "  Salvar  "),+    ("  Update  ", "  Atualizar  "),+    ("% of all commits", "% de todos os commits"),+    ("(any)", "(qualquer)"),+    ("(unchanged)", "(inalterado)"),+    ("/1000 em", "/1000 eme"),+    ("1 Parent Character", "1 caractere base"),+    ("1 Ruby Character", "1 caractere ruby"),+    ("1 Ruby Character Aki", "Aki de 1 caractere ruby"),+    ("1-2-1 (JIS) Rule", "Regra 1-2-1 (JIS)"),+    ("1-2-1 Aki", "Aki 1-2-1"),+    ("1/2 Parent Character", "1/2 caractere base"),+    ("1/2 Ruby Character", "1/2 caractere ruby"),+    ("90° CCW", "90° anti-horário"),+    ("90° CW", "90° horário"),+    ("A, B, C, D...", "A, B, C, D..."),+    ("About", "Sobre"),+    ("Above/Right", "Acima/direita"),+    ("Absorb Ideographic Space at Line End", "Absorver espaço ideográfico no fim da linha"),+    ("Across the Line:", "Perpendicular à linha:"),+    ("Activate Panel", "Ativar painel"),+    ("Add Anchor Point Tool", "Ferramenta Adicionar ponto de ancoragem"),+    ("Add Tab", "Adicionar tabulação"),+    ("Adjust Rotation", "Ajustar rotação"),+    ("Adjust Tsume", "Ajustar tsume"),+    ("Adjust page elements to document changes", "Ajustar os elementos da página às alterações do documento"),+    ("Adjustment When Ruby Is Longer Than Parent", "Ajuste quando o ruby é mais longo que a base"),+    ("Align Left Edge", "Alinhar borda esquerda"),+    ("Align Only First Line to Grid", "Alinhar somente a primeira linha à grade"),+    ("Align To", "Alinhar a"),+    ("All Classes", "Todas as classes"),+    ("All pages", "Todas as páginas"),+    ("Along the Line:", "Ao longo da linha:"),+    ("Alpha Channel", "Canal alfa"),+    ("Alternate layout", "Layout alternativo"),+    ("Anchored Object Options", "Opções de objeto ancorado"),+    ("Apply Numbering & Section Options", "Aplicar opções de numeração e de seção"),+    ("Apply Text Attributes (Eyedropper)", "Aplicar atributos de texto (conta-gotas)"),+    ("Apply To:", "Aplicar a:"),+    (+        "Apply the changes; objects follow the new page size and margins",+        "Aplicar as alterações; os objetos acompanham o novo tamanho de página e as margens",+    ),+    ("Apply to:", "Aplicar a:"),+    ("ArtCraft App Page", "Página do aplicativo ArtCraft"),+    ("ArtCraft Website", "Site do ArtCraft"),+    ("Auto Align at Line Start/End", "Alinhar automaticamente no início/fim da linha"),+    ("Auto Rename", "Renomear automaticamente"),+    ("Auto Tate-Chu-Yoko", "Tate-chu-yoko automático"),+    ("Auto Tate-chu-yoko Settings", "Configurações de tate-chu-yoko automático"),+    ("Auto-Size", "Dimensionamento automático"),+    ("Auto-Sizing", "Dimensionamento automático"),+    ("Automatic Chapter Numbering", "Numeração automática de capítulos"),+    ("Automatic Page Numbering", "Numeração automática de páginas"),+    ("Below/Left", "Abaixo/esquerda"),+    ("Between Entry and Number:", "Entre a entrada e o número:"),+    ("Binary assets added", "Arquivos binários adicionados"),+    ("Binary assets removed", "Arquivos binários removidos"),+    ("Black Circle", "Círculo preto"),+    ("Black Triangle", "Triângulo preto"),+    ("Blank Document Presets", "Predefinições de documento em branco"),+    ("Bleed:", "Sangria:"),+    ("Book Name:", "Nome do livro:"),+    ("Both Sides", "Ambos os lados"),+    ("Both pages of the parent spread", "Ambas as páginas da página dupla principal"),+    ("Both pages of the spread", "Ambas as páginas da página dupla"),+    ("Bounding Box (All Layers)", "Caixa delimitadora (todas as camadas)"),+    ("Bounding Box (Visible Layers Only)", "Caixa delimitadora (somente camadas visíveis)"),+    ("Break Thread", "Romper encadeamento"),+    ("Bullet Character", "Caractere de marcador"),+    ("Bullseye", "Alvo"),+    ("Bunri-Kinshi", "Bunri-kinshi"),+    ("CMYK:", "CMYK:"),+    ("Cancel Preview", "Cancelar visualização"),+    ("Cell Number:", "Número do celular:"),+    ("Centered", "Centralizado"),+    ("Change Panel Layout", "Alterar layout do painel"),+    ("Change Tab", "Alterar tabulação"),+    ("Change fill to:", "Alterar preenchimento para:"),+    ("Character Style", "Estilo de caractere"),+    ("Character:", "Caractere:"),+    ("Characters After Break:", "Caracteres depois da quebra:"),+    ("Characters Before Break:", "Caracteres antes da quebra:"),+    ("Characters:", "Caracteres:"),+    ("Check Spelling", "Verificar ortografia"),+    ("Chinese: Simplified", "Chinês: simplificado"),+    ("Chinese: Traditional", "Chinês: tradicional"),+    ("Clear All Tabs", "Limpar todas as tabulações"),+    ("Clear Object Style Overrides", "Limpar substituições de estilo de objeto"),+    ("Clear Rotation", "Limpar rotação"),+    ("Clipping Path Options…", "Opções de traçado de recorte…"),+    ("Close Panel", "Fechar painel"),+    ("Closed Path", "Demarcador fechado"),+    (+        "Collect objects with the Content Collector (B); place them with the Content Placer.",+        "Colete objetos com o Coletor de conteúdo (B); insira-os com o Posicionador de conteúdo.",+    ),+    ("Color Blindness – Deuteranopia", "Daltonismo – deuteranopia"),+    ("Color Blindness – Protanopia", "Daltonismo – protanopia"),+    ("Color Theme", "Tema de cores"),+    ("Color Theme Tool", "Ferramenta Tema de cores"),+    ("Color Theme…", "Tema de cores…"),+    ("Color font", "Fonte colorida"),+    ("Column Break", "Quebra de coluna"),+    ("Column Gutter", "Medianiz da coluna"),+    ("Commit Preview", "Confirmar visualização"),+    ("Commits", "Commits"),+    ("Company", "Empresa"),+    ("Conditional Text", "Texto condicional"),+    ("Content Collector Tool", "Ferramenta Coletor de conteúdo"),+    ("Content Placer Tool", "Ferramenta Posicionador de conteúdo"),+    ("Contributors", "Colaboradores"),+    ("Convert Direction Point Tool", "Ferramenta Converter ponto de direção"),+    ("Convert Point", "Converter ponto"),+    ("Convert Rows", "Converter linhas"),+    ("Copyright Symbol", "Símbolo de copyright"),+    ("Corner Options", "Opções de canto"),+    ("Corner Size", "Tamanho do canto"),+    ("Couldn't write recovery data: {error}", "Não foi possível gravar os dados de recuperação: {error}"),+    ("Create Guides", "Criar guias"),+    ("Create Links When Placing Text Files", "Criar vínculos ao inserir arquivos de texto"),+    ("Currently Rendered With", "Renderizado atualmente com"),+    ("Dark", "Escuro"),+    ("Data Fields", "Campos de dados"),+    ("Data Merge Options", "Opções de mesclagem de dados"),+    ("Decorative", "Decorativa"),+    ("Default Rules", "Regras padrão"),+    ("Define Cross-Reference Format", "Definir formato de referência cruzada"),+    ("Define Lists", "Definir listas"),+    ("Define Text Variable", "Definir variável de texto"),+    ("Delete Anchor Point Tool", "Ferramenta Excluir ponto de ancoragem"),+    ("Delete Character Style", "Excluir estilo de caractere"),+    ("Delete Character Style…", "Excluir estilo de caractere…"),+    ("Delete Document Preset", "Excluir predefinição de documento"),+    ("Delete Paragraph Style…", "Excluir estilo de parágrafo…"),+    ("Delete Parent", "Excluir página principal"),+    ("Delete Preset", "Excluir predefinição"),+    ("Delete Type from Path", "Excluir texto do traçado"),+    ("Delete the character style \"{name}\"?", "Excluir o estilo de caractere \"{name}\"?"),+    ("Delete the paragraph style \"{name}\"?", "Excluir o estilo de parágrafo \"{name}\"?"),+    ("DesignCraft Website", "Site do DesignCraft"),+    ("DesignCraft on GitHub", "DesignCraft no GitHub"),+    ("DesignCraft page", "Página do DesignCraft"),+    ("Detect Edges", "Detectar bordas"),+    ("Differs from this document", "Difere deste documento"),+    ("Digits:", "Dígitos:"),+    ("Direct Selection Tool", "Ferramenta Seleção direta"),+    ("Discretionary Hyphen", "Hífen opcional"),+    ("Display name", "Nome de exibição"),+    ("Distance from Parent:", "Distância da base:"),+    ("Distribute Rows Evenly", "Distribuir linhas uniformemente"),+    ("Document CMYK", "CMYK do documento"),+    ("Document Chapter Numbering", "Numeração de capítulos do documento"),+    ("Document Endnote Options", "Opções de notas de fim do documento"),+    ("Document Footnote Options", "Opções de notas de rodapé do documento"),+    ("Document Name", "Nome do documento"),+    ("Document RGB", "RGB do documento"),+    ("Don't Save", "Não salvar"),+    ("Double Circle", "Círculo duplo"),+    ("Double Left Quotation Marks", "Aspas duplas de abertura"),+    ("Double Right Quotation Marks", "Aspas duplas de fechamento"),+    ("Drag Rows or Columns", "Arrastar linhas ou colunas"),+    ("Drop Caps", "Capitulares"),+    ("Drop Chars", "Caracteres capitulares"),+    ("Drop Lines", "Linhas capitulares"),+    ("Edit/Interface Language", "Editar/Idioma da interface"),+    ("Edit/Spelling", "Editar/Ortografia"),+    ("Edit/Transparency Blend Space", "Editar/Espaço de mesclagem de transparência"),+    ("Edit/Transparency Flattener Presets", "Editar/Predefinições de achatamento de transparência"),+    ("Ellipse Frame Tool", "Ferramenta Quadro elíptico"),+    ("Ellipse Tool", "Ferramenta Elipse"),+    ("Ellipsis", "Reticências"),+    ("Em Box Bottom/Left", "Base/esquerda do quadratim"),+    ("Em Box Center", "Centro do quadratim"),+    ("Em Box Center (Down)", "Centro do quadratim (abaixo)"),+    ("Em Box Top/Right", "Topo/direita do quadratim"),+    ("Em Dash", "Travessão"),+    ("Em Space", "Espaço eme"),+    ("Email Address:", "Endereço de e-mail:"),+    ("Email:", "E-mail:"),+    ("En Dash", "Meia-risca"),+    ("En Space", "Espaço ene"),+    ("Entry Style:", "Estilo da entrada:"),+    ("Equal Aki", "Aki igual"),+    (+        "Equal fixed heights for the selected rows; cell text may become overset.",+        "Alturas fixas iguais para as linhas selecionadas; o texto das células pode ficar excedente.",+    ),+    ("Erase Tool", "Ferramenta Apagar"),+    ("Even Page Break", "Quebra para página par"),+    ("Export EPUB", "Exportar EPUB"),+    ("Export EPUB (Fixed Layout)", "Exportar EPUB (layout fixo)"),+    ("Export EPUB (Reflowable)", "Exportar EPUB (reflowable)"),+    ("Export HTML", "Exportar HTML"),+    ("Export IDML", "Exportar IDML"),+    ("Export PDF (Interactive)", "Exportar PDF (interativo)"),+    ("Export Page as PNG", "Exportar página como PNG"),+    ("Export PowerPoint…", "Exportar PowerPoint…"),+    ("Export Text", "Exportar texto"),+    ("Export XML", "Exportar XML"),+    (+        "Export a PDF, IDML or package to share — no cloud account needed.",+        "Exporte um PDF, IDML ou pacote para compartilhar — sem precisar de conta na nuvem.",+    ),+    ("Extract Color Theme", "Extrair tema de cores"),+    ("Eyedropper Tool", "Ferramenta Conta-gotas"),+    ("Figure Space", "Espaço de algarismo"),+    ("File/Export", "Arquivo/Exportar"),+    ("Filters:", "Filtros:"),+    ("Find fill:", "Localizar preenchimento:"),+    ("First commit", "Primeiro commit"),+    ("Fisheye", "Olho de peixe"),+    ("Fit to Width", "Ajustar à largura"),+    ("Flush Space", "Espaço de alinhamento"),+    ("Force", "Forçar"),+    ("Forced Line Break", "Quebra de linha forçada"),+    ("Formatting Affects Text", "A formatação afeta o texto"),+    ("Found", "Encontrado"),+    ("Frame", "Quadro"),+    ("Frame Break", "Quebra de quadro"),+    ("Free Transform Tool", "Ferramenta Transformação livre"),+    ("Full Justify", "Justificado total"),+    ("GREP", "GREP"),+    ("Gap Tool", "Ferramenta Espaço"),+    ("Generate Index", "Gerar índice remissivo"),+    ("Generate Live Caption", "Gerar legenda dinâmica"),+    ("Georgian", "Georgiano"),+    ("Get Cell Stroke", "Obter traçado da célula"),+    ("Get Tabs", "Obter tabulações"),+    ("Global Light", "Luz global"),+    ("Grab bag", "Lista corrida"),+    ("Gradient Feather Tool", "Ferramenta Esmaecimento em gradiente"),+    ("Gradient Swatch Tool", "Ferramenta Amostra de gradiente"),+    ("Graphic", "Gráfico"),+    ("Grid Alignment:", "Alinhamento à grade:"),+    ("Grid Settings", "Configurações de grade"),+    ("Group Ruby", "Ruby de grupo"),+    ("Group with", "Agrupar com"),+    ("Gyoudori:", "Gyoudori:"),+    ("Hair Space", "Espaço capilar"),+    ("Hand Tool", "Ferramenta Mão"),+    ("Hanging Type:", "Pontuação pendente:"),+    ("Hard Kinsoku", "Kinsoku rígido"),+    ("Hide Styles", "Ocultar estilos"),+    ("High Contrast", "Alto contraste"),+    ("High Resolution", "Alta resolução"),+    ("I, II, III, IV...", "I, II, III, IV..."),+    ("ICF Bottom", "Base do ICF"),+    ("ICF Top", "Topo do ICF"),+    ("Import Warnings", "Avisos de importação"),+    ("Import XML", "Importar XML"),+    ("Import cancelled: the originating document has closed", "Importação cancelada: o documento de origem foi fechado"),+    ("Include Paragraph Styles:", "Incluir estilos de parágrafo:"),+    ("Include Prefix when Numbering Pages", "Incluir prefixo ao numerar páginas"),+    ("Include Roman Characters", "Incluir caracteres latinos"),+    ("Indent to Here", "Recuar até aqui"),+    ("Ink Limit 300%", "Limite de tinta 300%"),+    ("Insert Anchored Object", "Inserir objeto ancorado"),+    ("Insert Cross-Reference", "Inserir referência cruzada"),+    ("Insert Field", "Inserir campo"),+    ("Insert Math Expression", "Inserir expressão matemática"),+    ("Insert Pages", "Inserir páginas"),+    ("Internet Standard RGB (sRGB)", "RGB padrão da Internet (sRGB)"),+    ("Invalid panel layout; restored the default dock", "Layout de painéis inválido; o encaixe padrão foi restaurado"),+    ("Japanese Composition Settings", "Configurações de composição japonesa"),+    ("Join", "Unir"),+    ("Join the ArtCraft Discord", "Entrar no Discord do ArtCraft"),+    ("Kenten Color", "Cor do kenten"),+    ("Kenten Settings", "Configurações de kenten"),+    ("Kenten Type:", "Tipo de kenten:"),+    ("Kerning/Tracking Step", "Incremento de kerning/espaçamento"),+    ("Kerning/Tracking:", "Kerning/espaçamento:"),+    ("Key Object", "Objeto-chave"),+    ("Kinsoku Set:", "Conjunto kinsoku:"),+    ("Kinsoku Type:", "Tipo de kinsoku:"),+    ("Korean Kinsoku", "Kinsoku coreano"),+    ("Large Sample Text Size", "Tamanho de amostra grande"),+    ("Last commit", "Último commit"),+    ("Layout/Index", "Layout/Índice remissivo"),+    ("Layout/Pages", "Layout/Páginas"),+    ("Leading Model:", "Modelo de entrelinha:"),+    ("Left/Right Position:", "Posição esquerda/direita:"),+    ("Left/Top", "Esquerda/topo"),+    ("Legacy Macintosh RGB", "RGB Macintosh antigo"),+    ("Light", "Claro"),+    ("Line Break Options", "Opções de quebra de linha"),+    ("Line Spacing:", "Espaçamento entre linhas:"),+    ("Line Tool", "Ferramenta Linha"),+    ("Line delta", "Diferença de linhas"),+    ("Lines +/−", "Linhas +/−"),+    ("Lines added", "Linhas adicionadas"),+    ("Lines deleted", "Linhas excluídas"),+    ("Lines:", "Linhas:"),+    ("List Composite Fonts", "Listar fontes compostas"),+    ("List Styles in File", "Listar estilos do arquivo"),+    ("Load All Text Styles…", "Carregar todos os estilos de texto…"),+    ("Load Character Styles…", "Carregar estilos de caractere…"),+    ("Load DTD", "Carregar DTD"),+    ("Load Paragraph Styles…", "Carregar estilos de parágrafo…"),+    ("Load Styles", "Carregar estilos"),+    ("Load Styles…", "Carregar estilos…"),+    ("Load Swatches", "Carregar amostras"),+    ("Loading fonts…", "Carregando fontes…"),+    ("Low Resolution", "Baixa resolução"),+    ("Magnification:", "Ampliação:"),+    ("Margins:", "Margens:"),+    ("Measure Tool", "Ferramenta Medida"),+    ("Medium Dark", "Médio-escuro"),+    ("Medium Light", "Médio-claro"),+    ("Medium Resolution", "Resolução média"),+    ("Medium Sample Text Size", "Tamanho de amostra médio"),+    ("Menus", "Menus"),+    ("Merged PRs", "PRs mesclados"),+    ("Message:", "Mensagem:"),+    ("Minimum Height", "Altura mínima"),+    ("Minimum Scale:", "Escala mínima:"),+    ("Minimum Width", "Largura mínima"),+    ("Models", "Modelos"),+    ("Mojikumi Set:", "Conjunto mojikumi:"),+    ("Monitor RGB", "RGB do monitor"),+    ("Monospaced", "Monoespaçada"),+    ("Move Pages", "Mover páginas"),+    ("Move Panel", "Mover painel"),+    ("Move Tab", "Mover tabulação"),+    ("N/A", "N/D"),+    ("Name (A–Z)", "Nome (A–Z)"),+    ("New Cell Style", "Novo estilo de célula"),+    ("New Condition", "Nova condição"),+    ("New Hyperlink", "Novo hiperlink"),+    ("New Hyperlink Destination", "Novo destino de hiperlink"),+    ("New Page Reference", "Nova referência de página"),+    ("New Parent", "Nova página principal"),+    ("New Stroke Style", "Novo estilo de traço"),+    ("New Table Style", "Novo estilo de tabela"),+    ("Next Page Number", "Número da próxima página"),+    ("No Adjustment", "Sem ajuste"),+    ("No Line Breaks", "Sem quebras de linha"),+    ("No contributor data was built into this copy.", "Nenhum dado de colaboradores foi incluído nesta cópia."),+    ("No fonts match", "Nenhuma fonte corresponde"),+    ("No matches", "Nenhuma correspondência"),+    ("No model credits were built into this copy.", "Nenhum crédito de modelos foi incluído nesta cópia."),+    ("Nonbreaking Hyphen", "Hífen inseparável"),+    ("Nonbreaking Space", "Espaço inseparável"),+    ("None (keep transparency)", "Nenhum (manter transparência)"),+    ("Note Tool", "Ferramenta Nota"),+    ("Numbering & Section Options", "Opções de numeração e de seção"),+    ("Object Style", "Estilo de objeto"),+    ("Object Style Options…", "Opções de estilo de objeto…"),+    ("Object/Anchored Object", "Objeto/Objeto ancorado"),+    ("Object/Arrange", "Objeto/Organizar"),+    ("Object/Captions", "Objeto/Legendas"),+    ("Object/Clipping Path", "Objeto/Traçado de recorte"),+    ("Object/Content", "Objeto/Conteúdo"),+    ("Object/Convert Shape", "Objeto/Converter forma"),+    ("Object/Effects", "Objeto/Efeitos"),+    ("Object/Fitting", "Objeto/Ajuste"),+    ("Object/Pathfinder", "Objeto/Localizador de caminhos"),+    ("Object/Paths", "Objeto/Caminhos"),+    ("Object/Select", "Objeto/Selecionar"),+    ("Object/Transform", "Objeto/Transformar"),+    ("Object/Transform Again", "Objeto/Transformar novamente"),+    ("Odd Page Break", "Quebra para página ímpar"),+    ("Offset from Parent", "Deslocamento em relação à base"),+    ("OpenType font", "Fonte OpenType"),+    ("Optical Margin Alignment", "Alinhamento óptico de margem"),+    ("Organization:", "Organização:"),+    ("Other Styles:", "Outros estilos:"),+    ("PDF import cancelled: the originating document has closed", "Importação de PDF cancelada: o documento de origem foi fechado"),+    ("Package", "Empacotar"),+    ("Packaged {count} files into {dir}", "{count} arquivo(s) empacotado(s) em {dir}"),+    ("Page Break", "Quebra de página"),+    ("Page Number:", "Número da página:"),+    ("Page Options", "Opções de página"),+    ("Page Size:", "Tamanho da página:"),+    ("Page Tool", "Ferramenta Página"),+    ("Paragraph Return", "Fim de parágrafo"),+    ("Paragraph Style", "Estilo de parágrafo"),+    ("Paragraph Symbol", "Símbolo de parágrafo"),+    ("Parent Character Spacing:", "Espaçamento dos caracteres base:"),+    ("Parent Options…", "Opções da página principal…"),+    ("Parent's Font", "Fonte da base"),+    ("Pen Tool", "Ferramenta Caneta"),+    ("Pencil Tool", "Ferramenta Lápis"),+    ("Per-Character Ruby", "Ruby por caractere"),+    ("Phone:", "Telefone:"),+    ("Picas", "Paicas"),+    ("Points", "Pontos"),+    ("Inches", "Polegadas"),+    ("Millimeters", "Milímetros"),+    ("Centimeters", "Centímetros"),+    ("Ciceros", "Cíceros"),+    ("Agates", "Ágatas"),+    ("Pixels", "Pixels"),+    ("Pin Bar Position", "Fixar posição da barra"),+    ("Place with Import Options", "Inserir com opções de importação"),+    ("Polygon Frame Tool", "Ferramenta Quadro poligonal"),+    ("Polygon Tool", "Ferramenta Polígono"),+    ("Preflight", "Preflight"),+    ("Preflight Panel…", "Painel Preflight…"),+    ("Presentation", "Apresentação"),+    ("Preset Details", "Detalhes da predefinição"),+    ("Preset Name", "Nome da predefinição"),+    ("Press keys…", "Pressione as teclas…"),+    ("Preview Change", "Visualizar alteração"),+    ("Preview Record", "Visualizar registro"),+    ("Previous Page Number", "Número da página anterior"),+    ("Print Booklet", "Imprimir folheto"),+    ("Prioritize Adjustment Amount", "Priorizar a quantidade de ajuste"),+    ("Punctuation Space", "Espaço de pontuação"),+    ("Push In First", "Primeiro para dentro"),+    ("Push Out First", "Primeiro para fora"),+    ("Push Out Only", "Somente para fora"),+    ("Quarter Space", "Espaço de um quarto"),+    ("Quick Apply", "Aplicação rápida"),+    ("RGB:", "RGB:"),+    ("Range:", "Intervalo:"),+    ("Real name", "Nome real"),+    ("Recent", "Recentes"),+    ("Recent Files", "Arquivos recentes"),+    ("Rectangle Frame Tool", "Ferramenta Quadro retangular"),+    ("Rectangle Tool", "Ferramenta Retângulo"),+    ("Redefine Character Style", "Redefinir estilo de caractere"),+    ("Redefine Document Style", "Redefinir estilo do documento"),+    ("Redefine Paragraph Style", "Redefinir estilo de parágrafo"),+    ("Reference Point", "Ponto de referência"),+    ("Registered Trademark Symbol", "Símbolo de marca registrada"),+    ("Relink", "Vincular novamente"),+    ("Relink to Folder", "Vincular novamente à pasta"),+    ("Relinked {count}", "Vinculados novamente: {count}"),+    ("Reload Fonts", "Recarregar fontes"),+    ("Remove Data Source", "Remover fonte de dados"),+    ("Remove Existing Ruler Guides", "Remover guias de régua existentes"),+    ("Remove Field", "Remover campo"),+    ("Remove Frame from Thread", "Remover quadro do encadeamento"),+    ("Remove »", "Remover »"),+    ("Rensuuji", "Rensuuji"),+    ("Reorder Objects", "Reordenar objetos"),+    ("Replace All", "Substituir tudo"),+    (+        "Replace All updates this font throughout text and styles. Done keeps remaining fallback fonts.",+        "Substituir tudo atualiza esta fonte em todo o texto e estilos. Concluir mantém as fontes substitutas restantes.",+    ),+    ("Replace Existing Table of Contents", "Substituir sumário existente"),+    ("Replace with:", "Substituir por:"),+    ("Report an Issue", "Relatar um problema"),+    ("Report an issue", "Relatar um problema"),+    ("Reset Bar Position", "Redefinir posição da barra"),+    ("Resize Row or Column", "Redimensionar linha ou coluna"),+    ("Resize panel window", "Redimensionar janela do painel"),+    ("Resize panels", "Redimensionar painéis"),+    ("Reverse the order", "Inverter a ordem"),+    ("Right Indent Tab", "Tabulação de recuo à direita"),+    ("Right/Bottom", "Direita/base"),+    ("Roman Baseline", "Linha de base latina"),+    ("Roman Word Break", "Quebra de palavras latinas"),+    ("Rotate Roman Characters in Vertical Text", "Girar caracteres latinos no texto vertical"),+    ("Rotate Tool", "Ferramenta Girar"),+    ("Ruby Color", "Cor do ruby"),+    ("Ruby Font and Size", "Fonte e tamanho do ruby"),+    ("Ruby Overhang:", "Projeção do ruby:"),+    ("Ruby Placement and Spacing", "Posição e espaçamento do ruby"),+    ("Ruby Type:", "Tipo de ruby:"),+    ("Ruler Zero Point", "Ponto zero da régua"),+    ("Same as Previous Document in the Book", "Igual ao documento anterior do livro"),+    ("Sample", "Amostra"),+    ("Sans Serif", "Sem serifa"),+    ("Save As", "Salvar como"),+    ("Save Document Preset", "Salvar predefinição de documento"),+    ("Save Document Preset As:", "Salvar predefinição de documento como:"),+    ("Save Preset", "Salvar predefinição"),+    ("Save Swatches for Exchange", "Salvar amostras para intercâmbio"),+    ("Save a Copy", "Salvar uma cópia"),+    ("Saved", "Salvas"),+    ("Saved Presets", "Predefinições salvas"),+    ("Scale Tool", "Ferramenta Escala"),+    ("Scale for Descenders", "Escalar para descendentes"),+    ("Scissors Tool", "Ferramenta Tesoura"),+    ("Script", "Manuscrita"),+    ("Scripts", "Scripts"),+    ("Section Marker", "Marcador de seção"),+    ("Section Marker:", "Marcador de seção:"),+    ("Section Prefix:", "Prefixo da seção:"),+    ("Section Symbol", "Símbolo de seção"),+    ("Select Page", "Selecionar página"),+    ("Select Paragraph", "Selecionar parágrafo"),+    ("Select Sentence", "Selecionar frase"),+    ("Select Story", "Selecionar artigo"),+    ("Select Text Unit", "Selecionar unidade de texto"),+    (+        "Select a placed video or sound (File › Place a .mp4, .mov, .mp3, .wav …).",+        "Selecione um vídeo ou som inserido (Arquivo › Inserir um .mp4, .mov, .mp3, .wav …).",+    ),+    ("Select an object to color its fill or stroke.", "Selecione um objeto para colorir seu preenchimento ou traçado."),+    ("Selected Text", "Texto selecionado"),+    ("Selection Tool", "Ferramenta Seleção"),+    ("Sent {count} page(s) to {printer}", "{count} página(s) enviada(s) para {printer}"),+    ("Sentence case", "Primeira letra da frase em maiúscula"),+    ("Serif", "Com serifa"),+    ("Sesame Dot", "Ponto de gergelim"),+    ("Set Composite Font", "Definir fonte composta"),+    ("Set OpenType Features", "Definir recursos OpenType"),+    ("Shatai", "Shatai"),+    ("Shear Tool", "Ferramenta Distorcer"),+    ("Show Recently Added", "Mostrar adicionadas recentemente"),+    ("Show Similar Fonts", "Mostrar fontes semelhantes"),+    ("Show Styles", "Mostrar estilos"),+    ("Show the Typography panel", "Mostrar o painel Tipografia"),+    ("Show/Hide Document Grid", "Mostrar/ocultar grade do documento"),+    ("Shrink Ruby Width Automatically", "Reduzir automaticamente a largura do ruby"),+    ("Similar to {family}", "Semelhantes a {family}"),+    ("Simplified Chinese Kinsoku", "Kinsoku de chinês simplificado"),+    ("Simulate Paper Color", "Simular cor do papel"),+    ("Single Left Quotation Mark", "Aspa simples de abertura"),+    ("Single Right Quotation Mark", "Aspa simples de fechamento"),+    ("Sixth Space", "Espaço de um sexto"),+    ("Slab Serif", "Serifa quadrada"),+    ("Slug:", "Área de informações:"),+    ("Small Black Circle", "Círculo preto pequeno"),+    ("Small Sample Text Size", "Tamanho de amostra pequeno"),+    ("Small White Circle", "Círculo branco pequeno"),+    ("Smart Guide Options", "Opções de guias inteligentes"),+    ("Smooth Tool", "Ferramenta Suavizar"),+    ("Soft Kinsoku", "Kinsoku flexível"),+    ("Sort Entries in Alphabetical Order", "Classificar entradas em ordem alfabética"),+    ("Start #", "Nº inicial"),+    ("Start Chapter Numbering at:", "Iniciar numeração de capítulos em:"),+    ("Start Page Numbering at:", "Iniciar numeração de páginas em:"),+    ("Start Section", "Iniciar seção"),+    ("Step and Repeat", "Passo e repetição"),+    ("Stop Preview", "Parar visualização"),+    ("Story Column Direction", "Direção das colunas do artigo"),+    ("Story Editor — {count} words", "Editor de artigo — {count} palavra(s)"),+    ("Story {story} ← story {parent}", "Artigo {story} ← artigo {parent}"),+    ("Straight Double Quotation Marks", "Aspas duplas retas"),+    ("Straight Single Quotation Mark (Apostrophe)", "Aspa simples reta (apóstrofo)"),+    ("Stroke Behind Fill", "Traçado atrás do preenchimento"),+    ("Stroke Weight", "Peso do traçado"),+    ("Styles in Table of Contents", "Estilos no sumário"),+    ("Stylistic Set", "Conjunto estilístico"),+    ("Subject:", "Assunto:"),+    ("Subscript:", "Subscrito:"),+    ("Superscript:", "Sobrescrito:"),+    ("Swap Text Fill and Stroke", "Alternar preenchimento e traçado do texto"),+    ("Symbol", "Símbolo"),+    ("Tab", "Tab"),+    ("Table of Contents", "Sumário"),+    ("Table/Convert Cell Type", "Tabela/Converter tipo de célula"),+    ("Table/Delete", "Tabela/Excluir"),+    ("Table/Insert", "Tabela/Inserir"),+    ("Table/Select", "Tabela/Selecionar"),+    ("Tate-chu-yoko Digits:", "Dígitos de tate-chu-yoko:"),+    ("Tate-chu-yoko Settings", "Configurações de tate-chu-yoko"),+    ("Text Anchor", "Âncora de texto"),+    ("Text Color", "Cor do texto"),+    ("Text:", "Texto:"),+    ("The selected fonts have no OpenType features.", "As fontes selecionadas não têm recursos OpenType."),+    ("Thin Space", "Espaço fino"),+    ("Third Space", "Espaço de um terço"),+    (+        "This document uses unavailable fonts. Choose replacements, or select Done to continue with fallback fonts.",+        "Este documento usa fontes indisponíveis. Escolha outras fontes ou selecione Concluir para continuar com as fontes substitutas.",+    ),+    ("This page", "Esta página"),+    ("This page is", "Esta página é"),+    (+        "This story was edited in the layout: you'll be asked before those edits are replaced",+        "Este artigo foi editado no layout: você será consultado antes que essas edições sejam substituídas",+    ),+    ("This style is in use. Text using it will be reassigned to:", "Este estilo está em uso. O texto que o usa será reatribuído a:"),+    ("Thread Text Frames", "Encadear quadros de texto"),+    ("Title Case", "Iniciais Maiúsculas"),+    ("Title:", "Título:"),+    ("To Body", "Para o corpo"),+    ("To Footer", "Para o rodapé"),+    ("To Header", "Para o cabeçalho"),+    ("Trademark Symbol", "Símbolo de marca comercial"),+    ("Traditional Chinese Kinsoku", "Kinsoku de chinês tradicional"),+    ("Transform Again Individually", "Transformar novamente individualmente"),+    ("Transform Sequence Again", "Transformar sequência novamente"),+    ("Transform Sequence Again Individually", "Transformar sequência novamente individualmente"),+    ("TrueType font", "Fonte TrueType"),+    ("Type Tool", "Ferramenta Texto"),+    (+        "Type a word with ~ at each allowed break (ex~am~ple); without ~ the word is never hyphenated.",+        "Digite uma palavra com ~ em cada quebra permitida (ex~em~plo); sem ~ a palavra nunca é hifenizada.",+    ),+    ("Type on a Path Options", "Opções de texto em um traçado"),+    ("Type on a Path Tool", "Ferramenta Texto em um traçado"),+    ("Type/Bulleted and Numbered Lists", "Tipo/Listas com marcadores e numeradas"),+    ("Type/Change Case", "Tipo/Alterar maiúsculas/minúsculas"),+    ("Type/Hyperlinks & Cross-References", "Tipo/Hiperlinks e referências cruzadas"),+    ("Type/Insert Break Character", "Tipo/Inserir caractere de quebra"),+    ("Type/Insert Special Character/Hyphens and Dashes", "Tipo/Inserir caractere especial/Hifens e travessões"),+    ("Type/Insert Special Character/Markers", "Tipo/Inserir caractere especial/Marcadores"),+    ("Type/Insert Special Character/Other", "Tipo/Inserir caractere especial/Outros"),+    ("Type/Insert Special Character/Quotation Marks", "Tipo/Inserir caractere especial/Aspas"),+    ("Type/Insert Special Character/Symbols", "Tipo/Inserir caractere especial/Símbolos"),+    ("Type/Insert White Space", "Tipo/Inserir espaço"),+    ("Type/Proof Setup", "Tipo/Configuração de prova"),+    ("Type/Rotate Spread", "Tipo/Girar spread"),+    ("Type/Separations Preview", "Tipo/Visualização de separações"),+    ("Type/Story Direction", "Tipo/Direção do texto"),+    ("Type/Text Variables", "Tipo/Variáveis de texto"),+    ("Type/Track Changes", "Tipo/Controlar alterações"),+    ("Type/Type on a Path", "Tipo/Texto em um traçado"),+    ("URL:", "URL:"),+    ("Unassigned", "Não atribuído"),+    ("Unlimited", "Ilimitado"),+    ("Unsaved Changes", "Alterações não salvas"),+    ("Up/Down Position:", "Posição acima/abaixo:"),+    ("Update Data Source", "Atualizar fonte de dados"),+    ("Use Document Style Definition", "Usar a definição de estilo do documento"),+    ("Use OpenType Pro Ruby Glyphs", "Usar glifos ruby do OpenType Pro"),+    ("Use Paragraph Gyoudori", "Usar gyoudori do parágrafo"),+    ("Username", "Nome de usuário"),+    ("Validate from Root Element", "Validar a partir do elemento raiz"),+    ("Variable font", "Fonte variável"),+    ("Vertical Type Tool", "Ferramenta Texto vertical"),+    ("Vertical Type on a Path Tool", "Ferramenta Texto vertical em um traçado"),+    ("View/Display Performance", "Exibir/Desempenho de exibição"),+    ("View/Extras", "Exibir/Extras"),+    ("View/Grids & Guides", "Exibir/Grades e guias"),+    ("View/Proof Setup", "Exibir/Configuração de prova"),+    ("View/Rotate Spread", "Exibir/Girar spread"),+    ("View/Screen Mode", "Exibir/Modo de tela"),+    ("View/Separations Preview", "Exibir/Visualização de separações"),+    ("View/Structure", "Exibir/Estrutura"),+    ("Warichu", "Warichu"),+    ("Warichu Settings", "Configurações de warichu"),+    ("Warichu Size:", "Tamanho do warichu:"),+    ("White Circle", "Círculo branco"),+    ("White Sesame Dot", "Ponto de gergelim branco"),+    ("White Triangle", "Triângulo branco"),+    ("Window/Arrange", "Janela/Organizar"),+    ("Window/Interactive", "Janela/Interativo"),+    ("Window/Interface Color Theme", "Janela/Tema de cores da interface"),+    ("Window/Output", "Janela/Saída"),+    ("Window/Panels", "Janela/Painéis"),+    ("Window/Type & Tables", "Janela/Texto e tabelas"),+    ("Window/Utilities", "Janela/Utilitários"),+    ("Working CMYK", "CMYK de trabalho"),+    ("Your Recent Items", "Seus itens recentes"),+    ("Zoom Tool", "Ferramenta Zoom"),+    ("[No Language]", "[Nenhum idioma]"),+    ("a, b, c, d...", "a, b, c, d..."),+    ("dropcap", "capitular"),+    ("i, ii, iii, iv...", "i, ii, iii, iv..."),+    ("image editing", "edição de imagens"),+    ("layer", "camada"),+    ("layers", "camadas"),+    ("lowercase", "minúsculas"),+    ("motion graphics and visual effects", "motion graphics e efeitos visuais"),+    ("photo library and raw development", "biblioteca de fotos e revelação raw"),+    ("reading, organizing and protecting PDFs", "leitura, organização e proteção de PDFs"),+    ("the default printer", "a impressora padrão"),+    ("vector illustration", "ilustração vetorial"),+    ("video editing, color and sound", "edição de vídeo, cor e som"),+    ("{contributors} contributors · {commits} commits", "{contributors} colaboradores · {commits} commits"),+    ("{count} conflict(s): {names}", "{count} conflito(s): {names}"),+    ("{count} match(es)", "{count} correspondência(s)"),+    ("{count} replacement(s) made", "{count} substituição(ões) feita(s)"),+    ("{label}: {name} (double-click: Color Picker)", "{label}: {name} (clique duplo: Seletor de cores)"),+    (+        "{name}: import cancelled while a dialog is open; choose the file again",+        "{name}: importação cancelada enquanto uma caixa de diálogo estava aberta; escolha o arquivo novamente",+    ),+    ("{name}: {count} step(s) done", "{name}: {count} etapa(s) concluída(s)"),+    ("« Add", "« Adicionar"),+    (+        "“{}” has been edited in this layout. Updating replaces those edits with the text from the file.",+        "“{}” foi editado neste layout. A atualização substitui essas edições pelo texto do arquivo.",+    ),+    ("“{}” has changes that are not saved. Save them before closing?", "“{}” tem alterações não salvas. Salvá-las antes de fechar?"),+    ("Close Window", "Fechar janela"),+    ("Deselect Guides", "Desmarcar guias"),+    ("Import InDesign Set…", "Importar conjunto do InDesign…"),+    ("Import InDesign Shortcut Set", "Importar conjunto de atalhos do InDesign"),+    (+        "Imported {count} shortcuts from “{set}”; {unmatched} items not matched, {unreadable} unreadable.",+        "{count} atalho(s) importado(s) de “{set}”; {unmatched} item(ns) sem correspondência, {unreadable} ilegível(is).",+    ),+    ("Maximize/Restore Window", "Maximizar/restaurar janela"),+    ("Minimize Window", "Minimizar janela"),+    ("Move Guides", "Mover guias"),+    ("Move Window", "Mover janela"),+    ("PRs", "PRs"),+    ("Resize Window", "Redimensionar janela"),+    ("Select Guide", "Selecionar guia"), ];diff --git a/crates/ui-egui/src/new_document.rs b/crates/ui-egui/src/new_document.rs--- a/crates/ui-egui/src/new_document.rs+++ b/crates/ui-egui/src/new_document.rs@@ -15,7 +15,7 @@ use crate::dialogs::Dialog; use crate::theme::{Tokens, semibold};  /// The Units list, as InDesign's New Document window has it.-const NEW_DOCUMENT_UNITS: [Unit; 8] =+pub(crate) const NEW_DOCUMENT_UNITS: [Unit; 8] =     [Unit::Points, Unit::Picas, Unit::Inches, Unit::Millimeters, Unit::Centimeters, Unit::Ciceros, Unit::Agates, Unit::Pixels]; /// Tab key and English label. const TABS: [(&str, &str); 5] = [("recent", "Recent"), ("saved", "Saved"), ("print", "Print"), ("web", "Web"), ("mobile", "Mobile")];diff --git a/docs/gaps.md b/docs/gaps.md--- a/docs/gaps.md+++ b/docs/gaps.md@@ -1,6 +1,6 @@ # Where DesignCraft falls short of InDesign -> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-17 · **Change:** minor (gap 6 shrunk: Type › Reload Fonts reads fonts installed, edited or removed while running (#328); gap 3: Package links are relative, #340; gap 27 closed: the loaded text cursor threads into a frame inside a group (#1075); .indd and .indt open through indd-utils; gap 0 shrunk: text threads by hand; threading gaps added; Optical kerning from outlines (#181); gap 6: macOS lists fonts that font services and managers activate; shared print spooler; image clipping paths from IDML; Tabs panel listed as present (#343); book chapter update safety; gap 16: Based on Parent leftovers; bounded control click/drag input; swatches on placed greyscale and bitmap images) · **Target:** Adobe InDesign 2026 (21.6)+> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-21 · **Change:** minor (gap 21 shrunk: pt-BR translates the whole interface; gap 6 shrunk: Type › Reload Fonts reads fonts installed, edited or removed while running (#328); gap 3: Package links are relative, #340; gap 27 closed: the loaded text cursor threads into a frame inside a group (#1075); .indd and .indt open through indd-utils; gap 0 shrunk: text threads by hand; threading gaps added; Optical kerning from outlines (#181); gap 6: macOS lists fonts that font services and managers activate; shared print spooler; image clipping paths from IDML; Tabs panel listed as present (#343); book chapter update safety; gap 16: Based on Parent leftovers; bounded control click/drag input; swatches on placed greyscale and bitmap images) · **Target:** Adobe InDesign 2026 (21.6)  Every known shortfall against InDesign 2026, one entry each, ranked by how much it stops an InDesign professional from doing real work. This is the work list: agents pick from the top.@@ -218,7 +218,7 @@ Kind: **F** feature · **U** UI/UX · **T** typography · **FF** file format ·  ### 21. Localization breadth (L) - **Missing:** Hindi, Indonesian, Korean, Vietnamese interfaces; ~17% of strings in the 83–85%-  languages; 39% of pt-BR; native-speaker review for all. **Estimate:** 120–180 h.+  languages; native-speaker review for all. **Estimate:** 120–180 h.   **Doc:** [localization-parity.md](localization-parity.md)  ### 22. InDesign scripting compatibility (E)@@ -249,6 +249,7 @@ Cue. These are excluded from every percentage.  | Date | Change | Summary | |---|---|---|+| 2026-10-21 | trivial | Gap 21 shrunk: pt-BR translates the whole interface but three Control panel captions | | 2026-10-16 | minor | Gap 27 closed: the loaded text cursor threads into a text frame inside a group (#1075) | | 2026-10-16 | trivial | Gap 13 shrunk: Greek hyphenates, so five languages do (#1077) | | 2026-10-13 | minor | Gap 16: Parent Options dialog and overrides of base items on a parent spread |diff --git a/docs/localization-parity.md b/docs/localization-parity.md--- a/docs/localization-parity.md+++ b/docs/localization-parity.md@@ -1,6 +1,6 @@ # Localization parity -> **Last reviewed:** 2026-10-11 · **Last updated:** 2026-10-14 · **Change:** minor (Polish and Georgian interfaces; catalog counts remain the 2026-10-10 measurement) · **Target:** Adobe InDesign 2026 (21.6)+> **Last reviewed:** 2026-10-11 · **Last updated:** 2026-10-23 · **Change:** minor (pt-BR catalog filled and re-measured; the other catalog counts remain the 2026-10-10 measurement) · **Target:** Adobe InDesign 2026 (21.6)  Per-language status of the DesignCraft interface and of document typesetting in each script. Script-specific typesetting detail: [cjk.md](cjk.md), [cjk-typography.md](cjk-typography.md),@@ -33,16 +33,29 @@ come as Middle East editions with an English or French interface and right-to-le | Hindi | hi | ✗ | 0 (0%) | none | Devanagari shaped by harfrust in documents but untested; no Hindi hyphenation or spelling | no | none | 20–30 | | Arabic | ar | Middle East edition (English/French UI) | 1,459 (85%) | menus, panels, most dialogs; no help | RTL UI text (`rtl.rs`: bidi + shaping); Arabic composition, kashida, digits, RTL stories and tables ✓ (arabic-typography.md); list bullets and multi-column RTL open (#100) | no | partial | 15–25 | | French | fr | ✓ | 1,438 (83%) | menus, panels, most dialogs; no help | Latin ✓; no French hyphenation | no | partial | 6–10 |-| Portuguese (Brazil) | pt-br | ✓ (pt) | 1,057 (61%) | menus, panels, some dialogs; no help | Latin ✓; Portuguese hyphenation ✓ | no | partial | 8–12 |+| Portuguese (Brazil) | pt-br | ✓ (pt) | 2,431 / 2,434 (~100%, 2026-10-23) | whole interface but the Control panel's `IT`, `VA` and `Y:` captions; no help | Latin ✓; Portuguese hyphenation ✓ | no | partial | 1–2 | | Indonesian | id | ✗ | 0 (0%) | none | Latin ✓ | no | none | 12–18 | | Japanese | ja | ✓ | 1,644 (95%) | whole interface (#272), vertical-type commands; no help | vertical text, kinsoku, aki, ruby, warichu ✓ (partial depth, cjk.md); canvas IME ✓, not checked by hand (#322); Japanese UI and Mincho fonts from craft-fonts | no | partial | 6–10 (+ IME checks, shared with zh) | | German | de | ✓ | 1,438 (83%) | menus, panels, most dialogs; no help | Latin ✓; no German hyphenation (InDesign ships 2006 reform patterns) | no | partial | 6–10 | | Korean | ko | ✓ | 0 (0%) | none | Korean line breaking at spaces ✓; canvas IME ✓, not checked by hand (#322) | no | none | 15–25 | | Vietnamese | vi | ✗ | 0 (0%) | none | Latin with stacked diacritics via harfrust, untested | no | none | 12–18 | -Percentages are of the 1,724 measured strings. A language is `full` only when every user-visible+Percentages are of the 1,724 measured strings, except pt-BR's. A language is `full` only when every user-visible string is translated and its script renders and edits correctly; none but English is. +Brazilian Portuguese (2026-10-21): the 1,724 strings were counted at `a127c6d5` (#355). Recounting+that commit by the same rule (every catalog key, engine command label and `tr`/`t` literal, less+the language codes tests pass to `tr`) gives 1,723, with pt-BR at the same 1,057. The rule gives+**2,434 strings** at main `2e36dcf9` (#1640), so the other percentages above overstate today's+coverage. `pt_br.rs` translates 2,431 of the 2,434, and the New Document unit names, which reach+`tr` at run time and no catalog had. Like every other language it leaves+the Control panel's `IT`, `VA` and `Y:` captions in English. Tools are named "Ferramenta …", parent+pages "página principal" and stories "artigo"; each menu path is made of the menu names. The+shared catalog test checks the placeholders, padding, ellipses and colons. The 645 new+strings were AI-drafted and approved by the contributor; they are not yet checked in the running+app, and a native-speaker review is pending. Older rows still use+"página-pai" and "página mestra" for parent pages and "Matéria" for a story.+ Japanese follow-up (2026-10-11): print ranges, imported style handling, the built-in `(import)` caption, table row/column movement and row-height distribution now use the existing translation catalog. Print, import options and an active table were rendered in Japanese and English with@@ -56,9 +69,10 @@ craft-fonts. The language totals above retain their dated measurement; this is a | Italian | it | 1,464 (85%) | partial | | Ukrainian | uk | 1,432 (83%), plural categories handled | partial | | Polish | pl | 1,717 (99%), count captions category-first; AI-drafted, awaiting native review | partial |+| Russian | ru | 1,709 of the 2,434 counted at `2e36dcf9` (70%, 2026-10-23), count captions category-first | partial | | Georgian | ka | 1,724 (~100%: every catalog key plus the command labels the others lack), count captions as `noun: n` | partial (reviewed by a native speaker) | -DesignCraft ships **5** interface languages beyond the twelve; InDesign ships 17 beyond its+DesignCraft ships **6** interface languages beyond the twelve; InDesign ships 17 beyond its eight of the twelve (cs, da, el, en_GB, fi, hu, it, nb, nl, pl, ro, ru, sq, sv, tr, uk, zh_TW).  ## Document languages@@ -73,7 +87,7 @@ locale shaping. See [typography-parity.md](typography-parity.md). | Work | Opus 5.5 h | |---|---| | Fill the 83–85% catalogs (de, fr, es, zh, ar, it, uk; ~290 strings each) | 25–40 |-| pt-BR to full | 8–12 |+| pt-BR to full: check it in the running app; one term each for parent page and story | 1–2 | | New: Hindi, Indonesian, Korean, Vietnamese (1,724 strings, plural rules, tests) | 50–75 | | Canvas IME (zh, ja, ko): checks by hand with system IMEs, and fixes | 10–20 | | CJK UI font in every release build; Devanagari and Vietnamese rendering tests | 10–15 |@@ -85,6 +99,8 @@ locale shaping. See [typography-parity.md](typography-parity.md).  | Date | Change | Summary | |---|---|---|+| 2026-10-23 | minor | Re-measured at `2e36dcf9`: pt-BR also translates the 12 strings main added since 2026-10-21 (2,431 of 2,434); Russian 1,709 of 2,434 |+| 2026-10-21 | minor | pt-BR catalog filled (634 strings and the unit names) and re-measured at `438d7b6d`: 2,416 of 2,419 strings; the 1,724 baseline traced to `a127c6d5`; Russian (`ru`, 1,705) listed, six languages beyond the twelve; pt-BR to full 8–12 → 1–2 h; dimension estimates unchanged | | 2026-10-11 | minor | Localized Japanese print, import and table controls; checked Japanese and English renders | | 2026-10-14 | minor | Georgian (`ka`) interface added | | 2026-10-10 | major | Created: catalogs measured (1,724 strings), the twelve key languages plus Italian and Ukrainian |diff --git a/docs/target-app-parity.md b/docs/target-app-parity.md--- a/docs/target-app-parity.md+++ b/docs/target-app-parity.md@@ -1,6 +1,6 @@ # DesignCraft parity with Adobe InDesign -> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-16 · **Change:** minor (File ▸ Open Recent; .indd and .indt open through indd-utils; text threads by hand; image clipping paths from IDML; anchored objects wrap text; Tabs panel listed as present (#343); spring-loaded Zoom navigation; recovery checkpoint retention; cancelable macOS Dock Quit; Based on Parent; object styles carry effects; colour management on craft-cms, Coated FOGRA39 default CMYK; swatches on placed greyscale and bitmap images) · **Target:** Adobe InDesign 2026 (21.6.0.57, macOS)+> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-21 · **Change:** minor (pt-BR interface ~100%, Localization unchanged at 45%; File ▸ Open Recent; .indd and .indt open through indd-utils; text threads by hand; image clipping paths from IDML; anchored objects wrap text; Tabs panel listed as present (#343); spring-loaded Zoom navigation; recovery checkpoint retention; cancelable macOS Dock Quit; Based on Parent; object styles carry effects; colour management on craft-cms, Coated FOGRA39 default CMYK; swatches on placed greyscale and bitmap images) · **Target:** Adobe InDesign 2026 (21.6.0.57, macOS)  The authoritative assessment of how close DesignCraft is to Adobe InDesign. [ROADMAP.md](../ROADMAP.md) summarizes it; [gaps.md](gaps.md) lists every known shortfall one at a time; the feature-by-feature@@ -64,7 +64,7 @@ they receive, setting type exactly, and basic editing that never fails. | UI/UX fidelity | 15% | 45% | 120–180 | Measured InDesign 2026 look; but users report object copy/paste (#351, #348, #185, #164), right-click menus (#238, #187, #160), out-port threading (#352, #194, #165) failing | [ui-parity.md](ui-parity.md) | | Stability | 10% | 45% | 60–100 | Never-crash rules and last-resort guards; startup failures on some GPUs and machines (#334, #273, #220, #192, #167, #166); no CI runs the tests on pull requests | [gaps.md](gaps.md) | | Performance | 5% | 65% | 40–80 | 300k characters compose in ~38 ms warm; typing repaints in < 1 ms (damage regions); no incremental composition; nothing benchmarked against InDesign; no large real documents | [gaps.md](gaps.md) |-| Localization | 3% | 45% | 120–180 | 9 translations beyond English; Japanese 95%, most others 83–85%, pt-BR 61%; Hindi, Indonesian, Korean, Vietnamese none | [localization-parity.md](localization-parity.md) |+| Localization | 3% | 45% | 120–180 | 13 translations beyond English; Japanese 95%, most others 83–85% (2026-10-10), pt-BR ~100% (2026-10-21); Hindi, Indonesian, Korean, Vietnamese none | [localization-parity.md](localization-parity.md) | | Platforms | 3% | 55% | 40–80 | macOS is where it's tested; Windows and Linux users hit basic failures; web and FreeBSD builds exist | [hardware-parity.md](hardware-parity.md) | | Hardware | 2% | 45% | 20–40 | Canvas rasterizes on the CPU (vello_cpu, multithreaded); GPU only presents; printing uses shared CUPS/Windows PDF spoolers (no PostScript; physical output needs validation) | [hardware-parity.md](hardware-parity.md) | | Ecosystem (scripting, plug-ins) | 2% | 15% | 150–250 | Own command/script/MCP API is strong; no ExtendScript/UXP DOM, so InDesign scripts don't run; no plug-ins | [gaps.md](gaps.md) |@@ -463,6 +463,7 @@ Task notes that headed ROADMAP.md:  | Date | Change | Summary | |---|---|---|+| 2026-10-21 | minor | Localization evidence: 13 translations beyond English, pt-BR ~100% (re-measured); readiness and hours unchanged | | 2026-10-13 | minor | `.indd` and `.indt` open through storytold/indd-utils; INDD remaining work 10–30 h (real-file corpus); readiness unchanged until it is measured | | 2026-10-12 | minor | Text threads by hand; stage note and distance to alpha follow the gate (5–7 h, #165); percentages unchanged | | 2026-10-11 | minor | Spring-loaded Zoom navigation added to the working feature inventory (DC-1); readiness estimates unchanged |