feat(i18n): translate the whole interface

Mark every UI string the unmarked-text check reported (534) plus text it
cannot see (helpers, joined labels, runtime-built panels), and translate
the result to Spanish and Russian: 1,679 messages each.

- Kept on purpose, with the reason where the text lives: provider and
  product names, place and camera names, codes and units, dB values, the HUD
  terminal readouts, demo shot titles that saved projects look up by title,
  and text for AI tools and the voice model.
- Modules shared with the server or AI tools stay free of the i18n import
  (local msg); the wind reading and voice session stay English and are
  translated where the page shows them.
- npm test now runs the unmarked-text check.
- Fixes on the way: a duplicated radio privacy paragraph, the contact panel
  toggle saying Expand while open, the CSS filter mistaking & for CSS.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
German KhokhlovandClaude Opus 5.5 committed 2026-10-12 19:24:42 +04:00
1 parent ee72133574
commit 3129e531e6
99 files changed
+4670 -1294

No files matched your search

+823 -1
View File
@@ -979,5 +979,827 @@
"ALL": "TODAS",
"FLAT": "PLANAS",
"SINCE": "DESDE",
"Coverage colours": "Colores de cobertura"
"Coverage colours": "Colores de cobertura",
"That shape already has {count} points — finish it or press Backspace.": "Esa forma ya tiene {count} puntos — termínala o pulsa Backspace.",
"Could not place the shape: {error}": "No se pudo colocar la forma: {error}",
"{owner} is using the pointer — close it first.": "{owner} está usando el puntero — ciérralo primero.",
"{label} · Detailed outline unavailable": "{label} · Contorno detallado no disponible",
"Witness source": "Fuente testigo",
"{provider} · EMBEDDED SOURCE": "{provider} · FUENTE INSERTADA",
"OPEN ORIGINAL ↗": "ABRIR ORIGINAL ↗",
"{provider} media: {source}": "Contenido de {provider}: {source}",
"{provider} · PROVIDER CONTROLS": "{provider} · CONTROLES DEL PROVEEDOR",
"YOUTUBE {state} · OPEN ORIGINAL": "YOUTUBE {state} · ABRE EL ORIGINAL",
"Facebook player API did not initialize.": "La API del reproductor de Facebook no se inicializó.",
"Facebook player API could not load.": "No se pudo cargar la API del reproductor de Facebook.",
"Facebook player API timed out.": "La API del reproductor de Facebook agotó el tiempo de espera.",
"X embed API did not initialize.": "La API de inserción de X no se inicializó.",
"X embed could not load.": "No se pudo cargar la inserción de X.",
"X embed timed out.": "La inserción de X agotó el tiempo de espera.",
"TIMEOUT": "TIEMPO AGOTADO",
"BLOCKED": "BLOQUEADO",
"Facebook embed unavailable. The post may be private, removed, region-restricted, or blocked.": "Inserción de Facebook no disponible. La publicación puede ser privada, haber sido eliminada, estar restringida por región o bloqueada.",
"Preloading {provider} media": "Precargando contenido de {provider}",
"LOADING X POST…": "CARGANDO PUBLICACIÓN DE X…",
"The X post is unavailable or cannot be embedded.": "La publicación de X no está disponible o no se puede insertar.",
"X POST · PROVIDER CONTROLS": "PUBLICACIÓN DE X · CONTROLES DEL PROVEEDOR",
"{reason} OPEN ORIGINAL.": "{reason} ABRE EL ORIGINAL.",
"X embed unavailable": "Inserción de X no disponible",
"FACEBOOK · PROVIDER CONTROLS": "FACEBOOK · CONTROLES DEL PROVEEDOR",
"Facebook embed unavailable": "Inserción de Facebook no disponible",
"AUTOPLAY BLOCKED · USE PROVIDER CONTROLS": "REPRODUCCIÓN AUTOMÁTICA BLOQUEADA · USA LOS CONTROLES DEL PROVEEDOR",
"Embedded {provider} media for {source}": "Contenido de {provider} insertado para {source}",
"witness source": "fuente testigo",
"Rasuwagadhi witness": "Testigo de Rasuwagadhi",
"Open original source for {source}; capture time unverified": "Abrir la fuente original de {source}; hora de captura sin verificar",
"Historical reference and post-event image divider": "Divisor entre la imagen de referencia histórica y la posterior al evento",
"A historical reference {before} percent, B post-event {after} percent": "A, referencia histórica, {before} por ciento; B, posterior al evento, {after} por ciento",
"■ RELEASE CAMERA": "■ LIBERAR CÁMARA",
"Seek Nepal scene clock": "Desplazarse por el reloj de la escena de Nepal",
"NEPAL SCENE CLOCK": "RELOJ DE LA ESCENA DE NEPAL",
"… PLAYING SHOT": "… REPRODUCIENDO PLANO",
"▶ PLAY SHOT": "▶ REPRODUCIR PLANO",
"Ⅱ PAUSE": "Ⅱ PAUSA",
"↺ REPLAY CINEMATIC": "↺ REPETIR CINEMÁTICA",
"↺ REPLAY": "↺ REPETIR",
"… PLAYING SCENE": "… REPRODUCIENDO ESCENA",
"Continue {scene} from next shot": "Continuar {scene} desde el siguiente plano",
"current scene": "la escena actual",
"Replay the full reconstruction": "Repetir la reconstrucción completa",
"SCENE SHOT": "PLANO DE ESCENA",
"TIME UNVERIFIED": "HORA SIN VERIFICAR",
"{count} SOURCES": {
"one": "{count} FUENTE",
"many": "{count} DE FUENTES",
"other": "{count} FUENTES"
},
"OUTSIDE IMAGERY SWIPE": "FUERA DE LA COMPARACIÓN DE IMÁGENES",
"{scene} / AUTHORED SHOT": "{scene} / PLANO DISEÑADO",
"NEPAL FLOOD INCIDENT": "INCIDENTE DE INUNDACIÓN EN NEPAL",
"Play {shot}": "Reproducir {shot}",
"current scene shot": "el plano actual de la escena",
"Play reconstruction": "Reproducir la reconstrucción",
"Load previous scene shot": "Cargar el plano anterior de la escena",
"Load next scene shot": "Cargar el siguiente plano de la escena",
"SCHEMATIC CORRIDOR, NOT MODELED ARRIVAL TIME.": "CORREDOR ESQUEMÁTICO, NO TIEMPO DE LLEGADA MODELADO.",
"Rasuwa · 26 Aug 2026": "Rasuwa · 26 ago 2026",
"Event reconstruction": "Reconstrucción del evento",
"INITIATION": "INICIO",
"DAMMING": "REPRESAMIENTO",
"SECONDARY FAILURE": "ROTURA SECUNDARIA",
"BORDER ARRIVAL": "LLEGADA A LA FRONTERA",
"PROPAGATION": "PROPAGACIÓN",
"DOWNSTREAM PASSAGE": "PASO AGUAS ABAJO",
"CONSEQUENCE": "CONSECUENCIA",
"DOWNSTREAM CONSEQUENCE": "CONSECUENCIA AGUAS ABAJO",
"EVIDENCE": "EVIDENCIA",
"{count} GEOLOCATED SOURCE-MAP PLACEMENTS": {
"one": "{count} UBICACIÓN GEOLOCALIZADA EN EL MAPA DE FUENTES",
"many": "{count} DE UBICACIONES GEOLOCALIZADAS EN EL MAPA DE FUENTES",
"other": "{count} UBICACIONES GEOLOCALIZADAS EN EL MAPA DE FUENTES"
},
"NO PREVIEW": "SIN VISTA PREVIA",
"SOURCE LINK": "ENLACE DE LA FUENTE",
"{publisher} / OPEN": "{publisher} / ABRIR",
"Bhote Koshi flood reconstruction controls": "Controles de la reconstrucción de la inundación del Bhote Koshi",
"EVENT RECONSTRUCTION · 26 AUG 2026": "RECONSTRUCCIÓN DEL EVENTO · 26 AGO 2026",
"BHOTE KOSHI OUTBURST FLOOD": "INUNDACIÓN POR DESBORDE DEL BHOTE KOSHI",
"Close event layer": "Cerrar la capa del evento",
"OBSERVED IMAGERY": "IMÁGENES OBSERVADAS",
"SCHEMATIC CORRIDOR": "CORREDOR ESQUEMÁTICO",
"2021 HISTORICAL REFERENCE / 2026 POST-EVENT": "REFERENCIA HISTÓRICA 2021 / POSTERIOR AL EVENTO 2026",
"Historical reference and post-event image split": "División entre la imagen de referencia histórica y la posterior al evento",
"RECONSTRUCTION CLOCK": "RELOJ DE LA RECONSTRUCCIÓN",
"Schematic downstream progression": "Avance esquemático aguas abajo",
"Story beat navigation": "Navegación por momentos del relato",
"Previous story beat": "Momento anterior del relato",
"CAUSE": "CAUSA",
"CAPTURE TIME UNVERIFIED": "HORA DE CAPTURA SIN VERIFICAR",
"Next story beat": "Siguiente momento del relato",
"▶ PLAY": "▶ REPRODUCIR",
"Play the next shot and continue through this scene": "Reproducir el siguiente plano y continuar con esta escena",
"▶ PLAY SCENE": "▶ REPRODUCIR ESCENA",
"◉ CINEMATIC": "◉ CINEMÁTICA",
"↺ FULL STORY": "↺ HISTORIA COMPLETA",
"↗ OPEN ORIGINAL": "↗ ABRIR ORIGINAL",
"⌖ LOWER GORGE": "⌖ GARGANTA INFERIOR",
"FIELD REPORTS · {count}": "INFORMES DE CAMPO · {count}",
"GEOLOCATIONS · {credit}": "GEOLOCALIZACIONES · {credit}",
"↗ OPEN PUBLIC MAP": "↗ ABRIR MAPA PÚBLICO",
"Clouds are preserved from the source imagery.": "Las nubes se conservan de las imágenes de origen.",
"Show the Nepal context callout without a border or country fill": "Muestra la etiqueta de contexto de Nepal sin frontera ni relleno del país",
"Introduce Nepal, draw its border, then reveal the Bhote Koshi incident": "Presenta Nepal, dibuja su frontera y luego revela el incidente del Bhote Koshi",
"CITIES": "CIUDADES",
"Keep the regional incident context and introduce nearby city labels": "Mantiene el contexto regional del incidente y presenta las etiquetas de las ciudades cercanas",
"PLACES": "LUGARES",
"Introduce the reconstruction scene key places from trigger to downstream": "Presenta los lugares clave de la escena de reconstrucción, desde el desencadenante hasta aguas abajo",
"PATH": "RECORRIDO",
"Animate the sourced cyan river-centerline route to Trishuli Bazaar": "Anima la ruta cian documentada por el eje del río hasta Trishuli Bazaar",
"OVERVIEW": "VISTA GENERAL",
"Keep the completed flood path and location labels visible": "Mantiene visibles el recorrido completo de la inundación y las etiquetas de lugares",
"RECORD": "REGISTRO",
"Reveal the trigger record while making a slow camera approach": "Revela el registro del desencadenante con una aproximación lenta de la cámara",
"BHOTE KOSHI FLOOD INCIDENT": "INCIDENTE DE INUNDACIÓN DEL BHOTE KOSHI",
"NEPAL · 26 AUG 2026": "NEPAL · 26 AGO 2026",
"USGS INITIAL REPORT": "INFORME INICIAL DEL USGS",
"26 AUG 2026 · 08:37 NPT": "26 AGO 2026 · 08:37 NPT",
"28.2710° N · 85.5150° E": "28.2710° N · 85.5150° E",
"INITIAL M4.4 · RECLASSIFIED M5.2 LANDSLIDE": "INICIAL M4.4 · RECLASIFICADO COMO DESLIZAMIENTO M5.2",
"USGS EVENT us7000tbwb · OPEN SOURCE": "EVENTO USGS us7000tbwb · ABRIR FUENTE",
"flight": "vuelo",
"military flight": "vuelo militar",
"satellite": "satélite",
"VOICE AUTH · CHATGPT OAUTH": "AUTENTICACIÓN DE VOZ · OAUTH DE CHATGPT",
"VOICE AUTH · API KEY": "AUTENTICACIÓN DE VOZ · CLAVE DE API",
"USE API KEY": "USAR CLAVE DE API",
"USE CHATGPT OAUTH": "USAR OAUTH DE CHATGPT",
"Use OPENAI_API_KEY for the next cloud voice session": "Usar OPENAI_API_KEY en la próxima sesión de voz en la nube",
"Use the signed-in local ChatGPT/Codex OAuth session for the next cloud voice session": "Usar la sesión OAuth local de ChatGPT/Codex ya iniciada en la próxima sesión de voz en la nube",
"Metered — a billing-enabled account": "De pago por uso — una cuenta con facturación activada",
"Free key — register, paste, done": "Clave gratuita — regístrate, pégala y listo",
"browser-side": "en el navegador",
"This key runs in the browser by design — restrict it at the provider (see SECURITY.md)": "Esta clave funciona en el navegador por diseño — restríngela en el proveedor (consulta SECURITY.md)",
"configured externally": "configurada externamente",
"Supplied by your environment, Keychain, or launcher — change it where it was set": "Proporcionada por tu entorno, Keychain o el lanzador — cámbiala donde se definió",
"MANAGE ↗": "GESTIONAR ↗",
"GET KEY ↗": "OBTENER CLAVE ↗",
"{envVar} saved — paste to replace": "{envVar} guardada — pega otra para reemplazarla",
"paste {envVar}": "pega {envVar}",
"Project keys: {status}": "Claves del proyecto: {status}",
"Mapped camera locations": "Ubicaciones de cámaras cartografiadas",
"SHOW NEAREST": "MOSTRAR LA MÁS CERCANA",
"Stop following the current object before navigating to a camera": "Deja de seguir el objeto actual antes de ir a una cámara",
"Move to the nearest loaded camera and show its details": "Ir a la cámara cargada más cercana y mostrar sus detalles",
"Camera badges": "Iconos de cámaras",
"Cyan cameras turn coral when selected. Wedges illustrate mapped direction, not measured coverage. Nearby cameras may be outside the screen.": "Las cámaras cian se vuelven coral al seleccionarlas. Las cuñas ilustran la dirección cartografiada, no la cobertura medida. Las cámaras cercanas pueden estar fuera de la pantalla.",
"{count} nearby · {onScreen} on screen": {
"one": "{count} cercana · {onScreen} en pantalla",
"many": "{count} de cámaras cercanas · {onScreen} en pantalla",
"other": "{count} cercanas · {onScreen} en pantalla"
},
"{count} nearby": {
"one": "{count} cercana",
"many": "{count} de cámaras cercanas",
"other": "{count} cercanas"
},
"retrying mapped ALPR cameras": "reintentando cámaras ALPR cartografiadas",
"loading mapped ALPR cameras": "cargando cámaras ALPR cartografiadas",
"No ALPR data for this area — US and Canada only": "Sin datos ALPR para esta zona — solo EE. UU. y Canadá",
"Zoom in to load mapped cameras": "Haz zoom para cargar las cámaras cartografiadas",
"Showing cached locations": "Mostrando ubicaciones en caché",
"Coverage limited — zoom in": "Cobertura limitada — haz zoom",
"No ALPR data for this area": "Sin datos ALPR para esta zona",
"None on screen — nearby cameras are outside the view": "Ninguna en pantalla — las cámaras cercanas están fuera de la vista",
"ALPR camera": "Cámara ALPR",
"OpenStreetMap · community mapped": "OpenStreetMap · cartografiado por la comunidad",
"Atlantic and eastern/central North Pacific; not worldwide cyclone coverage.": "Atlántico y Pacífico Norte oriental/central; no es una cobertura mundial de ciclones.",
"Potential tropical cyclone": "Posible ciclón tropical",
"Hurricane": "Huracán",
"Tropical storm": "Tormenta tropical",
"Tropical depression": "Depresión tropical",
"Subtropical storm": "Tormenta subtropical",
"Subtropical depression": "Depresión subtropical",
"Track and cone match this advisory": "La trayectoria y el cono coinciden con este aviso",
"Track/cone awaiting advisory {number}": "Trayectoria/cono a la espera del aviso {number}",
"Track/cone unavailable": "Trayectoria/cono no disponible",
"Cached advisory · stale source": "Aviso en caché · fuente desactualizada",
"Loading advisories…": "Cargando avisos…",
"{count} active storms": {
"one": "{count} ciclón activo",
"many": "{count} de ciclones activos",
"other": "{count} ciclones activos"
},
"Position as of {time}": "Posición a fecha de {time}",
"Maximum sustained wind: {wind} · Pressure: {pressure}": "Viento máximo sostenido: {wind} · Presión: {pressure}",
"{name} · {classification} · Advisory {number} · issued {time}": "{name} · {classification} · Aviso {number} · emitido {time}",
"No active NHC/CPHC systems": "Sin sistemas activos del NHC/CPHC",
"Advisories unavailable": "Avisos no disponibles",
"Cyclones · NHC / CPHC": "Ciclones · NHC / CPHC",
"Atlantic · E/C Pacific": "Atlántico · Pacífico E/C",
"{storms} · {name} selected": "{storms} · {name} seleccionado",
"Official advisory ↗": "Aviso oficial ↗",
"Active NHC and CPHC cyclone advisories": "Avisos de ciclones activos del NHC y el CPHC",
"Wind unavailable": "Viento no disponible",
"Advisory center / forecast track": "Centro del aviso / trayectoria pronosticada",
"Center-track uncertainty cone": "Cono de incertidumbre de la trayectoria del centro",
"Select a storm on the map, or choose a storm in the list to select it and move the camera. Click empty map space to clear the selection. NOAA NHC/CPHC advisory context. The cone describes forecast center-track uncertainty, not storm size or the full hazard area. Forecast point labels are source lead hours, not times computed from advisory issuance. Geometry follows the surface; height is not weather altitude. Consult the official advisory.": "Selecciona un ciclón en el mapa, o elige uno en la lista para seleccionarlo y mover la cámara. Haz clic en un espacio vacío del mapa para borrar la selección. Contexto de avisos NOAA NHC/CPHC. El cono describe la incertidumbre de la trayectoria pronosticada del centro, no el tamaño del ciclón ni toda el área de peligro. Las etiquetas de los puntos de pronóstico son horas de anticipación de la fuente, no horas calculadas a partir de la emisión del aviso. La geometría sigue la superficie; la altura no es altitud meteorológica. Consulta el aviso oficial.",
"Directions": "Indicaciones",
"{mode} — reroute for {modeLower}": "{mode} — recalcular la ruta {modeLower}",
"CLICK MAP": "CLIC EN EL MAPA",
"SET A": "FIJAR A",
"Click a spot on the globe to place A (click again to cancel)": "Haz clic en un punto del globo para colocar A (vuelve a hacer clic para cancelar)",
"Then click the globe to place the start": "Luego haz clic en el globo para colocar el inicio",
"SET B": "FIJAR B",
"Click a spot on the globe to place B (click again to cancel)": "Haz clic en un punto del globo para colocar B (vuelve a hacer clic para cancelar)",
"Then click the globe to place the destination": "Luego haz clic en el globo para colocar el destino",
"Swap A and B": "Intercambiar A y B",
"FLY ···": "VOLAR ···",
"FLYING": "VOLANDO",
"FLY": "VOLAR",
"Fly the camera along the route": "Volar con la cámara a lo largo de la ruta",
"Place A and B first": "Coloca primero A y B",
"Remove the route and both markers": "Eliminar la ruta y ambos marcadores",
"press Escape twice to leave Draw": "pulsa Escape dos veces para salir de Dibujo",
"{name} is active — turn {name} off, then set {endpoint}": "{name} está activo — desactiva {name} y luego fija {endpoint}",
"{name} is active — {leave}, then set {endpoint}": "{name} está activo — {leave} y luego fija {endpoint}",
"Only the first {count} turns of this route are shown": "Solo se muestran los primeros {count} giros de esta ruta",
"Turn-by-turn directions": "Indicaciones paso a paso",
"OSM routing": "Rutas de OSM",
"DRIVE": "COCHE",
"Drive": "En coche",
"Another map tool is using clicks — close it, then SET A again": "Otra herramienta del mapa está usando los clics — ciérrala y vuelve a pulsar FIJAR A",
"WALK": "A PIE",
"Walk": "A pie",
"Routing…": "Calculando ruta…",
"BIKE": "BICI",
"Bike": "En bici",
"No route found": "No se encontró ninguna ruta",
"{distance} · {duration} · {mode} · first {count} turns": "{distance} · {duration} · {mode} · primeros {count} giros",
"{distance} · {duration} · {mode}": "{distance} · {duration} · {mode}",
"Click the globe to place {endpoint}": "Haz clic en el globo para colocar {endpoint}",
"SET B, then click the globe": "Pulsa FIJAR B y luego haz clic en el globo",
"SET A, then click the globe": "Pulsa FIJAR A y luego haz clic en el globo",
"Step {step} of {total} · then {leg}": "Paso {step} de {total} · luego {leg}",
"Step {step} of {total}": "Paso {step} de {total}",
"Then: {instruction}": "Luego: {instruction}",
"No route found between A and B": "No se encontró ninguna ruta entre A y B",
"Routing failed: {error}": "Falló el cálculo de la ruta: {error}",
"Routing timed out": "El cálculo de la ruta agotó el tiempo de espera",
"Routing unavailable — no response from the routing service": "Rutas no disponibles — sin respuesta del servicio de rutas",
"Routing unavailable": "Rutas no disponibles",
"Fire · FRP {frp} MW": "Incendio · FRP {frp} MW",
"Not contained or unknown": "Sin contener o desconocido",
"Under 50% contained": "Contenido por debajo del 50%",
"50–99% contained": "Contenido al 50–99%",
"Fully contained": "Totalmente contenido",
"Colour shows reported containment. Perimeters are simplified to about 100 m.": "El color indica la contención notificada. Los perímetros se simplifican a unos 100 m.",
"MORE DETAIL · 30 m": "MÁS DETALLE · 30 m",
"Sentinel-2 and Landsat via HLS, 30 m, every 2–6 days": "Sentinel-2 y Landsat vía HLS, 30 m, cada 2–6 días",
"DAILY OVERVIEW · 250 m": "VISTA GENERAL DIARIA · 250 m",
"VIIRS daily mosaic, 250 m, follows broad changes; little detail under 25 km": "Mosaico diario de VIIRS, 250 m, sigue los cambios amplios; poco detalle por debajo de 25 km",
"Catalog truncated · a newer clear day may exist": "Catálogo truncado · puede existir un día despejado más reciente",
"{label} catalog unavailable · {detail}": "Catálogo de {label} no disponible · {detail}",
"Daily overview for today may still be empty until the pass": "La vista general diaria de hoy puede seguir vacía hasta el paso del satélite",
"Sentinel-2": "Sentinel-2",
"Landsat 8/9": "Landsat 8/9",
"Daily overview": "Vista general diaria",
"No frame within {gap} min of {time}": "Ningún fotograma a menos de {gap} min de {time}",
"No frame within {gap} h of {time}": "Ningún fotograma a menos de {gap} h de {time}",
"{hours}h {minutes}m ago": "hace {hours} h {minutes} min",
"{minutes}m ago": "hace {minutes} min",
"{state} · {time} · {lag}": "{state} · {time} · {lag}",
"Observed": "Observado",
"History": "Historial",
"Observation unavailable": "Observación no disponible",
"Waiting for observation": "Esperando observación",
"{detail} · synced": "{detail} · sincronizado",
"{detail} · nearest": "{detail} · más cercano",
"RADAR REFLECTIVITY · dBZ": "REFLECTIVIDAD DE RADAR · dBZ",
"LIGHTNING DENSITY · 15 min accumulation": "DENSIDAD DE RAYOS · acumulación de 15 min",
"GLOBAL INFRARED · hourly": "INFRARROJO GLOBAL · cada hora",
"GOES INFRARED · ~5 min": "INFRARROJO GOES · ~5 min",
"{state}: {time}": "{state}: {time}",
"Latest observation": "Última observación",
"frame {index}/{total}": "fotograma {index}/{total}",
"loading": "cargando",
"Observation: unavailable": "Observación: no disponible",
"Contiguous US · gaps ≠ no rain": "EE. UU. contiguos · huecos ≠ sin lluvia",
"Americas + Pacific · not individual strikes": "América + Pacífico · no son rayos individuales",
"Color: strikes/km²/min ×10³": "Color: rayos/km²/min ×10³",
"60°S–60°N · typically 2–3 h delayed": "60°S–60°N · normalmente con 2–3 h de retraso",
"North America · infrared imagery": "Norteamérica · imágenes infrarrojas",
"Reduced motion · history playback unavailable": "Movimiento reducido · reproducción del historial no disponible",
"Reduced motion · manual history available": "Movimiento reducido · historial manual disponible",
"Rain radar · US": "Radar de lluvia · EE. UU.",
"Lightning density · 15 min": "Densidad de rayos · 15 min",
"Satellite clouds": "Nubes por satélite",
"Americas + Pacific": "América + Pacífico",
"Global · 60°S–60°N": "Global · 60°S–60°N",
"North America": "Norteamérica",
"Source observations delayed": "Observaciones de la fuente con retraso",
"Stale source": "Fuente desactualizada",
"Loading next frame…": "Cargando el siguiente fotograma…",
"Map center outside coverage": "Centro del mapa fuera de cobertura",
"strikes/km²/min ×10³": "rayos/km²/min ×10³",
"N. America": "Norteamérica",
"Global": "Global",
"Hourly global mosaic; usually 2–3 hours delayed": "Mosaico global horario; normalmente con 2–3 horas de retraso",
"GOES regional clouds; approximately 5-minute updates": "Nubes regionales de GOES; actualizaciones cada 5 minutos aproximadamente",
"Clouds only": "Solo nubes",
"Dim everything but the bright, cold cloud tops; a brightness filter, not a cloud mask": "Atenúa todo excepto las cimas de nubes brillantes y frías; un filtro de brillo, no una máscara de nubes",
"Full": "Completa",
"The complete infrared image at the chosen opacity": "La imagen infrarroja completa con la opacidad elegida",
"Soft": "Suave",
"Vivid": "Intensa",
"Image opacity; does not alter the observed values": "Opacidad de la imagen; no altera los valores observados",
"View US radar": "Ver radar de EE. UU.",
"View Americas & Pacific": "Ver América y Pacífico",
"View coverage": "Ver cobertura",
"{value} strikes/km²/min ×10³ (15-minute density)": "{value} rayos/km²/min ×10³ (densidad de 15 minutos)",
"{value} dBZ radar reflectivity": "{value} dBZ de reflectividad de radar",
"STALE · cached source metadata": "DESACTUALIZADO · metadatos de la fuente en caché",
"Map center is outside source coverage": "El centro del mapa está fuera de la cobertura de la fuente",
"NOAA/NWS 15-minute lightning density derived from Vaisala NLDN/GLD360. Coverage 110°E across the Pacific/Americas to 0°, 25°S–80°N. Not a live strike count, global coverage or a safety warning.": "Densidad de rayos de 15 minutos de NOAA/NWS derivada de Vaisala NLDN/GLD360. Cobertura desde 110°E, a través del Pacífico/América, hasta 0°, 25°S–80°N. No es un recuento de rayos en vivo, ni una cobertura global, ni un aviso de seguridad.",
"NOAA MRMS radar echoes indicate precipitation patterns, not rain rate, a storm warning or a future forecast. Native source approximately 1 km; display is limited to level 6. Frames use exact advertised observation times.": "Los ecos de radar NOAA MRMS indican patrones de precipitación, no la intensidad de lluvia, ni un aviso de tormenta, ni un pronóstico futuro. Fuente nativa de aproximadamente 1 km; la visualización se limita al nivel 6. Los fotogramas usan las horas de observación exactas anunciadas.",
"GOES-19/18 longwave infrared Band 14 regional; NESDIS global longwave mosaic. Clouds only dims everything but bright, cold cloud tops; a brightness filter, not a cloud mask. Coverage and freshness differ by region.": "Infrarrojo de onda larga GOES-19/18, banda 14, regional; mosaico global de onda larga de NESDIS. Solo nubes atenúa todo excepto las cimas de nubes brillantes y frías; un filtro de brillo, no una máscara de nubes. La cobertura y la actualidad varían según la región.",
"REGION": "REGIÓN",
"IMAGE": "IMAGEN",
"OPACITY": "OPACIDAD",
"Forecast · does not follow history": "Pronóstico · no sigue el historial",
"Wind motion": "Movimiento del viento",
"Wind speed": "Velocidad del viento",
"Sea-level pressure": "Presión a nivel del mar",
"Air temperature · 2 m": "Temperatura del aire · 2 m",
"Global · 1° grid": "Global · cuadrícula de 1°",
"{model} forecast · {time}": "Pronóstico {model} · {time}",
"Loading forecast": "Cargando pronóstico",
"Preparing flow": "Preparando flujo",
"Selected field unavailable": "Campo seleccionado no disponible",
"Cached forecast · stale": "Pronóstico en caché · desactualizado",
"ECMWF IFS surface forecast": "Pronóstico de superficie ECMWF IFS",
"NOAA GFS surface forecast": "Pronóstico de superficie NOAA GFS",
"Reduced motion": "Movimiento reducido",
"Pause visual flow; forecast time does not advance with animation": "Pausa el flujo visual; la hora del pronóstico no avanza con la animación",
"None": "Ninguno",
"Speed": "Velocidad",
"Pressure": "Presión",
"Temperature": "Temperatura",
"Wind trails with no field shading": "Trazas de viento sin sombreado del campo",
"How hard the surface wind is blowing": "Con qué fuerza sopla el viento en superficie",
"Sea-level air pressure: broad highs and lows": "Presión del aire a nivel del mar: altas y bajas amplias",
"Air temperature two meters above the surface": "Temperatura del aire a dos metros sobre la superficie",
"Wind speed units": "Unidades de velocidad del viento",
"Read wind at map center": "Leer el viento en el centro del mapa",
"Read the forecast at the center of the map without changing selection": "Leer el pronóstico en el centro del mapa sin cambiar la selección",
"{model} forecast · {field} ({unit})": "Pronóstico {model} · {field} ({unit})",
"Valid: {time}": "Válido: {time}",
"preparing": "preparando",
"Issued: {time}": "Emitido: {time}",
"Selected field unavailable · wind remains visible": "Campo seleccionado no disponible · el viento sigue visible",
"{error} · wind remains visible": "{error} · el viento sigue visible",
"Surface wind at 10 m. Approximately 1° global grid. Curves follow the 10 m wind field, lifted 12 km for visibility; display height is not weather altitude. View lighting is for readability. Animation shows flow through one fixed forecast; it does not advance time. Color fields drape the globe basemap or the active photorealistic 3D Tiles.": "Viento en superficie a 10 m. Cuadrícula global de aproximadamente 1°. Las curvas siguen el campo de viento a 10 m, elevadas 12 km para que sean visibles; la altura mostrada no es altitud meteorológica. La iluminación de la vista es para facilitar la lectura. La animación muestra el flujo de un único pronóstico fijo; no avanza el tiempo. Los campos de color cubren el mapa base del globo o las 3D Tiles fotorrealistas activas.",
"MODEL": "MODELO",
"FIELD": "CAMPO",
"UNITS": "UNIDADES",
"MOTION": "MOVIMIENTO",
"Forecast": "Pronóstico",
"Interpolated model forecast on an approximately 1° grid. Broad weather patterns, not a street-level measurement.": "Pronóstico de modelo interpolado en una cuadrícula de aproximadamente 1°. Patrones meteorológicos generales, no una medición a pie de calle.",
"No surface reading": "Sin lectura en superficie",
"Aim the map center at Earth": "Apunta el centro del mapa a la Tierra",
" · calm": " · calma",
" from {direction}": " del {direction}",
"WIND AT {coordinates}": "VIENTO EN {coordinates}",
"{model} · valid {time}": "{model} · válido {time}",
"Focusing {label}": "Enfocando {label}",
"Source": "Fuente",
"Could not leave scene: {scene}": "No se pudo salir de la escena: {scene}",
"Seeked: {scene} / {shot}": "Saltado a: {scene} / {shot}",
"Scene transition limit reached — load a shot to reset": "Límite de transiciones de escena alcanzado — carga un plano para restablecer",
"Export failed: {error}": "La exportación falló: {error}",
"Imported {file}": "Importado {file}",
"Import failed: {error}": "La importación falló: {error}",
"Import failed (could not read JSON file)": "La importación falló (no se pudo leer el archivo JSON)",
"Layers refused: {layers}": "Capas rechazadas: {layers}",
"Scene {n}": "Escena {n}",
"Cannot update {scene}: shot inventory changed": "No se puede actualizar {scene}: el inventario de planos cambió",
"Cannot update {scene}: evidence beats changed": "No se puede actualizar {scene}: los momentos de evidencia cambiaron",
"Cannot update {scene}: shot bindings are incomplete": "No se puede actualizar {scene}: los vínculos de los planos están incompletos",
"Updated {count} shots: {scene}": {
"one": "{count} plano actualizado: {scene}",
"many": "{count} de planos actualizados: {scene}",
"other": "{count} planos actualizados: {scene}"
},
"Appended {count} shots: {scene}": {
"one": "{count} plano añadido: {scene}",
"many": "{count} de planos añadidos: {scene}",
"other": "{count} planos añadidos: {scene}"
},
"Select a feature or use Tab and Enter to choose an action.": "Selecciona un elemento o usa Tab y Enter para elegir una acción.",
"Selected feature: {feature}. Choose an action.": "Elemento seleccionado: {feature}. Elige una acción.",
"Action complete": "Acción completada",
"Action unavailable or cancelled": "Acción no disponible o cancelada",
"Scene actions": "Acciones de escena",
"Bhote Koshi Evidence Sequence": "Secuencia de evidencia del Bhote Koshi",
"Nepal Flood Incident": "Incidente de inundación en Nepal",
"{count} scenes": {
"one": "{count} escena",
"many": "{count} de escenas",
"other": "{count} escenas"
},
"{count} shots": {
"one": "{count} plano",
"many": "{count} de planos",
"other": "{count} planos"
},
"{count} data packs": {
"one": "{count} paquete de datos",
"many": "{count} de paquetes de datos",
"other": "{count} paquetes de datos"
},
"{scene} / {pack}: {status}. File: {path}. {attribution} · {license}": "{scene} / {pack}: {status}. Archivo: {path}. {attribution} · {license}",
"Unavailable layers: {layers}": "Capas no disponibles: {layers}",
"This scene uses registered content or linked media. Those external files are not included in a scene bundle. Their original notices still apply.": "Esta escena usa contenido registrado o medios vinculados. Esos archivos externos no se incluyen en un paquete de escena. Sus avisos originales siguen vigentes.",
"{bytes} bundled bytes verified. Files stay in memory for this session. Reimport the bundle after reloading the app.": "{bytes} bytes empaquetados verificados. Los archivos permanecen en memoria durante esta sesión. Vuelve a importar el paquete después de recargar la app.",
"Review scene import": "Revisar la importación de escena",
"Nothing is loaded or changed until you apply this file.": "No se carga ni se cambia nada hasta que apliques este archivo.",
"Ready to import": "Listo para importar",
"Apply replaces the current project. Export your current project first if you want to keep both.": "Aplicar reemplaza el proyecto actual. Exporta primero tu proyecto actual si quieres conservar ambos.",
"Apply import": "Aplicar importación",
"Import was not applied. The current project may have changed.": "La importación no se aplicó. Es posible que el proyecto actual haya cambiado.",
"Select a scene and shot first": "Selecciona primero una escena y un plano",
"Edit scene details": "Editar los detalles de la escena",
"Camera positions use degrees and meters above the ellipsoid. Drafts are validated before they replace your saved scene.": "Las posiciones de cámara usan grados y metros sobre el elipsoide. Los borradores se validan antes de reemplazar tu escena guardada.",
"Anchors and data packs": "Anclas y paquetes de datos",
"Shot camera, timing, packs and actions": "Cámara, tiempos, paquetes y acciones del plano",
"New anchor ID": "ID del ancla nueva",
"Capture camera as anchor": "Capturar la cámara como ancla",
"Anchor added to draft": "Ancla añadida al borrador",
"Set move start to current camera": "Fijar el inicio del movimiento en la cámara actual",
"Move added to draft; destination remains the shot camera": "Movimiento añadido al borrador; el destino sigue siendo la cámara del plano",
"Use ordinary flight": "Usar vuelo normal",
"Invalid shot JSON": "JSON de plano no válido",
"Apply details": "Aplicar detalles",
"Select a scene first": "Selecciona primero una escena",
"Share selected scene": "Compartir la escena seleccionada",
"Scene JSON preserves authored settings and attribution. It does not include asset files. Bundles include only pack files you choose here or previously imported bundle files.": "El JSON de escena conserva los ajustes de autor y la atribución. No incluye archivos de recursos. Los paquetes solo incluyen los archivos de paquete que elijas aquí o los archivos de paquetes importados antes.",
"Download scene JSON": "Descargar JSON de escena",
"Choose data-pack files": "Elegir archivos de paquete de datos",
"Or choose a data-pack folder": "O elige una carpeta de paquete de datos",
"Download asset bundle": "Descargar paquete de recursos",
"Asset bundle downloaded": "Paquete de recursos descargado",
"Could not complete this action. Check the file, references and selected assets.": "No se pudo completar esta acción. Revisa el archivo, las referencias y los recursos seleccionados.",
"RTL-SDR sample stream stopped": "Flujo de muestras RTL-SDR detenido",
"Switching to {mode}…": "Cambiando a {mode}…",
"Browser audio is suspended; select FM again to resume it": "El audio del navegador está suspendido; selecciona FM de nuevo para reanudarlo",
"RTL-SDR gain change failed": "No se pudo cambiar la ganancia del RTL-SDR",
"Tuned to {mhz} MHz FM": "Sintonizado en {mhz} MHz FM",
"FM signal found at {mhz} MHz": "Señal FM encontrada en {mhz} MHz",
"No FM signal found": "No se encontró ninguna señal FM",
"Seek stopped": "Búsqueda detenida",
"Browser location is unavailable": "La ubicación del navegador no está disponible",
"Receiver location was not granted": "No se concedió la ubicación del receptor",
"RTL-SDR disconnected": "RTL-SDR desconectado",
"No RTL-SDR device selected": "No hay ningún dispositivo RTL-SDR seleccionado",
"WebUSB requires desktop Chrome or Edge on localhost/HTTPS": "WebUSB requiere Chrome o Edge de escritorio en localhost/HTTPS",
"RTL-SDR access failed; close other SDR apps and check USB permissions": "No se pudo acceder al RTL-SDR; cierra otras apps de SDR y revisa los permisos USB",
"RTL-SDR connection failed": "La conexión con el RTL-SDR falló",
"Receiving 1090 MHz ADS-B": "Recibiendo ADS-B en 1090 MHz",
"Receiving broadcast FM": "Recibiendo FM de radiodifusión",
"Connect an RTL-SDR to begin.": "Conecta un RTL-SDR para empezar.",
"WebUSB is unavailable in this browser": "WebUSB no está disponible en este navegador",
"SDR decoder worker failed": "El worker del decodificador SDR falló",
"WebUSB requires desktop Chrome or Edge": "WebUSB requiere Chrome o Edge de escritorio",
"Waiting for an RTL-SDR device…": "Esperando un dispositivo RTL-SDR…",
"Browser audio is suspended; press Connect again to resume it": "El audio del navegador está suspendido; pulsa Conectar de nuevo para reanudarlo",
"Return map to straight-down view": "Volver el mapa a la vista cenital",
"Tilt map to oblique view": "Inclinar el mapa a una vista oblicua",
"Reset map to north up. Current heading {heading} degrees": "Orientar el mapa al norte. Rumbo actual: {heading} grados",
"HDG": "HDG",
"PITCH": "PITCH",
"FOV": "FOV",
"RANGE": "RANGE",
"HGT": "HGT",
"{value} KM/H": "{value} KM/H",
"NORMAL": "NORMAL",
"ANIME": "ANIME",
"NOIR": "NOIR",
"Rendered globe frames per second · toggle with `": "Fotogramas por segundo renderizados del globo · alterna con `",
"Utilities": "Utilidades",
"Other layers": "Otras capas",
"Movement": "Movimiento",
"Infrastructure": "Infraestructura",
"Events": "Eventos",
"Weather": "Clima",
"LOCATED": "UBICADO",
"LOCATE": "UBICAR",
"IDLE": "INACTIVO",
"TUNING": "SINTONIZANDO",
"STREAMING": "TRANSMITIENDO",
"UNSUPPORTED": "NO COMPATIBLE",
"waiting for IQ": "esperando IQ",
"{count} messages": {
"one": "{count} mensaje",
"many": "{count} de mensajes",
"other": "{count} mensajes"
},
"DSP {count} blocks": {
"one": "DSP {count} bloque",
"many": "DSP {count} de bloques",
"other": "DSP {count} bloques"
},
"DSP waiting": "DSP en espera",
"{level} dBFS audio": "audio {level} dBFS",
"audio signal --": "señal de audio --",
"audio {state}": "audio {state}",
"{count} HEARD": {
"one": "{count} OÍDA",
"many": "{count} DE OÍDAS",
"other": "{count} OÍDAS"
},
"DISCONNECT": "DESCONECTAR",
"CONNECT": "CONECTAR",
"LOCATING…": "UBICANDO…",
"Drag to resize · double-click the header to snap back": "Arrastra para cambiar el tamaño · doble clic en el encabezado para restaurarlo",
"CH {index} / {total}": "CANAL {index} / {total}",
"Station unavailable after directory refresh": "Emisora no disponible tras actualizar el directorio",
"Clear reading": "Borrar lectura",
"Earlier observation": "Observación anterior",
"Observed history": "Historial observado",
"Later observation": "Observación posterior",
"Latest": "Último",
"Newest frame per product": "Fotograma más reciente por producto",
"Replay observed history": "Reproducir el historial observado",
"S on another day replaces it · × unpins": "S en otro día lo reemplaza · × desfija",
"← → preview · S shows the focused day": "← → vista previa · S muestra el día enfocado",
"Recent imagery": "Imágenes recientes",
"ZOOM IN": "ACERCAR",
"Fly in until the view fits the 1,000 km limit": "Acércate hasta que la vista quepa en el límite de 1000 km",
"Imagery days, newest first · arrows move, S or A and B pin": "Días de imágenes, el más reciente primero · las flechas mueven, S o A y B fijan",
"On the map": "En el mapa",
"Mode": "Modo",
"Imagery on Esri · Google 3D returns when cleared": "Imágenes sobre Esri · Google 3D vuelve al borrarlas",
"Imagery opacity": "Opacidad de las imágenes",
"SWAP": "INTERCAMBIAR",
"VS BASEMAP": "VS MAPA BASE",
"Trade the two sides of the divider": "Intercambiar los dos lados del divisor",
"A / B": "A / B",
"Newest low-cloud day for this box · scene cloud, not box cloud": "Día más reciente con pocas nubes para este recuadro · nubes de la escena, no del recuadro",
"Newest day covering this box · cloudier than 20%": "Día más reciente que cubre este recuadro · más de un 20% de nubes",
"SELECT BOX": "SELECCIONAR RECUADRO",
"Drag a box on the map (Esc cancels)": "Arrastra un recuadro en el mapa (Esc cancela)",
"Newest day with imagery for this box · partial coverage": "Día más reciente con imágenes para este recuadro · cobertura parcial",
"USE VIEW": "USAR VISTA",
"Use the current view as the box": "Usar la vista actual como recuadro",
"Newest daily overview for this box": "Vista general diaria más reciente para este recuadro",
"Forget the box and its images": "Olvidar el recuadro y sus imágenes",
"newest clear day": "día despejado más reciente",
"newest day (cloudy)": "día más reciente (nublado)",
"newest day (partial coverage)": "día más reciente (cobertura parcial)",
"START HERE": "EMPIEZA AQUÍ",
"newest overview": "vista general más reciente",
"No imagery": "Sin imágenes",
"Checking": "Comprobando",
"Loading": "Cargando",
"PREVIEW": "VISTA PREVIA",
"Newest day with imagery for this box": "Día más reciente con imágenes para este recuadro",
"SHOW": "MOSTRAR",
"Pin {day} as {slot}": "Fijar {day} como {slot}",
"Show {day}": "Mostrar {day}",
"pinned {slot}": "fijado en {slot}",
"shown": "mostrado",
"preview": "vista previa",
"start here": "empieza aquí",
"No box": "Sin recuadro",
"Searching": "Buscando",
"Every day is empty here": "Todos los días están vacíos aquí",
"Sources off": "Fuentes desactivadas",
"VS": "VS",
"Not set": "Sin definir",
"Basemap": "Mapa base",
"Source off": "Fuente desactivada",
"Unpin {slot}": "Desfijar {slot}",
"Unpin the image": "Desfijar la imagen",
"EXPORT {slot}": "EXPORTAR {slot}",
"EXPORT": "EXPORTAR",
"Download {slot} as a PNG": "Descargar {slot} como PNG",
"Download the image as a PNG": "Descargar la imagen como PNG",
"Box {width} × {height} km": "Recuadro de {width} × {height} km",
"no imagery": "sin imágenes",
"Acquired {time}": "Adquirida {time}",
"cloud unknown": "nubosidad desconocida",
"Coverage {coverage}": "Cobertura {coverage}",
"unknown": "desconocida",
"START HERE · {reason}": "EMPIEZA AQUÍ · {reason}",
"Daily overview shows little detail in a box this small": "La vista general diaria muestra poco detalle en un recuadro tan pequeño",
"{percent}% cloud": "{percent}% de nubes",
"Imagery: NASA GIBS and Worldview · HLS (Sentinel-2, Landsat 8/9) and VIIRS": "Imágenes: NASA GIBS y Worldview · HLS (Sentinel-2, Landsat 8/9) y VIIRS",
"{min}–{max}% cloud": "{min}–{max}% de nubes",
"Details": "Detalles",
"Times, coverage, sources": "Horas, cobertura, fuentes",
"HIDE EMPTY DAYS": "OCULTAR DÍAS VACÍOS",
"SHOW EMPTY DAYS · {count}": "MOSTRAR DÍAS VACÍOS · {count}",
"Days the probe found empty in this box": "Días que el sondeo encontró vacíos en este recuadro",
"NO BOX": "SIN RECUADRO",
"image": "imagen",
"BASEMAP": "MAPA BASE",
"The basemap": "El mapa base",
"basemap": "mapa base",
"SEARCHING": "BUSCANDO",
"{count} DAYS": {
"one": "{count} DÍA",
"many": "{count} DE DÍAS",
"other": "{count} DÍAS"
},
"Recent imagery against the basemap divider": "Divisor de imágenes recientes frente al mapa base",
"Recent imagery A and B divider": "Divisor A y B de imágenes recientes",
"{before} {left} percent, {after} {right} percent": "{before} {left} por ciento, {after} {right} por ciento",
"Zoom in or draw a smaller box": "Acércate o dibuja un recuadro más pequeño",
"Select a box or use the view": "Selecciona un recuadro o usa la vista",
"Searching the last 30 days": "Buscando en los últimos 30 días",
"No days to show for this box": "No hay días que mostrar para este recuadro",
"Drag the divider · SWAP trades sides": "Arrastra el divisor · INTERCAMBIAR cambia los lados",
"Export failed · {error}": "La exportación falló · {error}",
"← → preview · A or B pins the focused day": "← → vista previa · A o B fija el día enfocado",
"← → preview the other side · A or B pins it": "← → vista previa del otro lado · A o B lo fija",
"LOAD": "CARGAR",
"No shots yet. Use CAPTURE SHOT to save current look.": "Aún no hay planos. Usa CAPTURAR PLANO para guardar el aspecto actual.",
"Double-click to rename": "Doble clic para cambiar el nombre",
"Shot name": "Nombre del plano",
"RETRYING ALPR CAMERAS": "REINTENTANDO CÁMARAS ALPR",
"FETCHING ALPR CAMERAS": "OBTENIENDO CÁMARAS ALPR",
"OVERPASS TEMPORARILY UNAVAILABLE": "OVERPASS TEMPORALMENTE NO DISPONIBLE",
"Weather data by Open-Meteo.com": "Datos meteorológicos de Open-Meteo.com",
"ESC EXIT": "ESC SALIR",
"C TOGGLE": "C ALTERNAR",
"SIG": "SIG",
"NEWS": "NEWS",
"LOCAL": "LOCAL",
"Cockpit briefing pages": "Páginas de información de la cabina",
"MM": "MM",
"KTS": "KN",
"FT": "FT",
"FLT": "FLT",
"MIL": "MIL",
"SITE": "SITE",
"WX": "WX",
"DIRECTORY: RADIO BROWSER": "DIRECTORIO: RADIO BROWSER",
"Use your location for faster ADS-B position decoding": "Usa tu ubicación para decodificar más rápido las posiciones ADS-B",
"CHANGE DEVICE": "CAMBIAR DISPOSITIVO",
"Choose a different RTL-SDR or receiver channel": "Elige otro RTL-SDR u otro canal del receptor",
"TUNE": "SINTONIZAR",
"◀ SEEK": "◀ BUSCAR",
"SEEK ▶": "BUSCAR ▶",
"Local RTL-SDR receiver": "Receptor RTL-SDR local",
"RTL-SDR receiver mode": "Modo del receptor RTL-SDR",
"Seek broadcast FM stations": "Buscar emisoras de FM",
"Tune available internet radio stations": "Sintonizar las emisoras de radio por Internet disponibles",
"Local SDR volume": "Volumen del SDR local",
"GAIN": "GANANCIA",
"FM MHZ": "FM MHZ",
"AUTO": "AUTO",
"Chrome/Edge · WebUSB · one local tuner shared by FM and the Local ADS-B layer.": "Chrome/Edge · WebUSB · un sintonizador local compartido por FM y la capa ADS-B local.",
"RTL-SDR tuner gain for the current mode": "Ganancia del sintonizador RTL-SDR para el modo actual",
"WEATHER": "CLIMA",
"Active weather products": "Productos meteorológicos activos",
"RECENT IMAGERY": "IMÁGENES RECIENTES",
"Imagery days in the box": "Días de imágenes en el recuadro",
"MSG/S": "MSG/S",
"HEARD": "OÍDAS",
"POSITIONED": "POSICIONADAS",
"SDR VOL": "VOL. SDR",
"LOCAL RTL-SDR": "RTL-SDR LOCAL",
"Cyber sonar contact scanner": "Escáner sonar de contactos Cyber",
"Sonar ring count": "Número de anillos del sonar",
"Sonar ring range": "Alcance de los anillos del sonar",
"Sonar intensity": "Intensidad del sonar",
"Cyber contact and label opacity": "Opacidad de contactos y etiquetas Cyber",
"Minimum opacity for map dots, icons, models, brackets, and labels between sonar passes": "Opacidad mínima de puntos, iconos, modelos, corchetes y etiquetas del mapa entre pasadas del sonar",
"Sonar sector width": "Ancho del sector del sonar",
"Rings": "Anillos",
"Range": "Alcance",
"Power": "Potencia",
"Opacity": "Opacidad",
"Sector": "Sector",
"Cyber": "Cyber",
"Sonar": "Sonar",
"Turn Street Level on or off": "Activar o desactivar A pie de calle",
"Toggle straight-down and tilted map views": "Alternar entre la vista cenital y la vista inclinada del mapa",
"Reset map to north up": "Orientar el mapa al norte",
"Reset map bearing to north": "Restablecer la orientación del mapa al norte",
"Rain radar": "Radar de lluvia",
"Lightning density": "Densidad de rayos",
"LATEST · newest per product": "ÚLTIMO · más reciente por producto",
"Forecast · valid {valid} · issued {issued}": "Pronóstico · válido {valid} · emitido {issued}",
"{detail} · Does not follow history": "{detail} · No sigue el historial",
"Forecast · valid {valid}": "Pronóstico · válido {valid}",
"{time} · {minutes} min ago": "{time} · hace {minutes} min",
"Active weather": "Clima activo",
"MINI": "MINI",
"STD": "STD",
"standard": "estándar",
"mini": "mini",
"COST UNKNOWN": "COSTO DESCONOCIDO",
"ChatGPT OAuth session: {responses} response(s), {input} input and {output} output tokens, {captions} caption transcription(s) reported.": "Sesión OAuth de ChatGPT: {responses} respuesta(s), {input} tokens de entrada y {output} de salida, {captions} transcripción(es) de subtítulos informadas.",
"USD cost and the API spend cap are unavailable for this auth mode.": "El costo en USD y el límite de gasto de la API no están disponibles con este modo de autenticación.",
"Usage is incomplete because a response was still in flight when the session ended.": "El uso está incompleto porque una respuesta seguía en curso cuando terminó la sesión.",
"Toggle voice control": "Alternar el control de voz",
"Activate to toggle voice": "Activa para conectar o cortar la voz",
"Voice active": "Voz activa",
"Voice could not be started.": "No se pudo iniciar la voz.",
"degraded": "degradado",
"stale": "desactualizado",
"partial": "parcial",
"fallback": "respaldo",
"unavailable": "no disponible",
"{label} on": "{label}: activado",
"{label} off": "{label}: desactivado",
"Frame aircraft": "Encuadrar aeronaves",
"Frame military aircraft": "Encuadrar aeronaves militares",
"Frame ships": "Encuadrar buques",
"Frame satellites": "Encuadrar satélites",
"Frame contacts": "Encuadrar contactos",
"{count} aircraft in frame": {
"one": "{count} aeronave en el encuadre",
"many": "{count} de aeronaves en el encuadre",
"other": "{count} aeronaves en el encuadre"
},
"{count} military aircraft in frame": {
"one": "{count} aeronave militar en el encuadre",
"many": "{count} de aeronaves militares en el encuadre",
"other": "{count} aeronaves militares en el encuadre"
},
"{count} ships in frame": {
"one": "{count} buque en el encuadre",
"many": "{count} de buques en el encuadre",
"other": "{count} buques en el encuadre"
},
"{count} satellites in frame": {
"one": "{count} satélite en el encuadre",
"many": "{count} de satélites en el encuadre",
"other": "{count} satélites en el encuadre"
},
"{count} contacts in frame": {
"one": "{count} contacto en el encuadre",
"many": "{count} de contactos en el encuadre",
"other": "{count} contactos en el encuadre"
},
"Nearest military aircraft": "Aeronaves militares más cercanas",
"Nearest ships": "Buques más cercanos",
"Nearest satellites": "Satélites más cercanos",
"Nearest aircraft": "Aeronaves más cercanas",
"{first} and {second}": "{first} y {second}",
"Camera range {range}": "Alcance de la cámara {range}",
"Within {radius} of the view": "En un radio de {radius} desde la vista",
"Labels on": "Etiquetas activadas",
"Framing uses the nearest 80 loaded contacts": "El encuadre usa los 80 contactos cargados más cercanos",
"{distance} from {location}": "A {distance} de {location}",
"Altitude {altitude}": "Altitud {altitude}",
"{origin} to {destination}": "{origin} a {destination}",
"from {origin}": "desde {origin}",
"to {destination}": "a {destination}",
"Registration {registration}": "Matrícula {registration}",
"Route {route}": "Ruta {route}",
"View state": "Estado de la vista",
"Marked {count} places": {
"one": "{count} lugar marcado",
"many": "{count} de lugares marcados",
"other": "{count} lugares marcados"
},
"Nothing marked": "Nada marcado",
"Not found: {places}": "No encontrado: {places}",
"Tracing outlines": "Trazando contornos",
"Mark the map": "Marcar el mapa",
"Mark {targets} +{more}": "Marcar {targets} +{more}",
"Mark {targets}": "Marcar {targets}",
"Fly to {place}": "Volar a {place}",
"Nearest aircraft to {place}": "Aeronaves más cercanas a {place}",
"Read the view": "Leer la vista",
"Check view state": "Comprobar el estado de la vista",
"Frame {target}": "Encuadrar {target}",
"Finding places": "Buscando lugares",
"Tracing outline": "Trazando contorno",
"Looking up place": "Buscando lugar",
"Flying": "Volando",
"Turning on layer": "Activando capa",
"Loading aircraft": "Cargando aeronaves",
"Picking nearest": "Eligiendo la más cercana",
"Working": "Trabajando",
"{value} feet": "{value} pies",
"nominal": "nominal",
"Source: {label}": "Fuente: {label}",
"N": "N",
"NNE": "NNE",
"NE": "NE",
"ENE": "ENE",
"E": "E",
"ESE": "ESE",
"SE": "SE",
"SSE": "SSE",
"S": "S",
"SSW": "SSO",
"SW": "SO",
"WSW": "OSO",
"W": "O",
"WNW": "ONO",
"NW": "NO",
"NNW": "NNO",
"Local ADS-B": "ADS-B local",
"Transit": "Transporte público",
"Recent Imagery": "Imágenes recientes",
"Fire Perimeters": "Perímetros de incendios",
"Cyclone advisories": "Avisos de ciclones",
"EDIT DETAILS": "EDITAR DETALLES",
"SHARE SCENE": "COMPARTIR ESCENA",
"ON/OFF": "ON/OFF",
"Voice assistant": "Asistente de voz",
"VOICE": "VOZ",
"Dismiss voice card": "Cerrar la tarjeta de voz",
"YOU": "TÚ",
"THIS": "ESTO",
"HERE": "AQUÍ",
"Plan": "Plan",
"Referenced items": "Elementos citados",
"NOTES & SOURCES": "NOTAS Y FUENTES",
"ΔN": "ΔN",
"ΔE": "ΔE"
}
+846 -4
View File
@@ -372,7 +372,7 @@
"REGIONAL NEWS": "РЕГИОНАЛЬНЫЕ НОВОСТИ",
"CYCLE ON": "АВТОЛИСТАНИЕ ВКЛ",
"CYCLE OFF": "АВТОЛИСТАНИЕ ВЫКЛ",
"Stop automatic page cycling. Previous, Next, and the SIG/NEWS/LOCAL tabs stay available.": "Остановить автоматическое листание страниц. Кнопки ПРЕД./СЛЕД. и вкладки SIG/NEWS/LOCAL остаются доступны.",
"Stop automatic page cycling. Previous, Next, and the SIG/NEWS/LOCAL tabs stay available.": "Остановить автоматическое листание страниц. Кнопки ПРЕД./СЛЕД. и вкладки СИГН./НОВОСТИ/МЕСТН. остаются доступны.",
"Cycle briefing pages automatically every 9 seconds (Signals → News → Local). Pauses while you hover or focus the panel. Live signal data refreshes continuously either way.": "Автоматически листать страницы брифинга каждые 9 секунд (Сигналы → Новости → Местное). При наведении или фокусе на панели листание приостанавливается. Данные сигналов в реальном времени в любом случае обновляются непрерывно.",
"{cohort}, Unavailable": "{cohort}, недоступно",
"AHEAD": "ПО КУРСУ",
@@ -618,8 +618,8 @@
"Cockpit display and Radio controls": "Управление экраном и радио кабины",
"Previous cockpit vision style": "Предыдущий стиль обзора кабины",
"Previous vision style": "Предыдущий стиль обзора",
"Current cockpit vision style: NORMAL. Activate for next style.": "Текущий стиль обзора кабины: NORMAL. Активируйте для следующего стиля.",
"Current style: NORMAL — click for next": "Текущий стиль: NORMAL — нажмите для следующего",
"Current cockpit vision style: NORMAL. Activate for next style.": "Текущий стиль обзора кабины: ОБЫЧНЫЙ. Активируйте для следующего стиля.",
"Current style: NORMAL — click for next": "Текущий стиль: ОБЫЧНЫЙ — нажмите для следующего",
"Next cockpit vision style": "Следующий стиль обзора кабины",
"Next vision style": "Следующий стиль обзора",
"Previous briefing page": "Предыдущая страница брифинга",
@@ -990,5 +990,847 @@
"ALL": "ВСЕ",
"FLAT": "ПЛОСКИЕ",
"SINCE": "С ДАТЫ",
"Coverage colours": "Цвета покрытия"
"Coverage colours": "Цвета покрытия",
"That shape already has {count} points — finish it or press Backspace.": "В этой фигуре уже точек: {count} — завершите её или нажмите Backspace.",
"Could not place the shape: {error}": "Не удалось разместить фигуру: {error}",
"{owner} is using the pointer — close it first.": "Указатель занят инструментом {owner} — сначала закройте его.",
"{label} · Detailed outline unavailable": "{label} · Подробный контур недоступен",
"Witness source": "Свидетельство очевидца",
"{provider} · EMBEDDED SOURCE": "{provider} · ВСТРОЕННЫЙ ИСТОЧНИК",
"OPEN ORIGINAL ↗": "ОТКРЫТЬ ОРИГИНАЛ ↗",
"{provider} media: {source}": "Медиа {provider}: {source}",
"{provider} · PROVIDER CONTROLS": "{provider} · УПРАВЛЕНИЕ ПРОВАЙДЕРА",
"YOUTUBE {state} · OPEN ORIGINAL": "YOUTUBE {state} · ОТКРЫТЬ ОРИГИНАЛ",
"Facebook player API did not initialize.": "API плеера Facebook не инициализировался.",
"Facebook player API could not load.": "Не удалось загрузить API плеера Facebook.",
"Facebook player API timed out.": "Истекло время ожидания API плеера Facebook.",
"X embed API did not initialize.": "API встраивания X не инициализировался.",
"X embed could not load.": "Не удалось загрузить встраивание X.",
"X embed timed out.": "Истекло время ожидания встраивания X.",
"TIMEOUT": "ТАЙМАУТ",
"BLOCKED": "ЗАБЛОКИРОВАНО",
"Facebook embed unavailable. The post may be private, removed, region-restricted, or blocked.": "Встраивание Facebook недоступно. Публикация может быть закрытой, удалённой, ограниченной по региону или заблокированной.",
"Preloading {provider} media": "Предзагрузка медиа {provider}",
"LOADING X POST…": "ЗАГРУЗКА ПОСТА X…",
"The X post is unavailable or cannot be embedded.": "Пост X недоступен или не может быть встроен.",
"X POST · PROVIDER CONTROLS": "ПОСТ X · УПРАВЛЕНИЕ ПРОВАЙДЕРА",
"{reason} OPEN ORIGINAL.": "{reason} ОТКРОЙТЕ ОРИГИНАЛ.",
"X embed unavailable": "Встраивание X недоступно",
"FACEBOOK · PROVIDER CONTROLS": "FACEBOOK · УПРАВЛЕНИЕ ПРОВАЙДЕРА",
"Facebook embed unavailable": "Встраивание Facebook недоступно",
"AUTOPLAY BLOCKED · USE PROVIDER CONTROLS": "АВТОВОСПРОИЗВЕДЕНИЕ ЗАБЛОКИРОВАНО · ИСПОЛЬЗУЙТЕ УПРАВЛЕНИЕ ПРОВАЙДЕРА",
"Embedded {provider} media for {source}": "Встроенное медиа {provider}: {source}",
"witness source": "свидетельство очевидца",
"Rasuwagadhi witness": "Очевидец в Rasuwagadhi",
"Open original source for {source}; capture time unverified": "Открыть исходный источник: {source}; время съёмки не подтверждено",
"Historical reference and post-event image divider": "Разделитель исторического снимка и снимка после события",
"A historical reference {before} percent, B post-event {after} percent": "A — исторический снимок: {before}%, B — после события: {after}%",
"■ RELEASE CAMERA": "■ ОСВОБОДИТЬ КАМЕРУ",
"Seek Nepal scene clock": "Перемотка часов непальской сцены",
"NEPAL SCENE CLOCK": "ЧАСЫ НЕПАЛЬСКОЙ СЦЕНЫ",
"… PLAYING SHOT": "… ИДЁТ КАДР",
"▶ PLAY SHOT": "▶ ПУСК КАДРА",
"Ⅱ PAUSE": "Ⅱ ПАУЗА",
"↺ REPLAY CINEMATIC": "↺ ПОВТОРИТЬ КИНОРЕЖИМ",
"↺ REPLAY": "↺ ПОВТОРИТЬ",
"… PLAYING SCENE": "… ИДЁТ СЦЕНА",
"Continue {scene} from next shot": "Продолжить со следующего кадра: {scene}",
"current scene": "текущая сцена",
"Replay the full reconstruction": "Повторить всю реконструкцию",
"SCENE SHOT": "КАДР СЦЕНЫ",
"TIME UNVERIFIED": "ВРЕМЯ НЕ ПОДТВЕРЖДЕНО",
"{count} SOURCES": {
"one": "{count} ИСТОЧНИК",
"few": "{count} ИСТОЧНИКА",
"many": "{count} ИСТОЧНИКОВ",
"other": "{count} ИСТОЧНИКА"
},
"OUTSIDE IMAGERY SWIPE": "ВНЕ СРАВНЕНИЯ СНИМКОВ",
"{scene} / AUTHORED SHOT": "{scene} / АВТОРСКИЙ КАДР",
"NEPAL FLOOD INCIDENT": "НАВОДНЕНИЕ В НЕПАЛЕ",
"Play {shot}": "Воспроизвести: {shot}",
"current scene shot": "текущий кадр сцены",
"Play reconstruction": "Воспроизвести реконструкцию",
"Load previous scene shot": "Загрузить предыдущий кадр сцены",
"Load next scene shot": "Загрузить следующий кадр сцены",
"SCHEMATIC CORRIDOR, NOT MODELED ARRIVAL TIME.": "СХЕМАТИЧЕСКИЙ КОРИДОР, НЕ МОДЕЛЬ ВРЕМЕНИ ПРИХОДА.",
"Rasuwa · 26 Aug 2026": "Rasuwa · 26 авг. 2026",
"Event reconstruction": "Реконструкция события",
"INITIATION": "ЗАРОЖДЕНИЕ",
"DAMMING": "ЗАПРУДА",
"SECONDARY FAILURE": "ВТОРИЧНЫЙ ПРОРЫВ",
"BORDER ARRIVAL": "ДОСТИЖЕНИЕ ГРАНИЦЫ",
"PROPAGATION": "РАСПРОСТРАНЕНИЕ",
"DOWNSTREAM PASSAGE": "ПРОХОЖДЕНИЕ ВНИЗ ПО ТЕЧЕНИЮ",
"CONSEQUENCE": "ПОСЛЕДСТВИЯ",
"DOWNSTREAM CONSEQUENCE": "ПОСЛЕДСТВИЯ НИЖЕ ПО ТЕЧЕНИЮ",
"EVIDENCE": "СВИДЕТЕЛЬСТВА",
"{count} GEOLOCATED SOURCE-MAP PLACEMENTS": {
"one": "{count} ГЕОПРИВЯЗАННАЯ МЕТКА НА КАРТЕ ИСТОЧНИКОВ",
"few": "{count} ГЕОПРИВЯЗАННЫЕ МЕТКИ НА КАРТЕ ИСТОЧНИКОВ",
"many": "{count} ГЕОПРИВЯЗАННЫХ МЕТОК НА КАРТЕ ИСТОЧНИКОВ",
"other": "{count} ГЕОПРИВЯЗАННОЙ МЕТКИ НА КАРТЕ ИСТОЧНИКОВ"
},
"NO PREVIEW": "НЕТ ПРЕДПРОСМОТРА",
"SOURCE LINK": "ССЫЛКА НА ИСТОЧНИК",
"{publisher} / OPEN": "{publisher} / ОТКРЫТЬ",
"Bhote Koshi flood reconstruction controls": "Управление реконструкцией наводнения на Bhote Koshi",
"EVENT RECONSTRUCTION · 26 AUG 2026": "РЕКОНСТРУКЦИЯ СОБЫТИЯ · 26 АВГ. 2026",
"BHOTE KOSHI OUTBURST FLOOD": "ПРОРЫВНОЙ ПАВОДОК НА BHOTE KOSHI",
"Close event layer": "Закрыть слой события",
"OBSERVED IMAGERY": "НАБЛЮДАЕМЫЕ СНИМКИ",
"SCHEMATIC CORRIDOR": "СХЕМАТИЧЕСКИЙ КОРИДОР",
"2021 HISTORICAL REFERENCE / 2026 POST-EVENT": "2021 ИСТОРИЧЕСКИЙ СНИМОК / 2026 ПОСЛЕ СОБЫТИЯ",
"Historical reference and post-event image split": "Сравнение исторического снимка и снимка после события",
"RECONSTRUCTION CLOCK": "ЧАСЫ РЕКОНСТРУКЦИИ",
"Schematic downstream progression": "Схематическое продвижение вниз по течению",
"Story beat navigation": "Навигация по этапам сюжета",
"Previous story beat": "Предыдущий этап сюжета",
"CAUSE": "ПРИЧИНА",
"CAPTURE TIME UNVERIFIED": "ВРЕМЯ СЪЁМКИ НЕ ПОДТВЕРЖДЕНО",
"Next story beat": "Следующий этап сюжета",
"▶ PLAY": "▶ ПУСК",
"Play the next shot and continue through this scene": "Воспроизвести следующий кадр и продолжить эту сцену",
"▶ PLAY SCENE": "▶ ПУСК СЦЕНЫ",
"◉ CINEMATIC": "◉ КИНОРЕЖИМ",
"↺ FULL STORY": "↺ ВСЯ ИСТОРИЯ",
"↗ OPEN ORIGINAL": "↗ ОТКРЫТЬ ОРИГИНАЛ",
"⌖ LOWER GORGE": "⌖ НИЖНЕЕ УЩЕЛЬЕ",
"FIELD REPORTS · {count}": "СООБЩЕНИЯ С МЕСТА · {count}",
"GEOLOCATIONS · {credit}": "ГЕОЛОКАЦИИ · {credit}",
"↗ OPEN PUBLIC MAP": "↗ ОТКРЫТЬ ПУБЛИЧНУЮ КАРТУ",
"Clouds are preserved from the source imagery.": "Облака сохранены из исходных снимков.",
"Show the Nepal context callout without a border or country fill": "Показать выноску с контекстом Непала без границы и заливки страны",
"Introduce Nepal, draw its border, then reveal the Bhote Koshi incident": "Представить Непал, нарисовать его границу, затем показать инцидент на Bhote Koshi",
"CITIES": "ГОРОДА",
"Keep the regional incident context and introduce nearby city labels": "Сохранить региональный контекст инцидента и добавить подписи ближайших городов",
"PLACES": "МЕСТА",
"Introduce the reconstruction scene key places from trigger to downstream": "Показать ключевые места сцены реконструкции — от источника события до низовья",
"PATH": "ПУТЬ",
"Animate the sourced cyan river-centerline route to Trishuli Bazaar": "Анимировать голубой маршрут по оси реки до Trishuli Bazaar по данным источников",
"OVERVIEW": "ОБЗОР",
"Keep the completed flood path and location labels visible": "Оставить на экране весь путь паводка и подписи мест",
"RECORD": "ЗАПИСЬ",
"Reveal the trigger record while making a slow camera approach": "Показать запись о первопричине при медленном приближении камеры",
"BHOTE KOSHI FLOOD INCIDENT": "НАВОДНЕНИЕ НА BHOTE KOSHI",
"NEPAL · 26 AUG 2026": "НЕПАЛ · 26 АВГ. 2026",
"USGS INITIAL REPORT": "ПЕРВИЧНОЕ СООБЩЕНИЕ USGS",
"26 AUG 2026 · 08:37 NPT": "26 АВГ. 2026 · 08:37 NPT",
"28.2710° N · 85.5150° E": "28,2710° С. Ш. · 85,5150° В. Д.",
"INITIAL M4.4 · RECLASSIFIED M5.2 LANDSLIDE": "ПЕРВОНАЧАЛЬНО M4,4 · ПЕРЕКЛАССИФИЦИРОВАНО: ОПОЛЗЕНЬ M5,2",
"USGS EVENT us7000tbwb · OPEN SOURCE": "СОБЫТИЕ USGS us7000tbwb · ОТКРЫТЬ ИСТОЧНИК",
"flight": "рейс",
"military flight": "военный рейс",
"satellite": "спутник",
"VOICE AUTH · CHATGPT OAUTH": "АВТОРИЗАЦИЯ ГОЛОСА · CHATGPT OAUTH",
"VOICE AUTH · API KEY": "АВТОРИЗАЦИЯ ГОЛОСА · КЛЮЧ API",
"USE API KEY": "ИСПОЛЬЗОВАТЬ КЛЮЧ API",
"USE CHATGPT OAUTH": "ИСПОЛЬЗОВАТЬ CHATGPT OAUTH",
"Use OPENAI_API_KEY for the next cloud voice session": "Использовать OPENAI_API_KEY для следующей облачной голосовой сессии",
"Use the signed-in local ChatGPT/Codex OAuth session for the next cloud voice session": "Использовать локальную OAuth-сессию ChatGPT/Codex, в которую выполнен вход, для следующей облачной голосовой сессии",
"Metered — a billing-enabled account": "Платный — нужен аккаунт с включённой оплатой",
"Free key — register, paste, done": "Бесплатный ключ — зарегистрируйтесь, вставьте, готово",
"browser-side": "в браузере",
"This key runs in the browser by design — restrict it at the provider (see SECURITY.md)": "Этот ключ по задумке работает в браузере — ограничьте его у провайдера (см. SECURITY.md)",
"configured externally": "задан извне",
"Supplied by your environment, Keychain, or launcher — change it where it was set": "Задан окружением, Keychain или лаунчером — меняйте его там, где он задан",
"MANAGE ↗": "УПРАВЛЯТЬ ↗",
"GET KEY ↗": "ПОЛУЧИТЬ КЛЮЧ ↗",
"{envVar} saved — paste to replace": "{envVar} сохранён — вставьте, чтобы заменить",
"paste {envVar}": "вставьте {envVar}",
"Project keys: {status}": "Ключи проекта: {status}",
"Mapped camera locations": "Расположение камер на карте",
"SHOW NEAREST": "ПОКАЗАТЬ БЛИЖАЙШУЮ",
"Stop following the current object before navigating to a camera": "Прекратите следовать за текущим объектом, прежде чем переходить к камере",
"Move to the nearest loaded camera and show its details": "Перейти к ближайшей загруженной камере и показать её данные",
"Camera badges": "Значки камер",
"Cyan cameras turn coral when selected. Wedges illustrate mapped direction, not measured coverage. Nearby cameras may be outside the screen.": "Голубые камеры при выборе становятся коралловыми. Секторы показывают направление по карте, а не измеренное покрытие. Ближайшие камеры могут быть за пределами экрана.",
"{count} nearby · {onScreen} on screen": {
"one": "рядом: {count} · на экране: {onScreen}",
"few": "рядом: {count} · на экране: {onScreen}",
"many": "рядом: {count} · на экране: {onScreen}",
"other": "рядом: {count} · на экране: {onScreen}"
},
"{count} nearby": {
"one": "рядом: {count}",
"few": "рядом: {count}",
"many": "рядом: {count}",
"other": "рядом: {count}"
},
"retrying mapped ALPR cameras": "повторная загрузка камер ALPR",
"loading mapped ALPR cameras": "загрузка камер ALPR",
"No ALPR data for this area — US and Canada only": "Нет данных ALPR для этой области — только США и Канада",
"Zoom in to load mapped cameras": "Приблизьте карту, чтобы загрузить камеры",
"Showing cached locations": "Показаны места из кэша",
"Coverage limited — zoom in": "Покрытие ограничено — приблизьте карту",
"No ALPR data for this area": "Нет данных ALPR для этой области",
"None on screen — nearby cameras are outside the view": "На экране нет — ближайшие камеры вне поля зрения",
"ALPR camera": "Камера ALPR",
"OpenStreetMap · community mapped": "OpenStreetMap · нанесено сообществом",
"Atlantic and eastern/central North Pacific; not worldwide cyclone coverage.": "Атлантика и восточная/центральная часть северной Пацифики; покрытие циклонов не глобальное.",
"Potential tropical cyclone": "Потенциальный тропический циклон",
"Hurricane": "Ураган",
"Tropical storm": "Тропический шторм",
"Tropical depression": "Тропическая депрессия",
"Subtropical storm": "Субтропический шторм",
"Subtropical depression": "Субтропическая депрессия",
"Track and cone match this advisory": "Трек и конус соответствуют этому бюллетеню",
"Track/cone awaiting advisory {number}": "Трек/конус ожидают бюллетень {number}",
"Track/cone unavailable": "Трек/конус недоступны",
"Cached advisory · stale source": "Бюллетень из кэша · источник устарел",
"Loading advisories…": "Загрузка бюллетеней…",
"{count} active storms": {
"one": "{count} активный шторм",
"few": "{count} активных шторма",
"many": "{count} активных штормов",
"other": "{count} активного шторма"
},
"Position as of {time}": "Положение на {time}",
"Maximum sustained wind: {wind} · Pressure: {pressure}": "Макс. устойчивый ветер: {wind} · Давление: {pressure}",
"{name} · {classification} · Advisory {number} · issued {time}": "{name} · {classification} · Бюллетень {number} · выпущен {time}",
"No active NHC/CPHC systems": "Нет активных систем NHC/CPHC",
"Advisories unavailable": "Бюллетени недоступны",
"Cyclones · NHC / CPHC": "Циклоны · NHC / CPHC",
"Atlantic · E/C Pacific": "Атлантика · вост./центр. Пацифика",
"{storms} · {name} selected": "{storms} · выбран {name}",
"Official advisory ↗": "Официальный бюллетень ↗",
"Active NHC and CPHC cyclone advisories": "Активные бюллетени NHC и CPHC о циклонах",
"Wind unavailable": "Ветер: нет данных",
"Advisory center / forecast track": "Центр по бюллетеню / прогнозный трек",
"Center-track uncertainty cone": "Конус неопределённости трека центра",
"Select a storm on the map, or choose a storm in the list to select it and move the camera. Click empty map space to clear the selection. NOAA NHC/CPHC advisory context. The cone describes forecast center-track uncertainty, not storm size or the full hazard area. Forecast point labels are source lead hours, not times computed from advisory issuance. Geometry follows the surface; height is not weather altitude. Consult the official advisory.": "Выберите шторм на карте или в списке, чтобы выделить его и переместить к нему камеру. Щёлкните по пустому месту карты, чтобы снять выделение. Контекст бюллетеней NOAA NHC/CPHC. Конус описывает неопределённость прогнозного трека центра, а не размер шторма или всю зону опасности. Подписи прогнозных точек — заблаговременность источника в часах, а не время, рассчитанное от выпуска бюллетеня. Геометрия следует поверхности; высота не отражает высоту погодных явлений. Сверяйтесь с официальным бюллетенем.",
"Directions": "Маршруты",
"{mode} — reroute for {modeLower}": "{mode} — перестроить маршрут: {modeLower}",
"CLICK MAP": "ЩЁЛКНИТЕ ПО КАРТЕ",
"SET A": "ЗАДАТЬ A",
"Click a spot on the globe to place A (click again to cancel)": "Щёлкните точку на глобусе, чтобы поставить A (повторный щелчок — отмена)",
"Then click the globe to place the start": "Затем щёлкните по глобусу, чтобы поставить начало",
"SET B": "ЗАДАТЬ B",
"Click a spot on the globe to place B (click again to cancel)": "Щёлкните точку на глобусе, чтобы поставить B (повторный щелчок — отмена)",
"Then click the globe to place the destination": "Затем щёлкните по глобусу, чтобы поставить пункт назначения",
"Swap A and B": "Поменять A и B местами",
"FLY ···": "ПОЛЁТ ···",
"FLYING": "В ПОЛЁТЕ",
"FLY": "ПОЛЁТ",
"Fly the camera along the route": "Пролететь камерой по маршруту",
"Place A and B first": "Сначала поставьте A и B",
"Remove the route and both markers": "Удалить маршрут и обе метки",
"press Escape twice to leave Draw": "дважды нажмите Escape, чтобы выйти из режима «Рисование»",
"{name} is active — turn {name} off, then set {endpoint}": "Активно: {name} — выключите {name}, затем задайте {endpoint}",
"{name} is active — {leave}, then set {endpoint}": "Активно: {name} — {leave}, затем задайте {endpoint}",
"Only the first {count} turns of this route are shown": "Показаны только первые повороты маршрута: {count}",
"Turn-by-turn directions": "Пошаговые указания",
"OSM routing": "Маршрутизация OSM",
"DRIVE": "АВТО",
"Drive": "На машине",
"Another map tool is using clicks — close it, then SET A again": "Щелчки занимает другой инструмент карты — закройте его и снова нажмите ЗАДАТЬ A",
"WALK": "ПЕШКОМ",
"Walk": "Пешком",
"Routing…": "Построение маршрута…",
"BIKE": "ВЕЛО",
"Bike": "На велосипеде",
"No route found": "Маршрут не найден",
"{distance} · {duration} · {mode} · first {count} turns": "{distance} · {duration} · {mode} · первые повороты: {count}",
"{distance} · {duration} · {mode}": "{distance} · {duration} · {mode}",
"Click the globe to place {endpoint}": "Щёлкните по глобусу, чтобы поставить {endpoint}",
"SET B, then click the globe": "Нажмите ЗАДАТЬ B, затем щёлкните по глобусу",
"SET A, then click the globe": "Нажмите ЗАДАТЬ A, затем щёлкните по глобусу",
"Step {step} of {total} · then {leg}": "Шаг {step} из {total} · затем {leg}",
"Step {step} of {total}": "Шаг {step} из {total}",
"Then: {instruction}": "Затем: {instruction}",
"No route found between A and B": "Маршрут между A и B не найден",
"Routing failed: {error}": "Не удалось построить маршрут: {error}",
"Routing timed out": "Истекло время построения маршрута",
"Routing unavailable — no response from the routing service": "Построение маршрута недоступно — сервис маршрутизации не отвечает",
"Routing unavailable": "Построение маршрута недоступно",
"Fire · FRP {frp} MW": "Пожар · FRP {frp} МВт",
"Not contained or unknown": "Не локализован или неизвестно",
"Under 50% contained": "Локализован менее чем на 50%",
"50–99% contained": "Локализован на 50–99%",
"Fully contained": "Полностью локализован",
"Colour shows reported containment. Perimeters are simplified to about 100 m.": "Цвет показывает заявленную степень локализации. Контуры упрощены примерно до 100 м.",
"MORE DETAIL · 30 m": "БОЛЬШЕ ДЕТАЛЕЙ · 30 м",
"Sentinel-2 and Landsat via HLS, 30 m, every 2–6 days": "Sentinel-2 и Landsat через HLS, 30 м, каждые 2–6 дней",
"DAILY OVERVIEW · 250 m": "ЕЖЕДНЕВНЫЙ ОБЗОР · 250 м",
"VIIRS daily mosaic, 250 m, follows broad changes; little detail under 25 km": "Ежедневная мозаика VIIRS, 250 м, показывает крупные изменения; мало деталей в масштабе менее 25 км",
"Catalog truncated · a newer clear day may exist": "Каталог усечён · может быть более новый ясный день",
"{label} catalog unavailable · {detail}": "Каталог {label} недоступен · {detail}",
"Daily overview for today may still be empty until the pass": "Ежедневный обзор за сегодня может оставаться пустым до пролёта спутника",
"Sentinel-2": "Sentinel-2",
"Landsat 8/9": "Landsat 8/9",
"Daily overview": "Ежедневный обзор",
"No frame within {gap} min of {time}": "Нет кадра в пределах {gap} мин от {time}",
"No frame within {gap} h of {time}": "Нет кадра в пределах {gap} ч от {time}",
"{hours}h {minutes}m ago": "{hours} ч {minutes} мин назад",
"{minutes}m ago": "{minutes} мин назад",
"{state} · {time} · {lag}": "{state} · {time} · {lag}",
"Observed": "Наблюдение",
"History": "История",
"Observation unavailable": "Наблюдение недоступно",
"Waiting for observation": "Ожидание наблюдения",
"{detail} · synced": "{detail} · синхронизировано",
"{detail} · nearest": "{detail} · ближайший",
"RADAR REFLECTIVITY · dBZ": "ОТРАЖАЕМОСТЬ РАДАРА · dBZ",
"LIGHTNING DENSITY · 15 min accumulation": "ПЛОТНОСТЬ МОЛНИЙ · накопление за 15 мин",
"GLOBAL INFRARED · hourly": "ГЛОБАЛЬНЫЙ ИК · ежечасно",
"GOES INFRARED · ~5 min": "GOES ИК · ~5 мин",
"{state}: {time}": "{state}: {time}",
"Latest observation": "Последнее наблюдение",
"frame {index}/{total}": "кадр {index}/{total}",
"loading": "загрузка",
"Observation: unavailable": "Наблюдение: недоступно",
"Contiguous US · gaps ≠ no rain": "Континентальные США · пробелы ≠ нет дождя",
"Americas + Pacific · not individual strikes": "Америка + Тихий океан · не отдельные разряды",
"Color: strikes/km²/min ×10³": "Цвет: разрядов/км²/мин ×10³",
"60°S–60°N · typically 2–3 h delayed": "60° ю. ш.–60° с. ш. · обычно задержка 2–3 ч",
"North America · infrared imagery": "Северная Америка · ИК-снимки",
"Reduced motion · history playback unavailable": "Уменьшение движения · воспроизведение истории недоступно",
"Reduced motion · manual history available": "Уменьшение движения · доступна ручная история",
"Rain radar · US": "Радар осадков · США",
"Lightning density · 15 min": "Плотность молний · 15 мин",
"Satellite clouds": "Спутниковая облачность",
"Americas + Pacific": "Америка + Тихий океан",
"Global · 60°S–60°N": "Глобально · 60° ю. ш.–60° с. ш.",
"North America": "Северная Америка",
"Source observations delayed": "Наблюдения источника задерживаются",
"Stale source": "Источник устарел",
"Loading next frame…": "Загрузка следующего кадра…",
"Map center outside coverage": "Центр карты вне зоны покрытия",
"strikes/km²/min ×10³": "разрядов/км²/мин ×10³",
"N. America": "Сев. Америка",
"Global": "Глобально",
"Hourly global mosaic; usually 2–3 hours delayed": "Ежечасная глобальная мозаика; обычно с задержкой 2–3 ч",
"GOES regional clouds; approximately 5-minute updates": "Региональная облачность GOES; обновление примерно каждые 5 мин",
"Clouds only": "Только облака",
"Dim everything but the bright, cold cloud tops; a brightness filter, not a cloud mask": "Затемнить всё, кроме ярких холодных вершин облаков; фильтр яркости, а не маска облачности",
"Full": "Полное",
"The complete infrared image at the chosen opacity": "Полное ИК-изображение с выбранной непрозрачностью",
"Soft": "Мягко",
"Vivid": "Ярко",
"Image opacity; does not alter the observed values": "Непрозрачность изображения; не меняет наблюдаемые значения",
"View US radar": "Показать радар США",
"View Americas & Pacific": "Показать Америку и Тихий океан",
"View coverage": "Показать зону покрытия",
"{value} strikes/km²/min ×10³ (15-minute density)": "{value} разрядов/км²/мин ×10³ (плотность за 15 мин)",
"{value} dBZ radar reflectivity": "Отражаемость радара: {value} dBZ",
"STALE · cached source metadata": "УСТАРЕЛ · метаданные источника из кэша",
"Map center is outside source coverage": "Центр карты вне зоны покрытия источника",
"NOAA/NWS 15-minute lightning density derived from Vaisala NLDN/GLD360. Coverage 110°E across the Pacific/Americas to 0°, 25°S–80°N. Not a live strike count, global coverage or a safety warning.": "15-минутная плотность молний NOAA/NWS на основе Vaisala NLDN/GLD360. Покрытие — от 110° в. д. через Тихий океан и Америку до 0°, 25° ю. ш.–80° с. ш. Это не подсчёт разрядов в реальном времени, не глобальное покрытие и не предупреждение об опасности.",
"NOAA MRMS radar echoes indicate precipitation patterns, not rain rate, a storm warning or a future forecast. Native source approximately 1 km; display is limited to level 6. Frames use exact advertised observation times.": "Радиолокационные эхосигналы NOAA MRMS показывают картину осадков, а не их интенсивность, штормовое предупреждение или прогноз. Исходное разрешение около 1 км; отображение ограничено уровнем 6. Кадры используют точное заявленное время наблюдений.",
"GOES-19/18 longwave infrared Band 14 regional; NESDIS global longwave mosaic. Clouds only dims everything but bright, cold cloud tops; a brightness filter, not a cloud mask. Coverage and freshness differ by region.": "Региональный длинноволновый ИК-канал 14 GOES-19/18; глобальная длинноволновая мозаика NESDIS. Режим «Только облака» затемняет всё, кроме ярких холодных вершин облаков; это фильтр яркости, а не маска облачности. Покрытие и актуальность различаются по регионам.",
"REGION": "РЕГИОН",
"IMAGE": "ИЗОБРАЖЕНИЕ",
"OPACITY": "НЕПРОЗРАЧНОСТЬ",
"Forecast · does not follow history": "Прогноз · не следует за историей",
"Wind motion": "Движение ветра",
"Wind speed": "Скорость ветра",
"Sea-level pressure": "Давление на уровне моря",
"Air temperature · 2 m": "Температура воздуха · 2 м",
"Global · 1° grid": "Глобально · сетка 1°",
"{model} forecast · {time}": "Прогноз {model} · {time}",
"Loading forecast": "Загрузка прогноза",
"Preparing flow": "Подготовка потока",
"Selected field unavailable": "Выбранное поле недоступно",
"Cached forecast · stale": "Прогноз из кэша · устарел",
"ECMWF IFS surface forecast": "Приземный прогноз ECMWF IFS",
"NOAA GFS surface forecast": "Приземный прогноз NOAA GFS",
"Reduced motion": "Уменьшение движения",
"Pause visual flow; forecast time does not advance with animation": "Приостановить визуальный поток; время прогноза не сдвигается с анимацией",
"None": "Нет",
"Speed": "Скорость",
"Pressure": "Давление",
"Temperature": "Температура",
"Wind trails with no field shading": "Следы ветра без заливки поля",
"How hard the surface wind is blowing": "Насколько сильно дует приземный ветер",
"Sea-level air pressure: broad highs and lows": "Давление на уровне моря: крупные области высокого и низкого давления",
"Air temperature two meters above the surface": "Температура воздуха в двух метрах над поверхностью",
"Wind speed units": "Единицы скорости ветра",
"Read wind at map center": "Узнать ветер в центре карты",
"Read the forecast at the center of the map without changing selection": "Получить прогноз в центре карты, не меняя выбор",
"{model} forecast · {field} ({unit})": "Прогноз {model} · {field} ({unit})",
"Valid: {time}": "Действует на: {time}",
"preparing": "подготовка",
"Issued: {time}": "Выпущен: {time}",
"Selected field unavailable · wind remains visible": "Выбранное поле недоступно · ветер остаётся видимым",
"{error} · wind remains visible": "{error} · ветер остаётся видимым",
"Surface wind at 10 m. Approximately 1° global grid. Curves follow the 10 m wind field, lifted 12 km for visibility; display height is not weather altitude. View lighting is for readability. Animation shows flow through one fixed forecast; it does not advance time. Color fields drape the globe basemap or the active photorealistic 3D Tiles.": "Приземный ветер на высоте 10 м. Глобальная сетка около 1°. Линии следуют полю ветра на 10 м и подняты на 12 км для наглядности; высота отображения не является высотой погодных явлений. Освещение вида — для удобства чтения. Анимация показывает поток в одном фиксированном прогнозе и не сдвигает время. Цветовые поля накладываются на базовую карту глобуса или на активные фотореалистичные 3D Tiles.",
"MODEL": "МОДЕЛЬ",
"FIELD": "ПОЛЕ",
"UNITS": "ЕДИНИЦЫ",
"MOTION": "ДВИЖЕНИЕ",
"Forecast": "Прогноз",
"Interpolated model forecast on an approximately 1° grid. Broad weather patterns, not a street-level measurement.": "Интерполированный модельный прогноз на сетке около 1°. Крупные погодные закономерности, а не измерение на уровне улицы.",
"No surface reading": "Нет приземных данных",
"Aim the map center at Earth": "Наведите центр карты на Землю",
" · calm": " · штиль",
" from {direction}": " с {direction}",
"WIND AT {coordinates}": "ВЕТЕР В ТОЧКЕ {coordinates}",
"{model} · valid {time}": "{model} · на {time}",
"Focusing {label}": "Фокусировка: {label}",
"Source": "Источник",
"Could not leave scene: {scene}": "Не удалось выйти из сцены: {scene}",
"Seeked: {scene} / {shot}": "Перемотано: {scene} / {shot}",
"Scene transition limit reached — load a shot to reset": "Достигнут лимит переходов сцены — загрузите кадр, чтобы сбросить его",
"Export failed: {error}": "Ошибка экспорта: {error}",
"Imported {file}": "Импортировано: {file}",
"Import failed: {error}": "Ошибка импорта: {error}",
"Import failed (could not read JSON file)": "Ошибка импорта (не удалось прочитать файл JSON)",
"Layers refused: {layers}": "Слои отклонены: {layers}",
"Scene {n}": "Сцена {n}",
"Cannot update {scene}: shot inventory changed": "Не удалось обновить {scene}: изменился состав кадров",
"Cannot update {scene}: evidence beats changed": "Не удалось обновить {scene}: изменились этапы доказательств",
"Cannot update {scene}: shot bindings are incomplete": "Не удалось обновить {scene}: привязки кадров неполные",
"Updated {count} shots: {scene}": {
"one": "Обновлён {count} кадр: {scene}",
"few": "Обновлено {count} кадра: {scene}",
"many": "Обновлено {count} кадров: {scene}",
"other": "Обновлено {count} кадра: {scene}"
},
"Appended {count} shots: {scene}": {
"one": "Добавлен {count} кадр: {scene}",
"few": "Добавлено {count} кадра: {scene}",
"many": "Добавлено {count} кадров: {scene}",
"other": "Добавлено {count} кадра: {scene}"
},
"Select a feature or use Tab and Enter to choose an action.": "Выберите объект на карте или используйте Tab и Enter, чтобы выбрать действие.",
"Selected feature: {feature}. Choose an action.": "Выбран объект: {feature}. Выберите действие.",
"Action complete": "Действие выполнено",
"Action unavailable or cancelled": "Действие недоступно или отменено",
"Scene actions": "Действия сцены",
"Bhote Koshi Evidence Sequence": "Последовательность доказательств: Bhote Koshi",
"Nepal Flood Incident": "Наводнение в Непале",
"{count} scenes": {
"one": "{count} сцена",
"few": "{count} сцены",
"many": "{count} сцен",
"other": "{count} сцены"
},
"{count} shots": {
"one": "{count} кадр",
"few": "{count} кадра",
"many": "{count} кадров",
"other": "{count} кадра"
},
"{count} data packs": {
"one": "{count} пакет данных",
"few": "{count} пакета данных",
"many": "{count} пакетов данных",
"other": "{count} пакета данных"
},
"{scene} / {pack}: {status}. File: {path}. {attribution} · {license}": "{scene} / {pack}: {status}. Файл: {path}. {attribution} · {license}",
"Unavailable layers: {layers}": "Недоступные слои: {layers}",
"This scene uses registered content or linked media. Those external files are not included in a scene bundle. Their original notices still apply.": "Эта сцена использует зарегистрированный контент или связанные медиафайлы. Эти внешние файлы не входят в архив сцены. Их исходные уведомления по-прежнему действуют.",
"{bytes} bundled bytes verified. Files stay in memory for this session. Reimport the bundle after reloading the app.": "Проверено байт в архиве: {bytes}. Файлы хранятся в памяти только в этом сеансе. После перезагрузки приложения импортируйте архив снова.",
"Review scene import": "Проверка импорта сцены",
"Nothing is loaded or changed until you apply this file.": "Ничего не загружается и не меняется, пока вы не примените этот файл.",
"Ready to import": "Готово к импорту",
"Apply replaces the current project. Export your current project first if you want to keep both.": "Применение заменит текущий проект. Чтобы сохранить оба, сначала экспортируйте текущий проект.",
"Apply import": "Применить импорт",
"Import was not applied. The current project may have changed.": "Импорт не применён. Возможно, текущий проект изменился.",
"Select a scene and shot first": "Сначала выберите сцену и кадр",
"Edit scene details": "Изменить параметры сцены",
"Camera positions use degrees and meters above the ellipsoid. Drafts are validated before they replace your saved scene.": "Положения камеры задаются в градусах и метрах над эллипсоидом. Черновики проверяются, прежде чем заменить сохранённую сцену.",
"Anchors and data packs": "Якоря и пакеты данных",
"Shot camera, timing, packs and actions": "Камера кадра, тайминг, пакеты и действия",
"New anchor ID": "ID нового якоря",
"Capture camera as anchor": "Сохранить камеру как якорь",
"Anchor added to draft": "Якорь добавлен в черновик",
"Set move start to current camera": "Начать перелёт с текущей камеры",
"Move added to draft; destination remains the shot camera": "Перелёт добавлен в черновик; конечной точкой остаётся камера кадра",
"Use ordinary flight": "Использовать обычный перелёт",
"Invalid shot JSON": "Некорректный JSON кадра",
"Apply details": "Применить параметры",
"Select a scene first": "Сначала выберите сцену",
"Share selected scene": "Поделиться выбранной сценой",
"Scene JSON preserves authored settings and attribution. It does not include asset files. Bundles include only pack files you choose here or previously imported bundle files.": "JSON сцены сохраняет авторские настройки и атрибуцию, но не содержит файлов ресурсов. Архив включает только файлы пакетов, выбранные здесь, или файлы ранее импортированных архивов.",
"Download scene JSON": "Скачать JSON сцены",
"Choose data-pack files": "Выбрать файлы пакетов данных",
"Or choose a data-pack folder": "Или выберите папку пакета данных",
"Download asset bundle": "Скачать архив ресурсов",
"Asset bundle downloaded": "Архив ресурсов скачан",
"Could not complete this action. Check the file, references and selected assets.": "Не удалось выполнить действие. Проверьте файл, ссылки и выбранные ресурсы.",
"RTL-SDR sample stream stopped": "Поток выборок RTL-SDR остановлен",
"Switching to {mode}…": "Переключение на {mode}…",
"Browser audio is suspended; select FM again to resume it": "Звук в браузере приостановлен; выберите FM ещё раз, чтобы возобновить его",
"RTL-SDR gain change failed": "Не удалось изменить усиление RTL-SDR",
"Tuned to {mhz} MHz FM": "Настроено на FM {mhz} МГц",
"FM signal found at {mhz} MHz": "Найден FM-сигнал на {mhz} МГц",
"No FM signal found": "FM-сигнал не найден",
"Seek stopped": "Поиск остановлен",
"Browser location is unavailable": "Местоположение браузера недоступно",
"Receiver location was not granted": "Доступ к местоположению приёмника не предоставлен",
"RTL-SDR disconnected": "RTL-SDR отключён",
"No RTL-SDR device selected": "Устройство RTL-SDR не выбрано",
"WebUSB requires desktop Chrome or Edge on localhost/HTTPS": "Для WebUSB нужен настольный Chrome или Edge на localhost/HTTPS",
"RTL-SDR access failed; close other SDR apps and check USB permissions": "Нет доступа к RTL-SDR; закройте другие SDR-приложения и проверьте разрешения USB",
"RTL-SDR connection failed": "Не удалось подключить RTL-SDR",
"Receiving 1090 MHz ADS-B": "Приём ADS-B на 1090 МГц",
"Receiving broadcast FM": "Приём FM-вещания",
"Connect an RTL-SDR to begin.": "Подключите RTL-SDR, чтобы начать.",
"WebUSB is unavailable in this browser": "WebUSB недоступен в этом браузере",
"SDR decoder worker failed": "Сбой обработчика декодера SDR",
"WebUSB requires desktop Chrome or Edge": "Для WebUSB нужен настольный Chrome или Edge",
"Waiting for an RTL-SDR device…": "Ожидание устройства RTL-SDR…",
"Browser audio is suspended; press Connect again to resume it": "Звук в браузере приостановлен; нажмите «Подключить» ещё раз, чтобы возобновить его",
"Return map to straight-down view": "Вернуть карту к виду сверху",
"Tilt map to oblique view": "Наклонить карту в перспективный вид",
"Reset map to north up. Current heading {heading} degrees": "Повернуть карту севером вверх. Текущий курс: {heading}°",
"HDG": "КУРС",
"PITCH": "ТАНГАЖ",
"FOV": "ОБЗОР",
"RANGE": "ДАЛЬН.",
"HGT": "ВЫС.",
"{value} KM/H": "{value} КМ/Ч",
"NORMAL": "ОБЫЧНЫЙ",
"ANIME": "АНИМЕ",
"NOIR": "НУАР",
"Rendered globe frames per second · toggle with `": "Кадров глобуса в секунду · переключение клавишей `",
"Utilities": "Инструменты",
"Other layers": "Другие слои",
"Movement": "Движение",
"Infrastructure": "Инфраструктура",
"Events": "События",
"Weather": "Погода",
"LOCATED": "ОПРЕДЕЛЕНО",
"LOCATE": "ОПРЕДЕЛИТЬ",
"IDLE": "ОЖИДАНИЕ",
"TUNING": "НАСТРОЙКА",
"STREAMING": "ПРИЁМ",
"UNSUPPORTED": "НЕ ПОДДЕРЖ.",
"waiting for IQ": "ожидание IQ",
"{count} messages": {
"one": "{count} сообщение",
"few": "{count} сообщения",
"many": "{count} сообщений",
"other": "{count} сообщения"
},
"DSP {count} blocks": {
"one": "DSP {count} блок",
"few": "DSP {count} блока",
"many": "DSP {count} блоков",
"other": "DSP {count} блока"
},
"DSP waiting": "DSP ожидает",
"{level} dBFS audio": "аудио {level} dBFS",
"audio signal --": "аудиосигнал --",
"audio {state}": "аудио: {state}",
"{count} HEARD": {
"one": "СЛЫШНО: {count}",
"few": "СЛЫШНО: {count}",
"many": "СЛЫШНО: {count}",
"other": "СЛЫШНО: {count}"
},
"DISCONNECT": "ОТКЛЮЧИТЬ",
"CONNECT": "ПОДКЛЮЧИТЬ",
"LOCATING…": "ОПРЕДЕЛЕНИЕ…",
"Drag to resize · double-click the header to snap back": "Перетащите, чтобы изменить размер · двойной щелчок по заголовку — вернуть на место",
"CH {index} / {total}": "КАН. {index} / {total}",
"Station unavailable after directory refresh": "Станция недоступна после обновления каталога",
"Clear reading": "Очистить показания",
"Earlier observation": "Более раннее наблюдение",
"Observed history": "История наблюдений",
"Later observation": "Более позднее наблюдение",
"Latest": "Последние",
"Newest frame per product": "Самый свежий кадр каждого продукта",
"Replay observed history": "Воспроизвести историю наблюдений",
"S on another day replaces it · × unpins": "S на другом дне заменяет его · × открепляет",
"← → preview · S shows the focused day": "← → просмотр · S показывает выбранный день",
"Recent imagery": "Свежие снимки",
"ZOOM IN": "ПРИБЛИЗИТЬ",
"Fly in until the view fits the 1,000 km limit": "Приблизьтесь, пока вид не уложится в предел 1000 км",
"Imagery days, newest first · arrows move, S or A and B pin": "Дни со снимками, сначала новые · стрелки — перемещение, S или A и B — закрепить",
"On the map": "На карте",
"Mode": "Режим",
"Imagery on Esri · Google 3D returns when cleared": "Снимки поверх Esri · после очистки вернётся Google 3D",
"Imagery opacity": "Непрозрачность снимков",
"SWAP": "ПОМЕНЯТЬ",
"VS BASEMAP": "VS ПОДЛОЖКА",
"Trade the two sides of the divider": "Поменять местами стороны разделителя",
"A / B": "A / B",
"Newest low-cloud day for this box · scene cloud, not box cloud": "Самый свежий малооблачный день для этой области · облачность всей сцены, а не области",
"Newest day covering this box · cloudier than 20%": "Самый свежий день с покрытием этой области · облачность выше 20%",
"SELECT BOX": "ВЫБРАТЬ ОБЛАСТЬ",
"Drag a box on the map (Esc cancels)": "Выделите область на карте (Esc — отмена)",
"Newest day with imagery for this box · partial coverage": "Самый свежий день со снимками этой области · частичное покрытие",
"USE VIEW": "ПО ВИДУ",
"Use the current view as the box": "Использовать текущий вид как область",
"Newest daily overview for this box": "Самый свежий ежедневный обзор для этой области",
"Forget the box and its images": "Сбросить область и её снимки",
"newest clear day": "самый свежий ясный день",
"newest day (cloudy)": "самый свежий день (облачно)",
"newest day (partial coverage)": "самый свежий день (частичное покрытие)",
"START HERE": "НАЧНИТЕ ЗДЕСЬ",
"newest overview": "самый свежий обзор",
"No imagery": "Нет снимков",
"Checking": "Проверка",
"Loading": "Загрузка",
"PREVIEW": "ПРОСМОТР",
"Newest day with imagery for this box": "Самый свежий день со снимками этой области",
"SHOW": "ПОКАЗАТЬ",
"Pin {day} as {slot}": "Закрепить {day} как {slot}",
"Show {day}": "Показать {day}",
"pinned {slot}": "закреплено как {slot}",
"shown": "показано",
"preview": "просмотр",
"start here": "начните здесь",
"No box": "Нет области",
"Searching": "Поиск",
"Every day is empty here": "Здесь все дни пустые",
"Sources off": "Источники выключены",
"VS": "VS",
"Not set": "Не задано",
"Basemap": "Подложка",
"Source off": "Источник выключен",
"Unpin {slot}": "Открепить {slot}",
"Unpin the image": "Открепить снимок",
"EXPORT {slot}": "ЭКСПОРТ {slot}",
"EXPORT": "ЭКСПОРТ",
"Download {slot} as a PNG": "Скачать {slot} в PNG",
"Download the image as a PNG": "Скачать снимок в PNG",
"Box {width} × {height} km": "Область {width} × {height} км",
"no imagery": "нет снимков",
"Acquired {time}": "Снято {time}",
"cloud unknown": "облачность неизвестна",
"Coverage {coverage}": "Покрытие {coverage}",
"unknown": "неизвестно",
"START HERE · {reason}": "НАЧНИТЕ ЗДЕСЬ · {reason}",
"Daily overview shows little detail in a box this small": "В такой маленькой области ежедневный обзор почти не показывает деталей",
"{percent}% cloud": "облачность {percent}%",
"Imagery: NASA GIBS and Worldview · HLS (Sentinel-2, Landsat 8/9) and VIIRS": "Снимки: NASA GIBS и Worldview · HLS (Sentinel-2, Landsat 8/9) и VIIRS",
"{min}–{max}% cloud": "облачность {min}–{max}%",
"Details": "Подробности",
"Times, coverage, sources": "Время, покрытие, источники",
"HIDE EMPTY DAYS": "СКРЫТЬ ПУСТЫЕ ДНИ",
"SHOW EMPTY DAYS · {count}": "ПОКАЗАТЬ ПУСТЫЕ ДНИ · {count}",
"Days the probe found empty in this box": "Дни, в которые проверка не нашла снимков в этой области",
"NO BOX": "НЕТ ОБЛАСТИ",
"image": "снимок",
"BASEMAP": "ПОДЛОЖКА",
"The basemap": "Подложка",
"basemap": "подложка",
"SEARCHING": "ПОИСК",
"{count} DAYS": {
"one": "{count} ДЕНЬ",
"few": "{count} ДНЯ",
"many": "{count} ДНЕЙ",
"other": "{count} ДНЯ"
},
"Recent imagery against the basemap divider": "Разделитель: свежие снимки и подложка",
"Recent imagery A and B divider": "Разделитель свежих снимков A и B",
"{before} {left} percent, {after} {right} percent": "{before}: {left}%, {after}: {right}%",
"Zoom in or draw a smaller box": "Приблизьте карту или выделите область поменьше",
"Select a box or use the view": "Выделите область или используйте текущий вид",
"Searching the last 30 days": "Поиск за последние 30 дней",
"No days to show for this box": "Для этой области нет дней для показа",
"Drag the divider · SWAP trades sides": "Перетащите разделитель · ПОМЕНЯТЬ меняет стороны",
"Export failed · {error}": "Ошибка экспорта · {error}",
"← → preview · A or B pins the focused day": "← → просмотр · A или B закрепляет выбранный день",
"← → preview the other side · A or B pins it": "← → просмотр другой стороны · A или B закрепляет её",
"LOAD": "ЗАГРУЗИТЬ",
"No shots yet. Use CAPTURE SHOT to save current look.": "Кадров пока нет. Нажмите «СДЕЛАТЬ КАДР», чтобы сохранить текущий вид.",
"Double-click to rename": "Дважды щёлкните, чтобы переименовать",
"Shot name": "Название кадра",
"RETRYING ALPR CAMERAS": "ПОВТОРНАЯ ЗАГРУЗКА КАМЕР ALPR",
"FETCHING ALPR CAMERAS": "ЗАГРУЗКА КАМЕР ALPR",
"OVERPASS TEMPORARILY UNAVAILABLE": "OVERPASS ВРЕМЕННО НЕДОСТУПЕН",
"Weather data by Open-Meteo.com": "Данные о погоде: Open-Meteo.com",
"ESC EXIT": "ESC ВЫХОД",
"C TOGGLE": "C ПЕРЕКЛ.",
"SIG": "СИГН.",
"NEWS": "НОВОСТИ",
"LOCAL": "МЕСТН.",
"Cockpit briefing pages": "Страницы брифинга кабины",
"MM": "ММ",
"KTS": "УЗ",
"FT": "ФТ",
"FLT": "РЕЙСЫ",
"MIL": "ВОЕН.",
"SITE": "ОБЪЕКТЫ",
"WX": "ПОГОДА",
"DIRECTORY: RADIO BROWSER": "КАТАЛОГ: RADIO BROWSER",
"Use your location for faster ADS-B position decoding": "Использовать ваше местоположение для ускорения декодирования позиций ADS-B",
"CHANGE DEVICE": "СМЕНИТЬ УСТРОЙСТВО",
"Choose a different RTL-SDR or receiver channel": "Выбрать другой RTL-SDR или канал приёмника",
"TUNE": "НАСТРОИТЬ",
"◀ SEEK": "◀ ПОИСК",
"SEEK ▶": "ПОИСК ▶",
"Local RTL-SDR receiver": "Локальный приёмник RTL-SDR",
"RTL-SDR receiver mode": "Режим приёмника RTL-SDR",
"Seek broadcast FM stations": "Поиск FM-радиостанций",
"Tune available internet radio stations": "Настройка на доступные интернет-радиостанции",
"Local SDR volume": "Громкость локального SDR",
"GAIN": "УСИЛЕНИЕ",
"FM MHZ": "FM МГЦ",
"AUTO": "АВТО",
"Chrome/Edge · WebUSB · one local tuner shared by FM and the Local ADS-B layer.": "Chrome/Edge · WebUSB · один локальный тюнер для FM и слоя Local ADS-B.",
"RTL-SDR tuner gain for the current mode": "Усиление тюнера RTL-SDR для текущего режима",
"WEATHER": "ПОГОДА",
"Active weather products": "Активные погодные продукты",
"RECENT IMAGERY": "СВЕЖИЕ СНИМКИ",
"Imagery days in the box": "Дни со снимками в области",
"MSG/S": "СООБЩ./С",
"HEARD": "СЛЫШНО",
"POSITIONED": "С КООРД.",
"SDR VOL": "ГРОМК. SDR",
"LOCAL RTL-SDR": "ЛОКАЛЬНЫЙ RTL-SDR",
"Cyber sonar contact scanner": "Кибер-сонар: сканер контактов",
"Sonar ring count": "Число колец сонара",
"Sonar ring range": "Дальность колец сонара",
"Sonar intensity": "Интенсивность сонара",
"Cyber contact and label opacity": "Непрозрачность контактов и меток в режиме «Кибер»",
"Minimum opacity for map dots, icons, models, brackets, and labels between sonar passes": "Минимальная непрозрачность точек, значков, моделей, рамок и меток на карте между проходами сонара",
"Sonar sector width": "Ширина сектора сонара",
"Rings": "Кольца",
"Range": "Дальность",
"Power": "Мощность",
"Opacity": "Непрозрачность",
"Sector": "Сектор",
"Cyber": "Кибер",
"Sonar": "Сонар",
"Turn Street Level on or off": "Включить или выключить «Уличные снимки»",
"Toggle straight-down and tilted map views": "Переключить вид карты: сверху или с наклоном",
"Reset map to north up": "Повернуть карту севером вверх",
"Reset map bearing to north": "Сбросить азимут карты на север",
"Rain radar": "Радар осадков",
"Lightning density": "Плотность молний",
"LATEST · newest per product": "ПОСЛЕДНИЕ · самые свежие по каждому продукту",
"Forecast · valid {valid} · issued {issued}": "Прогноз · действует на {valid} · выпущен {issued}",
"{detail} · Does not follow history": "{detail} · Не следует истории",
"Forecast · valid {valid}": "Прогноз · действует на {valid}",
"{time} · {minutes} min ago": "{time} · {minutes} мин назад",
"Active weather": "Активная погода",
"MINI": "MINI",
"STD": "СТД",
"standard": "стандартную",
"mini": "mini",
"COST UNKNOWN": "СТОИМОСТЬ НЕИЗВЕСТНА",
"ChatGPT OAuth session: {responses} response(s), {input} input and {output} output tokens, {captions} caption transcription(s) reported.": "Сессия ChatGPT OAuth: ответов — {responses}, входных токенов — {input}, выходных токенов — {output}, транскрипций субтитров — {captions}.",
"USD cost and the API spend cap are unavailable for this auth mode.": "Стоимость в USD и лимит расходов API недоступны в этом режиме авторизации.",
"Usage is incomplete because a response was still in flight when the session ended.": "Данные об использовании неполные: к моменту завершения сессии один из ответов ещё не был получен.",
"Toggle voice control": "Включить или выключить голосовое управление",
"Activate to toggle voice": "Активируйте, чтобы включить или выключить голос",
"Voice active": "Голос активен",
"Voice could not be started.": "Не удалось запустить голос.",
"degraded": "с перебоями",
"stale": "устарел",
"partial": "частично",
"fallback": "резерв",
"unavailable": "недоступен",
"{label} on": "{label}: вкл.",
"{label} off": "{label}: выкл.",
"Frame aircraft": "Кадр: самолёты",
"Frame military aircraft": "Кадр: военные самолёты",
"Frame ships": "Кадр: суда",
"Frame satellites": "Кадр: спутники",
"Frame contacts": "Кадр: контакты",
"{count} aircraft in frame": {
"one": "{count} самолёт в кадре",
"few": "{count} самолёта в кадре",
"many": "{count} самолётов в кадре",
"other": "{count} самолёта в кадре"
},
"{count} military aircraft in frame": {
"one": "{count} военный самолёт в кадре",
"few": "{count} военных самолёта в кадре",
"many": "{count} военных самолётов в кадре",
"other": "{count} военного самолёта в кадре"
},
"{count} ships in frame": {
"one": "{count} судно в кадре",
"few": "{count} судна в кадре",
"many": "{count} судов в кадре",
"other": "{count} судна в кадре"
},
"{count} satellites in frame": {
"one": "{count} спутник в кадре",
"few": "{count} спутника в кадре",
"many": "{count} спутников в кадре",
"other": "{count} спутника в кадре"
},
"{count} contacts in frame": {
"one": "{count} контакт в кадре",
"few": "{count} контакта в кадре",
"many": "{count} контактов в кадре",
"other": "{count} контакта в кадре"
},
"Nearest military aircraft": "Ближайшие военные самолёты",
"Nearest ships": "Ближайшие суда",
"Nearest satellites": "Ближайшие спутники",
"Nearest aircraft": "Ближайшие самолёты",
"{first} and {second}": "{first} и {second}",
"Camera range {range}": "Дальность камеры: {range}",
"Within {radius} of the view": "В радиусе {radius} от вида",
"Labels on": "Метки включены",
"Framing uses the nearest 80 loaded contacts": "В кадр берутся 80 ближайших загруженных контактов",
"{distance} from {location}": "{location}: {distance}",
"Altitude {altitude}": "Высота {altitude}",
"{origin} to {destination}": "{origin} → {destination}",
"from {origin}": "откуда: {origin}",
"to {destination}": "куда: {destination}",
"Registration {registration}": "Регистрация {registration}",
"Route {route}": "Маршрут {route}",
"View state": "Состояние вида",
"Marked {count} places": {
"one": "Отмечено {count} место",
"few": "Отмечено {count} места",
"many": "Отмечено {count} мест",
"other": "Отмечено {count} места"
},
"Nothing marked": "Ничего не отмечено",
"Not found: {places}": "Не найдено: {places}",
"Tracing outlines": "Построение контуров",
"Mark the map": "Отметить на карте",
"Mark {targets} +{more}": "Отметить {targets} +{more}",
"Mark {targets}": "Отметить {targets}",
"Fly to {place}": "Перелёт: {place}",
"Nearest aircraft to {place}": "Ближайшие самолёты: {place}",
"Read the view": "Прочитать вид",
"Check view state": "Проверить состояние вида",
"Frame {target}": "Кадр: {target}",
"Finding places": "Поиск мест",
"Tracing outline": "Построение контура",
"Looking up place": "Поиск места",
"Flying": "Перелёт",
"Turning on layer": "Включение слоя",
"Loading aircraft": "Загрузка самолётов",
"Picking nearest": "Выбор ближайших",
"Working": "Выполняется",
"{value} feet": "{value} фт",
"nominal": "в норме",
"Source: {label}": "Источник: {label}",
"N": "С",
"NNE": "ССВ",
"NE": "СВ",
"ENE": "ВСВ",
"E": "В",
"ESE": "ВЮВ",
"SE": "ЮВ",
"SSE": "ЮЮВ",
"S": "Ю",
"SSW": "ЮЮЗ",
"SW": "ЮЗ",
"WSW": "ЗЮЗ",
"W": "З",
"WNW": "ЗСЗ",
"NW": "СЗ",
"NNW": "ССЗ",
"Local ADS-B": "Локальный ADS-B",
"Transit": "Общественный транспорт",
"Recent Imagery": "Свежие снимки",
"Fire Perimeters": "Контуры пожаров",
"Cyclone advisories": "Сводки о циклонах",
"EDIT DETAILS": "ИЗМЕНИТЬ ДАННЫЕ",
"SHARE SCENE": "ПОДЕЛИТЬСЯ СЦЕНОЙ",
"ON/OFF": "ВКЛ/ВЫКЛ",
"Voice assistant": "Голосовой ассистент",
"VOICE": "ГОЛОС",
"Dismiss voice card": "Закрыть карточку голоса",
"YOU": "ВЫ",
"THIS": "ЭТО",
"HERE": "ЗДЕСЬ",
"Plan": "План",
"Referenced items": "Упомянутые объекты",
"NOTES & SOURCES": "ЗАМЕТКИ И ИСТОЧНИКИ",
"ΔN": "ΔС",
"ΔE": "ΔВ"
}