Skip to content

fix(i18n-es): normalize accents + add missing diacritics (107 fixes) - #321

Merged
krisarmstrong merged 1 commit into
mainfrom
feat/i18n-es-accent-normalization
May 27, 2026
Merged

fix(i18n-es): normalize accents + add missing diacritics (107 fixes)#321
krisarmstrong merged 1 commit into
mainfrom
feat/i18n-es-accent-normalization

Conversation

@krisarmstrong

Copy link
Copy Markdown
Collaborator

Summary

Systematic Spanish accent + diacritic cleanup across all 7 ES locale
files. Stem ES was previously missing most accent marks on common
nouns and verb forms — fixing 107 occurrences across cli/common/
errors/modules/params/security/settings JSON.

Examples of corrections:

  • `configuracion` → `configuración` (18)
  • `autenticacion` → `autenticación` (12)
  • `verificacion` → `verificación` (8)
  • `sesion` → `sesión` (6, singular only — plural `sesiones` is correct)
  • `codigo` → `código` (6)
  • `aplicacion` → `aplicación` (5)
  • `version` → `versión` (5)
  • `numero` → `número` (5)
  • `maxima/máxima` (5)
  • Missing ñ: `contrasena` → `contraseña` (3)
  • Verb `esta` → `está` when followed by past participle:
    `ya esta activada` → `ya está activada`
    `no esta activada` → `no está activada`
    `Este stem esta configurado` → `Este stem está configurado`
    `no esta disponible` → `no está disponible`

Demonstrative-pronoun `esta` + noun (`esta cuenta`, `esta sesión`,
`esta plataforma`) deliberately stays unaccented — correct usage.

Per `I18N_STYLE_GUIDE_ES.md` (formal `usted` register, sentence
case). Glossary terms (NIAC/PCAP/RFC numbers/protocol abbreviations/
CLI commands) preserved verbatim.

What's NOT in scope

  • No EN changes
  • No key additions/removals
  • Pure text-content normalization
  • Plural `-iones` forms skipped (Spanish stress rule moves accent off:
    `opción` → `opciones`)
  • Context-sensitive pairs (`esta/está`, `mas/más`, `si/sí`,
    `como/cómo`) skipped from auto-replacement; only the unambiguous
    verb-form cases were hand-corrected

Cross-repo audit

Same word-list script run against:

  • `seed`: 0 corrections (already clean ✓)
  • `niac-go`: 0 corrections (already clean ✓)
  • `stem`: 107 corrections applied (this PR)

Test plan

  • All 7 ES JSON files parse as valid JSON
  • Diff is text-only; no key structure changes
  • Visual smoke test: load Stem UI with `localStorage.setItem('stem-language','es'); location.reload()` and confirm:
    • Settings drawer renders "Configuración" / "Autenticación" with accents
    • Login MFA flow shows "Código de verificación"
    • Error toasts render "La autenticación de dos factores ya está activada"

Systematic accent + diacritic cleanup across all 7 ES locale files.
Stem ES was previously missing most accent marks on common Spanish
nouns and verb forms, e.g.:

- configuracion → configuración (18 hits)
- autenticacion → autenticación (12 hits)
- verificacion → verificación (8 hits)
- sesion → sesión (6 hits)
- codigo → código (6 hits)
- aplicacion → aplicación (5 hits)
- version → versión (5 hits)
- numero → número (5 hits)
- maxima → máxima (5 hits)
- validacion → validación (4 hits)
- compilacion → compilación (3 hits)
- maximo → máximo (3 hits)
- parametros → parámetros (3 hits)
- también, técnica, gráfica, rápido, página, dígitos, descripción,
  selección, operación, transmisión, ejecución, conexión, opciones,
  análisis, información (1-2 hits each)

Missing ñ:
- contrasena → contraseña (3 hits in security.json)

Verb-form esta → está (copula + past participle, distinct from the
demonstrative pronoun "esta" which stays unaccented):
- "ya esta activada" → "ya está activada"
- "no esta activada" → "no está activada"
- "Este stem esta configurado" → "Este stem está configurado"
- "no esta disponible en esta plataforma" → "no está disponible en
  esta plataforma" (one of two "esta" tokens; the other modifies
  "plataforma" and is correctly the demonstrative)

Demonstrative-pronoun "esta" + noun ("esta cuenta", "esta sesión",
"esta plataforma") is deliberately left unaccented — correct usage.

Per I18N_STYLE_GUIDE_ES.md (formal usted register, sentence case).
Glossary terms preserved verbatim (NIAC/PCAP/RFC numbers/protocol
abbreviations/CLI commands stay English).

No EN changes. No key changes. Pure text-content normalization,
applied via /tmp/i18n_accent_fix.py word-list (unambiguous accents
only — context-sensitive pairs like esta/está, mas/más, si/sí are
skipped from auto-replacement). Plural -iones forms also skipped
since the Spanish stress rule moves accent off (opción → opciones).

Seed and NIAC ES files audited via the same script — both clean,
no changes needed.

Validation: all 7 ES files parse as valid JSON.
@qodo-code-review

Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@github-actions

Copy link
Copy Markdown
Contributor

License Compliance Report

All dependencies pass license compliance checks

Go Dependencies

  • Unknown: 31 package(s)
  • MIT: 26 package(s)
  • BSD-3-Clause: 16 package(s)
  • Apache-2.0: 11 package(s)
  • BSD-2-Clause: 1 package(s)

npm Dependencies

See full report in workflow artifacts

Allowed Licenses: MIT, Apache-2.0, BSD-*, ISC, CC0-1.0, MPL-2.0
Forbidden: GPL, AGPL, SSPL (strong copyleft)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant