# Plantilla de tabla de localización

Una tabla de cadenas con la que pueden trabajar los traductores: una fila por clave, con su contexto, su límite de longitud, la fuente en inglés y cuatro traducciones, además de un glosario y una guía de estilo por idioma. Descárgala como .zip: la tabla es un archivo CSV (UTF-8, separado por comas), el resto es Markdown, y todo se importa en Nodary, donde el CSV se convierte en una hoja que usas como tabla de traducción.

Gratis, sin cuenta y sin correo. Úsala, modifícala, compártela.

[Descargar la plantilla (.zip)](https://nodary.ai/downloads/plantilla-tabla-de-localizacion.zip)

## Lee cada archivo antes de descargarlo

La visión general explica las columnas, cómo nombrar las claves, las variables y los estados de traducción. La tabla tiene 13 cadenas de ejemplo de Saltmarrow, el juego de muestra que este sitio enseña en todas partes; dos celdas están mal a propósito, para mostrar lo que detectan las comprobaciones.

- Tabla de localización: Cómo funciona la tabla: las columnas, cómo se nombran las claves, las variables, los estados de traducción y los archivos de al lado.
- Cadenas: La tabla: una fila por cadena, su contexto y su límite de longitud, la fuente en inglés y cuatro traducciones.
- Glosario: Las palabras que se traducen de una sola manera en todas partes, y los nombres que nunca se traducen.
- Guía de estilo: Cómo habla el juego en cada idioma: su voz, cómo se dirige al jugador, la tipografía, la longitud y los plurales.

### Tabla de localización

_Cómo usar esta plantilla: las líneas en cursiva son indicaciones. Sustitúyelas por tus palabras y luego bórralas. Los valores entre corchetes los rellenas tú. La tabla en sí es el archivo CSV junto a esta página._

#### Los archivos

- [Cadenas](https://nodary.ai/es/templates/localization-string-table#doc-strings): la tabla en sí, una fila por cadena, una columna por idioma
- [Glosario](https://nodary.ai/es/templates/localization-string-table#doc-glossary): las palabras que se traducen igual en todas partes, y los nombres que nunca se traducen
- [Guía de estilo](https://nodary.ai/es/templates/localization-string-table#doc-style): cómo habla el juego en cada idioma

#### Columnas

| Columna | Qué contiene |
| --- | --- |
| key | Un nombre único para la cadena, que los jugadores nunca ven |
| context | Dónde aparece el texto y quién lo dice: lo que un traductor no puede adivinar |
| max_length | El máximo de caracteres que puede ocupar el texto en pantalla |
| en | El texto fuente |
| fr, de, es, pl | Una columna por idioma, con su código como nombre |

#### Nombrar las claves

_Nombra las claves según dónde vive el texto, de lo general a lo particular, para que las cadenas relacionadas queden juntas._

- Patrón: [pantalla].[elemento].[detalle], como menu.play o hud.tide.warning
- En minúsculas, con puntos entre las partes y sin espacios
- Nunca reutilices una clave para otro texto: añade una nueva

#### Variables y etiquetas

_Los valores que inserta el juego van entre llaves, como {count}; cada traducción conserva cada variable de su fuente. Las etiquetas de formato, como la de negrita en item.crystal.desc, se quedan alrededor de las palabras que marcan._

#### Estados de traducción

```mermaid
flowchart LR
  n0["Falta"]
  n1["Borrador"]
  n2["Revisada"]
  n3["Final"]
  n4["Desactualizada"]
  n0 --> n1
  n1 --> n2
  n2 --> n3
  n3 --> n4
  n4 --> n1
```
_El estado de una traducción: una fuente modificada la deja desactualizada, para revisarla otra vez_

_Ejemplo (Saltmarrow, un juego de muestra): Dos celdas del ejemplo están mal a propósito. menu.settings en alemán, Einstellungen, tiene 13 caracteres donde el botón admite 10, así que la comprobación de longitud lo marca; el saludo de la Archivera aún no tiene polaco y cuenta como pendiente._

_Puedes usar, modificar y compartir esta plantilla libremente. Viene de_ [Nodary](https://nodary.ai/es)_, donde estos archivos se importan como un mapa de documentos enlazados, y el CSV como una hoja._

### Cadenas

| key | context | max_length | en | fr | de | es | pl |
| --- | --- | --- | --- | --- | --- | --- | --- |
| menu.play | Botón del menú principal | 12 | Play | Jouer | Spielen | Jugar | Graj |
| menu.settings | Botón del menú principal; el botón admite 10 caracteres | 10 | Settings | Paramètres | Einstellungen | Ajustes | Ustawienia |
| menu.quit | Botón del menú principal | 12 | Quit | Quitter | Beenden | Salir | Wyjdź |
| hud.tide.warning | Se muestra en el HUD dos minutos antes de que cambie la marea; {minutes} es un número | 40 | The tide turns in {minutes} min | La marée tourne dans {minutes} min | Gezeitenwechsel in {minutes} Min. | La marea cambia en {minutes} min | Zmiana pływu za {minutes} min |
| hud.salt.count | Contador del HUD; {count} es un número | 20 | Salt: {count} | Sel : {count} | Salz: {count} | Sal: {count} | Sól: {count} |
| dialogue.archivist.greet | La Archivera ahogada, primer encuentro. Tranquila y formal: trata de usted al jugador | 120 | You came down with the tide. Most who do, stay. | Vous êtes descendu avec la marée. La plupart de ceux qui le font restent. | Sie sind mit der Flut herabgestiegen. Die meisten, die das tun, bleiben. | Ha bajado con la marea. La mayoría de quienes lo hacen se quedan. |  |
| item.crystal.name | Nombre de objeto, en el inventario y la tienda | 24 | Memory crystal | Cristal de mémoire | Erinnerungskristall | Cristal de memoria | Kryształ pamięci |
| item.crystal.desc | Descripción de objeto; <b> marca la palabra que hay que destacar | 140 | Holds one <b>memory</b> of the drowned city. Sells well in the village. | Contient un <b>souvenir</b> de la cité engloutie. Se vend bien au village. | Enthält eine <b>Erinnerung</b> an die versunkene Stadt. Verkauft sich gut im Dorf. | Guarda un <b>recuerdo</b> de la ciudad sumergida. Se vende bien en el pueblo. | Zawiera jedno <b>wspomnienie</b> zatopionego miasta. Dobrze się sprzedaje w wiosce. |
| quest.horn.title | Título de misión en el diario | 32 | Before the horn | Avant la corne | Vor dem Horn | Antes del cuerno | Zanim zabrzmi róg |
| quest.horn.goal | Objetivo de misión en el diario; {count} es un número | 60 | Crystals to bring up before the horn: {count} | Cristaux à remonter avant la corne : {count} | Kristalle, die vor dem Horn nach oben müssen: {count} | Cristales que subir antes del cuerno: {count} | Kryształy do wyniesienia, zanim zabrzmi róg: {count} |
| ui.save.done | Mensaje tras guardar, visible dos segundos | 40 | Game saved | Partie sauvegardée | Spiel gespeichert | Partida guardada | Gra zapisana |
| ui.tide.low | Etiqueta del indicador de marea | 16 | Low tide | Marée basse | Ebbe | Marea baja | Odpływ |
| ui.tide.high | Etiqueta del indicador de marea | 16 | High tide | Marée haute | Flut | Marea alta | Przypływ |

### Glosario

**Responsable:** [nombre] · **Estado:** borrador · **Última revisión:** [fecha]

_Añade un término la primera vez que un traductor pregunte por él. Una palabra traducida de dos maneras confunde a los jugadores y duplica las consultas al soporte._

#### Términos

| Término (en) | fr | de | es | pl | Notas |
| --- | --- | --- | --- | --- | --- |
| tide | marée | Gezeiten | marea | pływ | El nivel del agua, que mueve todos los sistemas |
| salt | sel | Salz | sal | sól | El recurso común |
| memory crystal | cristal de mémoire | Erinnerungskristall | cristal de memoria | kryształ pamięci | Siempre el nombre completo, nunca “cristal” a secas en la tienda |
| horn | corne | Horn | cuerno | róg | La señal dos minutos antes de que cambie la marea |
| [término] | [...] | [...] | [...] | [...] | [...] |

#### No traducir nunca

- Saltmarrow, el nombre del juego
- [Nombres de personajes y lugares que se quedan como están]
- [Nombres de plataformas y marcas]

Ver también: [Tabla de localización](https://nodary.ai/es/templates/localization-string-table#doc-overview) · [Cadenas](https://nodary.ai/es/templates/localization-string-table#doc-strings) · [Guía de estilo](https://nodary.ai/es/templates/localization-string-table#doc-style)

### Guía de estilo

**Responsable:** [nombre] · **Estado:** borrador · **Última revisión:** [fecha]

#### Voz

_Tres palabras para la voz del juego, y cómo no suena nunca._

- Voz: [...]
- Nunca: [...]

_Ejemplo (Saltmarrow, un juego de muestra): Tranquila y algo anticuada, como la guardiana de un archivo. Frases cortas. Nada de jerga moderna._

#### Idioma por idioma

| Idioma | Cómo se dirige al jugador | Tipografía | Notas |
| --- | --- | --- | --- |
| Francés (fr) | [tu o vous] | Un espacio indivisible antes de : ; ! ? y dentro de « » | [...] |
| Alemán (de) | [du o Sie] | Comillas „…“, sustantivos con mayúscula | A menudo más largo que el inglés: revisa max_length primero |
| Español (es) | [tú o usted] | ¿ y ¡ de apertura | [...] |
| Polaco (pl) | [ty, o Pan y Pani] | Comillas „…”, tres formas de plural | Las palabras junto al nombre del jugador cambian con el género |
| [Idioma] | [...] | [...] | [...] |

#### Longitud

_Deja espacio: las traducciones desde el inglés suelen ser más largas, hasta un tercio en algunos idiomas. Fija max_length según el espacio en pantalla, no según el inglés._

#### Plurales y números

_Los idiomas cuentan distinto: el polaco tiene tres formas de plural donde el inglés tiene dos. Pon el número tras una etiqueta (Sal: {count}) o usa el sistema de plurales de tu motor, y da formato a números y fechas en cada idioma._

Ver también: [Tabla de localización](https://nodary.ai/es/templates/localization-string-table#doc-overview) · [Glosario](https://nodary.ai/es/templates/localization-string-table#doc-glossary) · [Cadenas](https://nodary.ai/es/templates/localization-string-table#doc-strings)

## Cómo usarla

### Sustituye las cadenas de ejemplo

Mantén las columnas y la forma de nombrar las claves, y pon tus propias cadenas. Da a cada cadena un contexto y un límite de longitud antes de enviarla a traducir.

### Escribe pronto el glosario

Añade cada término la primera vez que un traductor pregunte por él, con su traducción en cada idioma. Una palabra traducida de dos maneras confunde a los jugadores y duplica las consultas al soporte.

### Acordad el estilo de cada idioma

Decide cómo se dirige cada idioma al jugador y sus reglas tipográficas antes de empezar a traducir. Cambiarlo después obliga a releer cada cadena.

### Congela la fuente antes de enviarla

Envía las cadenas a traducir cuando su inglés sea definitivo. Si una fuente cambia después, sus traducciones hay que volver a revisarlas.

## Impórtala en Nodary y úsala como tabla de traducción

Nodary es un espacio de trabajo nativo de IA donde los documentos de un equipo se enlazan en vez de amontonarse. Importa el .zip y el CSV llega como una hoja debajo de la visión general, con el glosario y la guía de estilo al lado. En la hoja, «Tabla de traducción» lee los roles en los encabezados (key, context, max_length y una columna por idioma), comprueba la longitud y las variables de cada traducción, da un estado a cada una, marca una traducción como desactualizada cuando cambia su fuente y exporta archivos para Unity, Unreal y Godot: CSV, JSON, gettext .po y XLIFF.

1. Abre el mapa de un proyecto y elige «Importar».
2. Elige la pestaña «Carpeta o ZIP», después «Elegir un ZIP», selecciona el archivo e importa.
3. Abre «Cadenas», elige «Tabla de traducción», revisa los roles leídos en los encabezados y después «Usar como tabla de traducción».

El plan Free admite diez documentos por espacio de trabajo, contando la página del propio proyecto: los cuatro de la plantilla caben de sobra. La columna fuente es el inglés: si tu juego está escrito en otro idioma, convierte esa columna en la fuente cuando Nodary muestre los roles.

## Mantener una tabla de cadenas con la que puedan trabajar los traductores

Una tabla de cadenas falla cuando los traductores tienen que adivinar qué significa una línea o cuánto espacio tiene, o cuando un texto cambia después de traducirse y nadie lo nota. Estos hábitos evitan las tres cosas.

### Da contexto a cada cadena

Quién lo dice, dónde aparece, a qué responde. “Open” es un verbo en una puerta y un adjetivo en una tienda: solo el contexto lo dice.

### Fija la longitud desde la pantalla

Mide cuántos caracteres caben en el botón, la línea o el bocadillo, y escribe ese límite, no la longitud del inglés.

### Nunca montes frases a trozos

Pegar “Has encontrado” y “3 cristales” en el código rompe el orden y la gramática en la mayoría de idiomas. Da a cada frase su clave, con variables.

### Mantén las variables intactas

Cada traducción conserva cada {variable} y cada etiqueta de su fuente. Un {count} perdido muestra un hueco al jugador, o cuelga el juego.

### Una clave, un significado

No reutilices nunca una clave para otro texto. Añade una clave nueva y quita la antigua cuando nada la use.

### Congela la fuente antes de enviarla

Traduce texto definitivo. Si una fuente cambia aun así, marca sus traducciones como desactualizadas para que se revisen otra vez.

## Preguntas sobre la tabla de localización

### ¿Qué es una tabla de localización?

Una tabla de localización (o tabla de cadenas) contiene cada texto que muestra un juego, una fila por cadena: una clave que usa el código, el texto fuente, notas para los traductores, un límite de longitud y una columna por idioma. El juego carga el texto por su clave en el idioma del jugador, así el texto cambia y se traduce sin tocar el código.

### ¿Qué columnas debe tener una tabla de cadenas?

Como mínimo una clave y el texto fuente, y después una columna por idioma. Una columna de contexto y otra de longitud máxima ahorran la mayoría de preguntas de los traductores. Esta plantilla tiene los cinco tipos, con el inglés como fuente y francés, alemán, español y polaco.

### ¿Cómo nombro las claves?

Según dónde vive el texto, de lo general a lo particular, como menu.play o hud.tide.warning: en minúsculas, con puntos entre las partes. Así las cadenas relacionadas quedan juntas, y una clave dice dónde buscar en el juego.

### ¿Cómo gestiono los plurales?

Los idiomas cuentan distinto: el polaco tiene tres formas de plural donde el inglés tiene dos. Pon el número tras una etiqueta, como “Sal: {count}”, o usa el sistema de plurales de tu motor con un texto por forma.

### ¿Cómo abro el CSV en Excel?

Google Sheets, LibreOffice Calc, Numbers y Nodary lo abren tal cual. Excel solo lo abre con doble clic si el separador de listas del ordenador es la coma; con la configuración española es el punto y coma, y cada fila acaba en una sola columna. Impórtalo en su lugar: en la pestaña Datos, elige importar desde texto/CSV, selecciona el archivo, pon UTF-8 como origen del archivo y Coma como delimitador, y cárgalo.

### ¿Leerán Unity, Unreal o Godot este CSV?

El CSV de la plantilla está pensado para hojas de cálculo y para la importación de Nodary. Cada motor lee su propio formato: desde la misma tabla, la tabla de traducción de Nodary exporta CSV para Godot y Unity, gettext .po para Unreal y Godot, JSON para la mayoría de motores y XLIFF para herramientas de traducción.

### ¿Puedo añadir idiomas?

Sí. Añade una columna con el código del idioma, como ja o pt-BR. Nodary reconoce códigos y nombres de idiomas en los encabezados, y su tabla de traducción también puede añadir una columna para un idioma.

La página: https://nodary.ai/es/templates/localization-string-table
