mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-14 19:27:05 -04:00
Merge pull request #996 from diegozpy/i18n/es-panels
# Conflicts: # crates/ui-egui/src/i18n/ui.rs
This commit is contained in:
commit
8a256a67ef
1 file changed
+572
-2
@@ -19,7 +19,7 @@ use std::fmt::Display;
|
||||
use std::sync::OnceLock;
|
||||
|
||||
thread_local! {
|
||||
/// The resolved interface language ("en", "ja", "zh-hans", "zh-hant", "uk", "pt-br", "cs"); "en" until the first
|
||||
/// The resolved interface language ("en", "ja", "zh-hans", "zh-hant", "uk", "pt-br", "cs", "es"); "en" until the first
|
||||
/// frame sets it.
|
||||
static CURRENT: Cell<&'static str> = const { Cell::new("en") };
|
||||
}
|
||||
@@ -46,6 +46,7 @@ fn catalog(language: &str) -> Option<&'static Index> {
|
||||
static UK: OnceLock<Index> = OnceLock::new();
|
||||
static PT_BR: OnceLock<Index> = OnceLock::new();
|
||||
static CS: OnceLock<Index> = OnceLock::new();
|
||||
static ES: OnceLock<Index> = OnceLock::new();
|
||||
let (index, rows) = match language {
|
||||
"ja" => (&JA, JAPANESE),
|
||||
"zh-hans" => (&HANS, SIMPLIFIED_CHINESE),
|
||||
@@ -53,6 +54,7 @@ fn catalog(language: &str) -> Option<&'static Index> {
|
||||
"uk" => (&UK, UKRAINIAN),
|
||||
"pt-br" => (&PT_BR, PORTUGUESE),
|
||||
"cs" => (&CS, CZECH),
|
||||
"es" => (&ES, SPANISH),
|
||||
_ => return None,
|
||||
};
|
||||
Some(index.get_or_init(|| rows.iter().copied().collect()))
|
||||
@@ -3607,6 +3609,557 @@ const CZECH: &[(&str, &str)] = &[
|
||||
("Per Layer", "Na vrstvu"),
|
||||
];
|
||||
|
||||
/// Spanish: neutral, tú, sentence case; the same source strings as the Chinese catalogs, in the same
|
||||
/// order. Terms follow the Spanish menu catalog (composición, material de archivo, cola de procesamiento,
|
||||
/// ajuste preestablecido, método abreviado). Written from the English source.
|
||||
const SPANISH: &[(&str, &str)] = &[
|
||||
("Appearance Settings…", "Ajustes de apariencia…"),
|
||||
("Add to favorites", "Añadir a favoritos"),
|
||||
("Remove from favorites", "Quitar de favoritos"),
|
||||
(" OK ", " Aceptar "),
|
||||
(" Delete ", " Eliminar "),
|
||||
(" Open Auto-Save ", " Abrir guardado automático "),
|
||||
("(missing)", "(ausente)"),
|
||||
("360 View Orientation", "Orientación de la vista 360°"),
|
||||
("3:2 Pulldown: {}", "Pulldown 3:2: {}"),
|
||||
(
|
||||
"A clean-room, open-source compositor for motion graphics and visual effects: native on macOS, Windows and Linux, and in the browser. Part of the ArtCraft family of creative apps.",
|
||||
"Un compositor de código abierto y desarrollado en sala limpia para gráficos en movimiento y efectos visuales: nativo en macOS, Windows y Linux, y en el navegador. Forma parte de la familia de aplicaciones creativas ArtCraft.",
|
||||
),
|
||||
("About EffectCraft", "Acerca de EffectCraft"),
|
||||
("About...", "Acerca de..."),
|
||||
("Active", "Activo"),
|
||||
("Active Camera", "Cámara activa"),
|
||||
("Alpha", "Alfa"),
|
||||
("Adapt Feature On Every Frame", "Adaptar la característica en cada fotograma"),
|
||||
("Adaptive Sample Limit:", "Límite de muestras adaptativas:"),
|
||||
("Add Animator", "Añadir animador"),
|
||||
("Add Comment", "Añadir comentario"),
|
||||
("Add Formatting", "Añadir formato"),
|
||||
("Add Group", "Añadir grupo"),
|
||||
("Add Mirror", "Añadir espejo"),
|
||||
("Add Selected As", "Añadir seleccionados como"),
|
||||
("Add a comment", "Añadir un comentario"),
|
||||
("Add a shape, fill, stroke or path operation", "Añadir una forma, relleno, trazo u operación de trazado"),
|
||||
("Add to Composition", "Añadir a la composición"),
|
||||
("Add to Favorites", "Añadir a favoritos"),
|
||||
("Add:", "Añadir:"),
|
||||
("Adjust Exposure (stops)", "Ajustar exposición (pasos)"),
|
||||
(
|
||||
"Adjust composition duration to the time span of the selected layers",
|
||||
"Ajustar la duración de la composición al intervalo de tiempo de las capas seleccionadas",
|
||||
),
|
||||
("Advanced 3D", "3D avanzado"),
|
||||
("Align Layers to:", "Alinear capas con:"),
|
||||
("All six face cameras turn together; the scene is not changed.", "Las seis cámaras de las caras giran juntas; la escena no cambia."),
|
||||
("Anchor:", "Punto de anclaje:"),
|
||||
("Aperture", "Abertura"),
|
||||
("Appearance Mode", "Modo de apariencia"),
|
||||
("Appearance Mode: {}", "Modo de apariencia: {}"),
|
||||
("Apply Dimensions:", "Aplicar dimensiones:"),
|
||||
("Apply Motion To:", "Aplicar movimiento a:"),
|
||||
("Arrange", "Organizar"),
|
||||
("Assign", "Asignar"),
|
||||
("Auto", "Automático"),
|
||||
("Auto-saves", "Guardados automáticos"),
|
||||
("Back", "Atrás"),
|
||||
("Background Color:", "Color de fondo:"),
|
||||
("Blend Mode:", "Modo de fusión:"),
|
||||
("Blending Mode", "Modo de fusión"),
|
||||
("Blur", "Desenfoque"),
|
||||
("Blur Level", "Nivel de desenfoque"),
|
||||
("Boundary", "Límite"),
|
||||
("Browser Storage", "Almacenamiento del navegador"),
|
||||
("Browse…", "Examinar…"),
|
||||
("Brush Dynamics", "Dinámica del pincel"),
|
||||
("Caching frames…", "Almacenando fotogramas en caché…"),
|
||||
("Cancel", "Cancelar"),
|
||||
("Casts Shadows", "Proyecta sombras"),
|
||||
("Change Renderer…", "Cambiar motor de procesamiento…"),
|
||||
(
|
||||
"Changing a shortcut creates a custom preset; the default stays as it is.",
|
||||
"Cambiar un método abreviado crea un ajuste preestablecido personalizado; el predeterminado no cambia.",
|
||||
),
|
||||
("Channel", "Canal"),
|
||||
("Channel:", "Canal:"),
|
||||
("Chapter:", "Capítulo:"),
|
||||
("Choose...", "Elegir..."),
|
||||
("Classic 3D", "3D clásico"),
|
||||
("Clear", "Borrar"),
|
||||
("Clear list", "Borrar lista"),
|
||||
("Click a key to see its commands.", "Haz clic en una tecla para ver sus comandos."),
|
||||
(
|
||||
"Click above the bar to add an opacity stop, below it to add a color stop.",
|
||||
"Haz clic encima de la barra para añadir una parada de opacidad; debajo, para añadir una parada de color.",
|
||||
),
|
||||
("Click adds a point (½ height = no change)", "Al hacer clic se añade un punto (½ altura = sin cambios)"),
|
||||
("Click adds a point; drag one off to remove", "Al hacer clic se añade un punto; arrastra uno fuera para quitarlo"),
|
||||
("Click to make this viewer active", "Haz clic para activar este visor"),
|
||||
("Click to reveal the expression in the timeline", "Haz clic para mostrar la expresión en la cronología"),
|
||||
("Click to show the active composition here", "Haz clic para mostrar la composición activa aquí"),
|
||||
("Click, then click in the Composition panel", "Haz clic y, a continuación, haz clic en el panel Composición"),
|
||||
("Clone Options", "Opciones de clonación"),
|
||||
("Clone Source Overlay:", "Superposición del origen del clon:"),
|
||||
("Close", "Cerrar"),
|
||||
("Close Panel", "Cerrar panel"),
|
||||
("Close tutorial", "Cerrar tutorial"),
|
||||
("Color", "Color"),
|
||||
("Color Depth: {}", "Profundidad de color: {}"),
|
||||
("Color:", "Color:"),
|
||||
("Colour map", "Mapa de color"),
|
||||
("Columns", "Columnas"),
|
||||
("Comment:", "Comentario:"),
|
||||
("Community", "Comunidad"),
|
||||
("Composition", "Composición"),
|
||||
("Composition Mini-Flowchart", "Minidiagrama de flujo de la composición"),
|
||||
("Composition Name:", "Nombre de la composición:"),
|
||||
("Composition Settings ▸ 3D Renderer", "Configuración de la composición ▸ Motor de procesamiento 3D"),
|
||||
("Composition Settings…", "Configuración de la composición…"),
|
||||
("Composition marker bin: drag a marker to the time ruler", "Contenedor de marcadores de composición: arrastra un marcador a la regla de tiempo"),
|
||||
("Cone Angle", "Ángulo del cono"),
|
||||
("Cone Feather", "Calado del cono"),
|
||||
("Constrain Proportions", "Restringir proporciones"),
|
||||
("Continuous (Lock Outgoing to Incoming)", "Continuo (igualar la velocidad de salida a la de entrada)"),
|
||||
("Cue Point", "Punto de referencia"),
|
||||
("Current Render", "Procesamiento actual"),
|
||||
("Dark", "Oscuro"),
|
||||
("Dark Theme", "Tema oscuro"),
|
||||
("Darker", "Más oscuro"),
|
||||
("Default Output:", "Salida predeterminada:"),
|
||||
("Default: {}", "Predeterminado: {}"),
|
||||
("Defaults", "Predeterminados"),
|
||||
("Delete", "Eliminar"),
|
||||
("Delete Selected Points", "Eliminar puntos seleccionados"),
|
||||
("Delete selected project items", "Eliminar elementos del proyecto seleccionados"),
|
||||
("Delete this template", "Eliminar esta plantilla"),
|
||||
("Depth of Field", "Profundidad de campo"),
|
||||
("Discord", "Discord"),
|
||||
("Distribute Layers:", "Distribuir capas:"),
|
||||
("Don't Recover", "No recuperar"),
|
||||
("Don't Save", "No guardar"),
|
||||
("Double-click a layer to open it in the Layer panel", "Haz doble clic en una capa para abrirla en el panel Capa"),
|
||||
("Double-click footage in the Project panel to open it here", "Haz doble clic en el material de archivo del panel Proyecto para abrirlo aquí"),
|
||||
("Double-click to edit the comment", "Haz doble clic para editar el comentario"),
|
||||
("Download", "Descargar"),
|
||||
(
|
||||
"Drag properties here from the timeline,\nor use Animation > Add Property to Essential Graphics.",
|
||||
"Arrastra propiedades aquí desde la cronología,\no usa Animación > Añadir propiedad a Gráficos esenciales.",
|
||||
),
|
||||
("Drag to change", "Arrastra para cambiar"),
|
||||
("Drag to create a guide", "Arrastra para crear una guía"),
|
||||
("Drag to slip the source", "Arrastra para deslizar el origen"),
|
||||
("Drop Frame", "Drop frame"),
|
||||
("Duplicate", "Duplicar"),
|
||||
("Duration:", "Duración:"),
|
||||
("Edit Gradient…", "Editar degradado…"),
|
||||
("Edit Target: {}", "Destino de la edición: {}"),
|
||||
("Edit in the Timeline", "Editar en la cronología"),
|
||||
("EffectCraft didn't quit normally last time.", "EffectCraft no se cerró normalmente la última vez."),
|
||||
("Effects & Presets options", "Opciones de Efectos y ajustes preestablecidos"),
|
||||
("Effects: {}", "Efectos: {}"),
|
||||
("Empty folder", "Carpeta vacía"),
|
||||
("Enable Depth of Field", "Habilitar profundidad de campo"),
|
||||
("Enable Expression", "Habilitar expresión"),
|
||||
("Enhance", "Mejorar"),
|
||||
("Essential Properties — {}", "Propiedades esenciales — {}"),
|
||||
("Event", "Evento"),
|
||||
("Export Template…", "Exportar plantilla…"),
|
||||
("Export...", "Exportar..."),
|
||||
("Expression Language Menu", "Menú de lenguaje de expresiones"),
|
||||
("Expression pick whip: drag onto a property", "Selector de expresión: arrastra hasta una propiedad"),
|
||||
("Expression:", "Expresión:"),
|
||||
("Eyedropper: click, then click in the Composition panel", "Cuentagotas: haz clic y, a continuación, haz clic en el panel Composición"),
|
||||
("Falloff", "Atenuación"),
|
||||
("Falloff Distance", "Distancia de atenuación"),
|
||||
("Favorites", "Favoritos"),
|
||||
("Field Render: {}", "Procesamiento de campos: {}"),
|
||||
("Figures", "Cifras"),
|
||||
("Fill Target", "Destino del relleno"),
|
||||
("Finished", "Finalizado"),
|
||||
("Flowchart: {}", "Diagrama de flujo: {}"),
|
||||
("Focus Distance", "Distancia de enfoque"),
|
||||
("Follow Feature Rotation and Scale", "Seguir la rotación y la escala de la característica"),
|
||||
("Footage: {}", "Material de archivo: {}"),
|
||||
("Format: {}", "Formato: {}"),
|
||||
("Frame Aspect Ratio: {}", "Relación de aspecto del fotograma: {}"),
|
||||
("Frame Blending: {}", "Fusión de fotogramas: {}"),
|
||||
("Frame Rate:", "Velocidad de fotogramas:"),
|
||||
("Frame Render Time {}ms", "Tiempo de procesamiento del fotograma {}ms"),
|
||||
("Frame Target:", "Marco de destino:"),
|
||||
("Freeze", "Congelar"),
|
||||
("Grab bag", "Varios"),
|
||||
("Gradient Editor", "Editor de degradados"),
|
||||
("Grid", "Cuadrícula"),
|
||||
("Guide Layers: {}", "Capas de guía: {}"),
|
||||
("Guides", "Guías"),
|
||||
("Height:", "Altura:"),
|
||||
("Hide This", "Ocultar esto"),
|
||||
("Histogram", "Histograma"),
|
||||
("Hold In Place", "Mantener en el lugar"),
|
||||
("Home", "Inicio"),
|
||||
("If Confidence is Below", "Si la confianza es inferior a"),
|
||||
("Import", "Importar"),
|
||||
("Import and Add to Composition", "Importar y añadir a la composición"),
|
||||
("Import...", "Importar..."),
|
||||
("Imported media", "Medios importados"),
|
||||
("Influence:", "Influencia:"),
|
||||
("Install from File…", "Instalar desde archivo…"),
|
||||
("Intensity", "Intensidad"),
|
||||
("Inverted", "Invertida"),
|
||||
("Join the ArtCraft community on Discord", "Únete a la comunidad de ArtCraft en Discord"),
|
||||
("Key: {}", "Tecla: {}"),
|
||||
("LEARN", "APRENDER"),
|
||||
("Label", "Etiqueta"),
|
||||
("Label Colors and Names:", "Colores y nombres de etiquetas:"),
|
||||
("Label:", "Etiqueta:"),
|
||||
("Latest auto-save: {}", "Último guardado automático: {}"),
|
||||
("Layer", "Capa"),
|
||||
("Layer controls", "Controles de capa"),
|
||||
("Layer {}", "Capa {}"),
|
||||
("Layer:", "Capa:"),
|
||||
("Layer: {}", "Capa: {}"),
|
||||
("Learn", "Aprender"),
|
||||
("Leave all attributes in \"{}\"", "Dejar todos los atributos en \"{}\""),
|
||||
("Licence: {}", "Licencia: {}"),
|
||||
("Ligatures", "Ligaduras"),
|
||||
("Light", "Claro"),
|
||||
("Light Theme", "Tema claro"),
|
||||
("Light Type", "Tipo de luz"),
|
||||
("Lighter", "Más claro"),
|
||||
("Link Selected Property", "Vincular propiedad seleccionada"),
|
||||
("Location:", "Ubicación:"),
|
||||
("Lock Aspect Ratio to {}", "Bloquear relación de aspecto en {}"),
|
||||
("Lock to Zoom", "Bloquear al zoom"),
|
||||
("Locked: {} — {}", "Bloqueado: {} — {}"),
|
||||
("Log:", "Registro:"),
|
||||
("Loop (Trace Path)", "Bucle (trazar trazado)"),
|
||||
("MIT OR Apache-2.0 • Fonts: Inter, JetBrains Mono (OFL)", "MIT OR Apache-2.0 • Fuentes: Inter, JetBrains Mono (OFL)"),
|
||||
("Magnification ratio popup", "Menú de proporción de ampliación"),
|
||||
("Make Comp Size", "Ajustar al tamaño de la composición"),
|
||||
("Masks", "Máscaras"),
|
||||
("Maximize Panel", "Maximizar panel"),
|
||||
("Media Replacement", "Sustitución de medios"),
|
||||
("Mesh:", "Malla:"),
|
||||
("Diameter:", "Diámetro:"),
|
||||
("Method Used: {} Average Error: {} pixels", "Método usado: {} Error promedio: {} píxeles"),
|
||||
("Models folder: {}", "Carpeta de modelos: {}"),
|
||||
("Modifiers:", "Modificadores:"),
|
||||
("More", "Más"),
|
||||
("More ArtCraft apps", "Más aplicaciones de ArtCraft"),
|
||||
("More tutorials", "Más tutoriales"),
|
||||
("Motion Blur", "Desenfoque de movimiento"),
|
||||
("Motion Blur: {}", "Desenfoque de movimiento: {}"),
|
||||
("Motion Sketch: drag to record", "Boceto de movimiento: arrastra para grabar"),
|
||||
("Move Down", "Mover hacia abajo"),
|
||||
("Move Up", "Mover hacia arriba"),
|
||||
("Move to Project Root", "Mover a la raíz del proyecto"),
|
||||
("Name", "Nombre"),
|
||||
("Name:", "Nombre:"),
|
||||
("Navigation", "Navegación"),
|
||||
("New", "Nuevo"),
|
||||
("New Comp from Selection", "Nueva composición a partir de la selección"),
|
||||
("New Duration:", "Nueva duración:"),
|
||||
("New composition name:", "Nombre de la nueva composición:"),
|
||||
("New from Render Queue item:", "Nuevo a partir del elemento de la cola de procesamiento:"),
|
||||
("New from Template", "Nuevo a partir de plantilla"),
|
||||
("Next", "Siguiente"),
|
||||
("Nice work. Pick another tutorial on the Home screen's Learn tab.", "Buen trabajo. Elige otro tutorial en la pestaña Aprender de la pantalla de inicio."),
|
||||
(
|
||||
"No VR environments yet. Create one with Composition ▸ VR ▸ Create VR Environment…",
|
||||
"Aún no hay entornos de RV. Crea uno con Composición ▸ RV ▸ Crear entorno de RV…",
|
||||
),
|
||||
("No audio layer selected", "No hay ninguna capa de audio seleccionada"),
|
||||
("No background jobs running", "No hay tareas en segundo plano en ejecución"),
|
||||
("No composition markers", "No hay marcadores de composición"),
|
||||
("No contributor data was built into this copy.", "No se incluyeron datos de colaboradores en esta copia."),
|
||||
(
|
||||
"No device list from this host; the system default output is used.",
|
||||
"Este host no proporcionó una lista de dispositivos; se usa la salida predeterminada del sistema.",
|
||||
),
|
||||
("No layer selected", "No hay ninguna capa seleccionada"),
|
||||
("No matching effects or presets", "No hay efectos ni ajustes preestablecidos que coincidan"),
|
||||
("No matching fonts", "No hay fuentes coincidentes"),
|
||||
("Variable fonts only", "Solo fuentes variables"),
|
||||
("No model credits were built into this copy.", "No se incluyeron créditos de modelos en esta copia."),
|
||||
("No nested compositions", "No hay composiciones anidadas"),
|
||||
("No shortcut", "Sin método abreviado"),
|
||||
("No unlocked layer selected", "No hay ninguna capa desbloqueada seleccionada"),
|
||||
("No video", "Sin vídeo"),
|
||||
("None", "Ninguno"),
|
||||
("Not applied: tick it in the list to add it.", "No aplicado: márcalo en la lista para añadirlo."),
|
||||
("Not assigned", "Sin asignar"),
|
||||
("Note: Shadows are only cast from layers with Cast Shadows enabled.", "Nota: Las sombras solo se proyectan desde capas con Proyectar sombras activado."),
|
||||
("Notify", "Notificar"),
|
||||
("OK", "Aceptar"),
|
||||
("Offset:", "Desplazamiento:"),
|
||||
("On ({}) stop:", "Al parar ({}):"),
|
||||
("One-Node Camera", "Cámara de un nodo"),
|
||||
("Opacity:", "Opacidad:"),
|
||||
("Open Composition", "Abrir composición"),
|
||||
("Open Last Saved Project", "Abrir el último proyecto guardado"),
|
||||
("Open New Composition", "Abrir nueva composición"),
|
||||
("Open Output", "Abrir salida"),
|
||||
("Open a composition to build Essential Graphics", "Abre una composición para crear Gráficos esenciales"),
|
||||
("Open a composition to see its scopes", "Abre una composición para ver sus ámbitos"),
|
||||
("Open a composition to track motion.", "Abre una composición para seguir movimiento."),
|
||||
("Opus Tuning: {}", "Ajuste de Opus: {}"),
|
||||
("Original Duration:", "Duración original:"),
|
||||
("Output Cycle: {}", "Ciclo de salida: {}"),
|
||||
("Output To:", "Salida a:"),
|
||||
("Overlay", "Superposición"),
|
||||
("Parameter Name:", "Nombre del parámetro:"),
|
||||
("Parent pick whip: drag onto a layer", "Selector de capa padre: arrastra hasta una capa"),
|
||||
("Pixel Aspect Ratio:", "Relación de aspecto de píxel:"),
|
||||
("Playing on Video Preview", "Reproduciendo en la previsualización de vídeo"),
|
||||
("Post-Render Action: {}", "Acción posterior al procesamiento: {}"),
|
||||
("Preserve frame rate when nested or in render queue", "Conservar la velocidad de fotogramas cuando se anida o está en la cola de procesamiento"),
|
||||
("Preserve resolution when nested", "Conservar la resolución al anidar"),
|
||||
("Preset", "Ajuste preestablecido"),
|
||||
("Preset:", "Ajuste preestablecido:"),
|
||||
("Presets", "Ajustes preestablecidos"),
|
||||
("Previous", "Anterior"),
|
||||
("Primary:", "Principal:"),
|
||||
("Process Before Match", "Procesar antes de buscar coincidencias"),
|
||||
("Profile: {}", "Perfil: {}"),
|
||||
(
|
||||
"Project color depth: click to cycle 8/16/32 bpc, Alt-click for Project Settings",
|
||||
"Profundidad de color del proyecto: haz clic para alternar entre 8/16/32 bpc; Alt+clic para la configuración del proyecto",
|
||||
),
|
||||
("Project: {}", "Proyecto: {}"),
|
||||
("Projects", "Proyectos"),
|
||||
("Property pick whip: drag onto a property", "Selector de propiedad: arrastra hasta una propiedad"),
|
||||
("Protected Region", "Región protegida"),
|
||||
("Proxy Use: {}", "Uso de proxy: {}"),
|
||||
("Push All to Comp", "Enviar todo a la composición"),
|
||||
("RGB", "RGB"),
|
||||
("Radius", "Radio"),
|
||||
("Rate Control: {}", "Control de tasa: {}"),
|
||||
("Recent", "Recientes"),
|
||||
("Recording", "Grabando"),
|
||||
("Remove", "Quitar"),
|
||||
("Rename", "Cambiar nombre"),
|
||||
("Render: {} ms • UI {} fps{}", "Procesamiento: {} ms • IU {} fps{}"),
|
||||
("Renderer:", "Motor de procesamiento:"),
|
||||
("Request Persistent Storage", "Solicitar almacenamiento persistente"),
|
||||
("Reset", "Restablecer"),
|
||||
("Reset Labels", "Restablecer etiquetas"),
|
||||
("Reset Preset", "Restablecer ajuste preestablecido"),
|
||||
("Reset to Default", "Restablecer valores predeterminados"),
|
||||
("Reset to Saved Layout", "Restablecer al diseño guardado"),
|
||||
("Resolution/Down Sample Factor Popup", "Menú emergente de resolución/factor de reducción de muestreo"),
|
||||
("Restore Panel Size", "Restaurar tamaño del panel"),
|
||||
("Reverse the order", "Invertir el orden"),
|
||||
("Revert All", "Revertir todo"),
|
||||
("Roman Hanging Punctuation", "Puntuación colgante latina"),
|
||||
("Roving:", "Itinerante:"),
|
||||
("Ruler zero point (drag to move, double-click to reset)", "Punto cero de la regla (arrastra para mover, haz doble clic para restablecer)"),
|
||||
("Rulers", "Reglas"),
|
||||
("Run", "Ejecutar"),
|
||||
("Sample Format: {}", "Formato de muestra: {}"),
|
||||
("Samples Per Frame:", "Muestras por fotograma:"),
|
||||
("Save from #{}", "Guardar desde #{}"),
|
||||
("Saved {}", "Guardado {}"),
|
||||
("Script… (⌘/Ctrl+Enter runs)", "Script… (⌘/Ctrl+Enter ejecuta)"),
|
||||
("Search commands or shortcuts", "Buscar comandos o métodos abreviados"),
|
||||
("Select", "Seleccionar"),
|
||||
("Select a command to change its shortcut.", "Selecciona un comando para cambiar su método abreviado."),
|
||||
("Select a layer to see its effects", "Selecciona una capa para ver sus efectos"),
|
||||
("Select a layer to see its properties", "Selecciona una capa para ver sus propiedades"),
|
||||
("({}) Selected Objects", "({}) objetos seleccionados"),
|
||||
(
|
||||
"Select a layer with a mask or shape path (or the path property), or Puppet pins.",
|
||||
"Selecciona una capa con una máscara o un trazado de forma (o la propiedad de trazado), o pines de marioneta.",
|
||||
),
|
||||
("Select a text layer", "Selecciona una capa de texto"),
|
||||
("Select an item in the Project panel", "Selecciona un elemento en el panel Proyecto"),
|
||||
("Select animated properties to show them in the Graph Editor", "Selecciona propiedades animadas para mostrarlas en el editor de gráficos"),
|
||||
(
|
||||
"Select the leader pin, then Shift-click the pins that should trail it (hair, cloth, tails)",
|
||||
"Selecciona el pin guía y luego haz Mayús+clic en los pines que deben seguirlo (pelo, tela, colas)",
|
||||
),
|
||||
("Set Ground Plane and Origin", "Definir plano de suelo y origen"),
|
||||
("Set Paint Colors to Black and White (D)", "Definir colores de pintura como negro y blanco (D)"),
|
||||
("Settings", "Ajustes"),
|
||||
("Settings Name:", "Nombre de los ajustes:"),
|
||||
("Shadow Darkness", "Oscuridad de la sombra"),
|
||||
("Shadow Diffusion", "Difusión de la sombra"),
|
||||
("Shadows", "Sombras"),
|
||||
("Shape…", "Forma…"),
|
||||
("Show", "Mostrar"),
|
||||
("Show Layer Name", "Mostrar nombre de la capa"),
|
||||
("Show Source Name", "Mostrar nombre del origen"),
|
||||
("Show me", "Mostrar cómo hacerlo"),
|
||||
("Show:", "Mostrar:"),
|
||||
("Shutter Angle:", "Ángulo del obturador:"),
|
||||
("Shutter Phase:", "Fase del obturador:"),
|
||||
("Size", "Tamaño"),
|
||||
("Skip", "Omitir"),
|
||||
("Snapping", "Ajuste"),
|
||||
("Snapping options", "Opciones de ajuste"),
|
||||
("Snapshot", "Instantánea"),
|
||||
("Solo Supported Properties", "Mostrar solo las propiedades compatibles"),
|
||||
("Solo Switches: {}", "Conmutadores de solo: {}"),
|
||||
("Sort", "Ordenar"),
|
||||
("Spacing:", "Espaciado:"),
|
||||
("Spatial Interpolation:", "Interpolación espacial:"),
|
||||
("Speed:", "Velocidad:"),
|
||||
("Start Timecode:", "Código de tiempo inicial:"),
|
||||
("Start: {} Duration: {}", "Inicio: {} Duración: {}"),
|
||||
("Step {} of {}: {}", "Paso {} de {}: {}"),
|
||||
("Stop", "Detener"),
|
||||
("Stop {} at {}°", "Parada {} en {}°"),
|
||||
("Stored in: {}", "Guardado en: {}"),
|
||||
("Stretch", "Estirar"),
|
||||
("Stretch Factor:", "Factor de estiramiento:"),
|
||||
("Stylistic Sets", "Conjuntos estilísticos"),
|
||||
("Subpixel Positioning", "Posicionamiento de subpíxeles"),
|
||||
("Swap Paint Colors (X)", "Intercambiar colores de pintura (X)"),
|
||||
("Sync with System", "Sincronizar con el sistema"),
|
||||
("System Default", "Predeterminado del sistema"),
|
||||
("Table", "Tabla"),
|
||||
("Template name", "Nombre de la plantilla"),
|
||||
("Template: {}\n{}", "Plantilla: {}\n{}"),
|
||||
("Temporal Interpolation:", "Interpolación temporal:"),
|
||||
("The Media Browser is not available here (use File ▸ Import)", "El Navegador de medios no está disponible aquí (usa Archivo ▸ Importar)"),
|
||||
("The OpenEXR layer shown in red, green, blue and alpha", "La capa de OpenEXR mostrada en rojo, verde, azul y alfa"),
|
||||
("The render queue is empty.", "La cola de procesamiento está vacía."),
|
||||
(
|
||||
"These adjacent keyframes cannot interpolate because their stop counts differ.",
|
||||
"Estos fotogramas clave adyacentes no pueden interpolarse porque sus números de paradas son distintos.",
|
||||
),
|
||||
("This ScriptUI panel has closed", "Este panel de ScriptUI se ha cerrado"),
|
||||
("This change will create a new solid for this layer.", "Este cambio creará un nuevo sólido para esta capa."),
|
||||
("Time", "Tiempo"),
|
||||
("Time Stretch…", "Estirar el tiempo…"),
|
||||
("Time:", "Tiempo:"),
|
||||
("Time: {}", "Tiempo: {}"),
|
||||
("Title/Action Safe", "Área segura de título/acción"),
|
||||
("Title/action safe", "Área segura de título/acción"),
|
||||
("Toggle Switches / Modes", "Alternar conmutadores / modos"),
|
||||
("Track Name:", "Nombre del seguimiento:"),
|
||||
(
|
||||
"Trained models are available in the desktop app; the browser uses the classic engine.",
|
||||
"Los modelos entrenados están disponibles en la aplicación de escritorio; el navegador usa el motor clásico.",
|
||||
),
|
||||
("Transform", "Transformar"),
|
||||
("Transparency grid", "Cuadrícula de transparencia"),
|
||||
("Tutorial complete", "Tutorial completado"),
|
||||
("Two-Node Camera", "Cámara de dos nodos"),
|
||||
("Type", "Tipo"),
|
||||
("Type a command or effect…", "Escribe un comando o efecto…"),
|
||||
("URL:", "URL:"),
|
||||
("Undock Panel", "Desacoplar panel"),
|
||||
("Move Panel to New Window", "Mover panel a una ventana nueva"),
|
||||
("Move Panel to Main Window", "Mover panel a la ventana principal"),
|
||||
("Unfreeze", "Descongelar"),
|
||||
("Unlink {}", "Desvincular {}"),
|
||||
(
|
||||
"Use this option to place the currently selected layers together into a new intermediate composition.",
|
||||
"Usa esta opción para colocar las capas seleccionadas juntas en una nueva composición intermedia.",
|
||||
),
|
||||
("VR Environments", "Entornos de RV"),
|
||||
("Value:", "Valor:"),
|
||||
("Variable Font Axes", "Ejes de fuente variable"),
|
||||
("Video Codec: {}", "Códec de vídeo: {}"),
|
||||
("View:", "Vista:"),
|
||||
("Welcome to EffectCraft", "Te damos la bienvenida a EffectCraft"),
|
||||
("Width:", "Ancho:"),
|
||||
("You can undo this.", "Puedes deshacer esto."),
|
||||
("Your changes will be lost if you don't save them.", "Tus cambios se perderán si no los guardas."),
|
||||
("Zoom", "Zoom"),
|
||||
("built-in", "integrado"),
|
||||
("frames per second", "fotogramas por segundo"),
|
||||
("template name", "nombre de plantilla"),
|
||||
("{} contributors · {} commits", "{} colaboradores · {} commits"),
|
||||
("{} x {}, {}MB per 8bpc frame", "{} x {}, {}MB por fotograma de 8 bpc"),
|
||||
("{} — coming soon", "{} — próximamente"),
|
||||
("{} — double-click to open, {}-click to reveal", "{} — doble clic para abrir, clic con {} para mostrar"),
|
||||
("⌘/Ctrl-drag a pin to record its motion", "⌘/Ctrl + arrastra un pin para grabar su movimiento"),
|
||||
("▣ {}", "▣ {}"),
|
||||
("⚠ {} is used by:", "⚠ {} se usa en:"),
|
||||
("3D Reference Axes", "Ejes de referencia 3D"),
|
||||
("Affect all layers that use this solid", "Afectar a todas las capas que usan este sólido"),
|
||||
("Choose grid and guide options", "Elegir opciones de cuadrícula y guías"),
|
||||
("Colorize", "Colorear"),
|
||||
("Custom", "Personalizado"),
|
||||
("Custom...", "Personalizada..."),
|
||||
("Fit", "Ajustar"),
|
||||
("Fit up to 100%", "Ajustar hasta el 100%"),
|
||||
("Full", "Completa"),
|
||||
("Half", "Mitad"),
|
||||
("Only this layer uses this solid.", "Solo esta capa usa este sólido."),
|
||||
("Proportional Grid", "Cuadrícula proporcional"),
|
||||
("Quarter", "Cuarto"),
|
||||
("Region of Interest", "Región de interés"),
|
||||
("Reset Exposure", "Restablecer exposición"),
|
||||
("Show Channel and Color Management Settings", "Mostrar ajustes de canal y gestión del color"),
|
||||
("Show Snapshot (hold)", "Mostrar instantánea (mantener)"),
|
||||
("Take Snapshot", "Tomar instantánea"),
|
||||
("Third", "Tercio"),
|
||||
("Toggle Mask and Shape Path Visibility", "Alternar visibilidad de máscara y trazado de forma"),
|
||||
("Toggle Transparency Grid", "Alternar cuadrícula de transparencia"),
|
||||
("16 bits per channel", "16 bits por canal"),
|
||||
("32 bits per channel (float)", "32 bits por canal (flotante)"),
|
||||
("8 bits per channel", "8 bits por canal"),
|
||||
("Adaptive Resolution", "Resolución adaptable"),
|
||||
("Adobe-style built-in", "Integrado al estilo Adobe"),
|
||||
("Blue", "Azul"),
|
||||
("Current Settings", "Ajustes actuales"),
|
||||
("Disable Per-character 3D", "Deshabilitar 3D por carácter"),
|
||||
("Draft", "Borrador"),
|
||||
("Enable Per-character 3D", "Habilitar 3D por carácter"),
|
||||
("Fast Draft", "Borrador rápido"),
|
||||
("Fast Previews (Draft 3D, Faster Effects)", "Previsualizaciones rápidas (borrador 3D, efectos más rápidos)"),
|
||||
("Green", "Verde"),
|
||||
("Import Image Sequence", "Importar secuencia de imágenes"),
|
||||
("Import PDF / Illustrator File", "Importar archivo PDF / Illustrator"),
|
||||
("Import Photoshop File", "Importar archivo de Photoshop"),
|
||||
("Interpret Unlabeled Alpha As", "Interpretar alfa sin etiquetar como"),
|
||||
("Join the ArtCraft Discord", "Únete al Discord de ArtCraft"),
|
||||
("Mercury GPU Acceleration ({})", "Aceleración por GPU Mercury ({})"),
|
||||
("Mercury Software Only", "Solo software Mercury"),
|
||||
("OCIO (built-in ACES config)", "OCIO (configuración ACES integrada)"),
|
||||
("Off (Final Quality)", "Desactivado (calidad final)"),
|
||||
("OpenGL (compatibility)", "OpenGL (compatibilidad)"),
|
||||
("Opus Bitrate: {} kbps", "Tasa de bits de Opus: {} kbps"),
|
||||
("RGB Straight", "RGB sin premultiplicar"),
|
||||
("Red", "Rojo"),
|
||||
("Tone map", "Mapeo de tonos"),
|
||||
("Use In-Window Menu Bar on macOS", "Usar la barra de menús en la ventana en macOS"),
|
||||
("Wireframe", "Estructura alámbrica"),
|
||||
("sRGB IEC61966-2.1 (default)", "sRGB IEC61966-2.1 (predeterminado)"),
|
||||
("New Project", "Nuevo proyecto"),
|
||||
("Open Project…", "Abrir proyecto…"),
|
||||
("Templates", "Plantillas"),
|
||||
("EffectCraft home page", "Página de inicio de EffectCraft"),
|
||||
("EffectCraft on GitHub", "EffectCraft en GitHub"),
|
||||
("Motion graphics and visual effects · version {}", "Gráficos en movimiento y efectos visuales · versión {}"),
|
||||
("New Composition", "Nueva composición"),
|
||||
("Open Demo Project", "Abrir proyecto de demostración"),
|
||||
("Import Footage…", "Importar material de archivo…"),
|
||||
("Filter recent files", "Filtrar archivos recientes"),
|
||||
("NAME", "NOMBRE"),
|
||||
("OPENED", "ABIERTO"),
|
||||
("SIZE", "TAMAÑO"),
|
||||
("KIND", "TIPO"),
|
||||
("Your recent files will show here", "Tus archivos recientes aparecerán aquí"),
|
||||
("Create a new project, or open the demo project to look around.", "Crea un proyecto nuevo o abre el proyecto de demostración para explorar."),
|
||||
("No recent files match the filter", "Ningún archivo reciente coincide con el filtro"),
|
||||
("Try another name or folder.", "Prueba con otro nombre o carpeta."),
|
||||
("Just now", "Ahora mismo"),
|
||||
("Yesterday", "Ayer"),
|
||||
("{} minute ago", "Hace {} minuto"),
|
||||
("{} minutes ago", "Hace {} minutos"),
|
||||
("{} hour ago", "Hace {} hora"),
|
||||
("{} hours ago", "Hace {} horas"),
|
||||
("{} day ago", "Hace {} día"),
|
||||
("{} days ago", "Hace {} días"),
|
||||
("EffectCraft project", "Proyecto de EffectCraft"),
|
||||
("After Effects project", "Proyecto de After Effects"),
|
||||
("Lottie animation", "Animación de Lottie"),
|
||||
("Project", "Proyecto"),
|
||||
];
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
@@ -3708,6 +4261,7 @@ mod tests {
|
||||
.chain(UKRAINIAN.iter().copied())
|
||||
.chain(PORTUGUESE.iter().copied())
|
||||
.chain(CZECH.iter().copied())
|
||||
.chain(SPANISH.iter().copied())
|
||||
.collect()
|
||||
}
|
||||
|
||||
@@ -3738,7 +4292,7 @@ mod tests {
|
||||
let hant: Vec<&str> = TRADITIONAL_CHINESE.iter().map(|(en, _)| *en).collect();
|
||||
assert_eq!(hans, hant, "the two Chinese catalogs list different source strings");
|
||||
// Japanese, Ukrainian and Czech may lag the Chinese catalogs: a missing row falls back to English.
|
||||
for (name, cat) in [("Japanese", JAPANESE), ("Ukrainian", UKRAINIAN), ("Brazilian Portuguese", PORTUGUESE), ("Czech", CZECH)] {
|
||||
for (name, cat) in [("Japanese", JAPANESE), ("Ukrainian", UKRAINIAN), ("Brazilian Portuguese", PORTUGUESE), ("Czech", CZECH), ("Spanish", SPANISH)] {
|
||||
let extra: Vec<&str> = cat.iter().map(|(en, _)| *en).filter(|en| !hans.contains(en)).collect();
|
||||
assert!(extra.is_empty(), "the {name} catalog lists source strings the Chinese ones don't: {extra:?}");
|
||||
}
|
||||
@@ -3796,6 +4350,22 @@ mod tests {
|
||||
assert_eq!(tr("Cancel"), "Cancel");
|
||||
}
|
||||
|
||||
/// Spanish panels translate, fill values in order and keep project content; every Chinese source
|
||||
/// string has a Spanish row.
|
||||
#[test]
|
||||
fn spanish_panels_translate_and_keep_project_content() {
|
||||
let es: Vec<&str> = SPANISH.iter().map(|(en, _)| *en).collect();
|
||||
let hans: Vec<&str> = SIMPLIFIED_CHINESE.iter().map(|(en, _)| *en).collect();
|
||||
assert_eq!(es, hans, "the Spanish catalog lists different source strings than the Chinese ones");
|
||||
set_current("es");
|
||||
assert_eq!(tr("Composition Name:"), "Nombre de la composición:");
|
||||
assert_eq!(tr("Cancel"), "Cancelar");
|
||||
assert_eq!(tr("my layer.mp4"), "my layer.mp4");
|
||||
assert_eq!(tr_args("Step {} of {}: {}", &[&1, &3, &"Colour"]), "Paso 1 de 3: Colour");
|
||||
set_current("en");
|
||||
assert_eq!(tr("Cancel"), "Cancel");
|
||||
}
|
||||
|
||||
/// Values fill the placeholders in order, and a missing value is dropped instead of panicking.
|
||||
#[test]
|
||||
fn tr_args_fills_values_in_order() {
|
||||
|
||||
Reference in new issue
Block a user