Apply the accepted findings from the fourth three-model French review:
« Fermez d'abord cet outil » in the pointer-busy notices, the colon form
« Outil actif : {name} » for the directions notice, « FOV CONSTRUCTEUR »,
« RAPPORT » for the USGS trigger chip, « CONTEXTE GLOBAL DÉSACTIVÉ », and
wording fixes for the radio, recent imagery, bundle preview and draw label
strings. The guide gains glossary rows for the datasheet FOV and for
rapport versus relevé.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Apply the accepted findings from the third three-model French review:
tool-name agreement (« Outil actif : {name} »), elision before ADS-B,
« GORGE AVAL », « CLASSIQUES », « EN SURVOL », one name for the VIIRS
daily overview, U+202F thousands separator, and wording fixes for the
scene editor, directions, radio tuner and status strings.
The CCTV HUD summary now shows its CAL badge, source kind and view band
through existing catalog entries, so French reads « CAL ESTIM. INITIALE ·
SRC AMONT · CONTEXTE RUE »; English output and unknown codes are
unchanged. presentation.js matches the pt branch's round-3 version byte
for byte, so the two branches merge cleanly.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Three-model review (astra, sol, fable), round 3: 17 of 18 findings
applied (some in own wording, one in part); "Missões espac." rejected.
- pt: layer cards «{label}: camada ativada/desativada», pointer and
Directions toasts name «A ferramenta "{owner}"», counters after a
colon where the count can be 1, traffic «sem dados de fluxo» and
«Fluxo: {percent}% cob», «limite de requisições atingido», FECHAR,
ANT., PREDEF. VISUAIS, quoted "Nível da rua", infinitive tooltips,
and more (see docs/translations/pt.md).
- CCTV summary line localizes its CAL, SRC and CONTEXT values through
existing catalog keys (all locales); codes stay underneath.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- Meaning fixes: the radio link opens the broadcaster's website
(SENDER-WEBSITE), a straight lane is «geradeaus führend», not the middle
one, IDLE is INAKTIV (BEREIT is READY), the Gemini errors name the send
queue, traffic percent is live coverage (Live-Abdeckung), the voice radius
is measured from the Bildmitte, the AIS voice error names the Live-Schiffe
layer, and the Bhote landslide is «Erdrutsch» throughout (not «Abbruch»).
- Number-neutral status lines for feed and layer lists, and a payload count
line that also reads correctly for +1.
- Retry wording follows the glossary: «neue Versuche in größeren Abständen».
- Weather history lines are shorter and fit the collapsed row: «Frame fehlt;
letzter Stand bleibt erhalten», «Kein Frame in den {gap} min bis {time}»
(the gap only looks back from the target time).
- Shorter search placeholder «Ort suchen...», which was clipped.
- Smaller wording: Himmelsring, Lagebild-HUD, SCHLEPPVERBAND, Minimum Fuel
(Treibstoff knapp), Bloom / Leuchten, DOWNRANGE GESCHÄTZT, Places-Kontext,
MELDUNG, Rückflug zur Weltübersicht, REALE BILDDATEN and others.
- Glossary and routing notes updated.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Three-model review (astra, sol, fable), round 2: 29 of 30 findings
applied, one of them in part.
- pt: FIRMS «mais recente há», CCTV «cruzamentos», degraded radio
directory, «{layers}: ativação recente» for any layer list, «Sem
imagem», NIVELADO, AJUSTA-SE, quoted Provider Settings, V/S kept on
the ADS-B card, no-break space in «(24 h)» / «(30 d)», and more
(see docs/translations/pt.md).
- Malformed cyclone snapshot is now a catalog message (all locales).
- Markup supports data-i18n-context; the radio STATION TAG option uses
"radio tag|All", so it no longer flips gender when the list loads.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Three-model review (astra, sol, fable): 42 findings accepted, 3 deferred
(unmarked cyclone errors and the Chinese locale descriptors need new keys
in every catalog). The USGS callout now reads as an action (APRI LA FONTE)
because it opens the report. Layer, tool and card-title sentences agree with
any feature name («Il livello {layer} è attivo», «Lo strumento {name}»,
«{label}: attivato»). The store write error is grammatical for both
values. RADO/BILANCIATO agree with DENSO. Also fixes the meaning of
viewpoint, fire incident, trigger record, transit report, FIRMS cell age,
drizzle, widebody and fast-jet classes; Dissolvenza and CH replace the odd
abbreviations; cause/hint dashes become colons.
Fixes the Nepal scene showing shots 01-08 in English in every locale:
displayShotTitle() now also trusts the bootstrap keyframes of the append
recipe that upgrades a built-in scene (src/scenes/recipes.js, with a test).
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- Meaning fixes: playback connects to the broadcaster when it starts, browser
keys are restricted at the provider, clearing data layers switches them off
(ausschalten, not löschen), cockpit inputs are Quellen, Electronic is
Elektronische Musik, AIS types name vessels (SEGLER, LOTSENBOOT,
SANITÄTSDIENST, SCHNELLSCHIFF), contiguous US excludes Alaska/Hawaii,
wind and weather readings are model values, nearest frames are nearest in
time, cloud imagery and the brightness filter say what they are.
- NHC/CPHC advisories are Lageberichte, not Warnungen; cyclone strings use
Wirbelsturm throughout. Glossary updated.
- Grammar: " oder " keeps its space as a join separator, "{x} konnte nicht
sauber beendet werden", Then: no longer doubles Dann, scene save reasons
continue the sentence in lower case, neutral "Warten auf".
- Spacing between numbers and units in the remaining nine readouts.
- Reroute tooltip: German mode nouns keep their capital (Auto, Fahrrad).
- Built-in Nepal shot titles localize in every language: the legacy scene
upgrade rebuilds its base shots without sourcePackId, so the pack's own
shots in the scene now vouch for them.
- Layout: the layer status column no longer shrinks under a wide chip, and
a mixed-case compound (ALPR-Kameras) may break at its hyphen; only capital
codes (ADS-B, RTL-SDR) stay unbroken. WIRD AKTIVIERT overlapped the name.
The Bhote step meta line may take a third line.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Three-model review (astra, sol, fable): 51 of 52 findings applied, two
of them in part.
- pt: AQHI bands as health risk, NAVIO-TANQUE, CANDIDATO DO GOOGLE
PLACES, Provider Settings agreement, retry/feed-down wording,
NOTÍCIAS DA ÁREA (fits the briefing kicker), detection modes in the
masculine, GS and REC kept on the HUD, EXPORTAR PREDEF., prepositions
before times, and more (see docs/translations/pt.md).
- Cyclone request timeout is now a catalog message (all locales).
- Built-in Nepal base shots written by the legacy pack bootstrap now
show their localized titles: displayShotTitle also trusts the legacy
keyframes of an append pack the scene has applied.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- Fix meaning errors flagged by the three-model review: downed aircraft
(Аварія літака), fast jet, the straight-ahead lane, road traffic,
pilot vessel, nearby contact counts, the low-accuracy score.
- Terms: CRS/TRK → ШК (шляховий кут), ascent → виведення, booster
flight → ПОЛІТ, session → сеанс, sequence → послідовність, place
search → пошук місця, CCTV pitch → нахил, mapped sites →
нанесені обʼєкти everywhere; glossary updated.
- Grammar: case agreement in the radio aria label and the key-store
message, «прицілу», у/в euphony, payload count after a colon,
FIRES as ПОЖ. so any count reads correctly.
- The cockpit current-style button widens to fit ЗВИЧАЙНИЙ; other
languages keep the 58px minimum.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Three-model review (astra, sol, fable): 53 findings accepted, 14 rejected
or deferred. Fixes the meaning of "Downed aircraft", "Compilation", the
satellite ground-distance caveat and the browser-key restriction note;
agreement for Full, Provider Settings and Space Missions; fork directions
that compose with every modifier; a radio aria label that reads as a
phrase; imperative tooltips. Shortens the labels that clipped: ESP. A/B,
search placeholder, QUOTA · FT, PREC, Esri imagery note.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Apply the accepted findings from the three-model French review: ground
track reads « route », wildfire containment « circonscrit », downrange
« distance au sol », tankers « navire-citerne », plus wording fixes for
lanes, timestamps, wind sector, radio, CCTV and voice strings.
Shots rebuilt by a pack's legacy bootstrap carry no sourcePackId, so the
first Nepal shot titles stayed English; the scene's applied-pack marker
now vouches for the pack's required titles.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Shorter wording where the French text ran out of its button, chip or
collapsed card at 1600×1100: the DATA LAYERS launcher (COUCHES), Recent
Imagery buttons and hints (CETTE VUE, VS CARTE, EXP. A), the ENABLING /
DISABLING layer chip, the voice detail line and the location search
placeholder. Also the CCTV range readout gets a space before m, the radio
privacy note reads naturally, and the cockpit air/sea window is shorter.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- Register fr: catalog in CATALOGS, LOCALES and LOCALE_NAMES (Français);
any fr-* browser tag (fr-CA, fr-BE, fr-CH) maps to it.
- package-boundaries.json lists fr.json next to the other catalogs.
- Picker and locale tests cover the new row and its local names.
- docs/translations/fr.md: style, typography, plurals and glossary;
TRANSLATORS.md and CURRENT-STATE.md list French as shipped.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- Translate the remaining 1,895 strings for the current UI (Bhote Koshi
event, weather, imagery, street level, directions, SDR, voice, scenes,
import) and review meirm's 832 entries from #312: 134 edited for
Ukrainian HUD terms (КУРС/ПЕЛ./ШЛЯХ/ПРИЗН., Л/П, ОНЛАЙН for LIVE,
Cyrillic units КМ, ВУЗ, ФТ, МВт), vessel types, number agreement and
the ʼ apostrophe throughout.
- Register uk: catalog, LOCALES, LOCALE_NAMES (Українська), package
boundaries, same-as-English codes; picker and plural tests cover the
four Ukrainian forms.
- docs/translations/uk.md: style, plurals, units and glossary.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- Translate the remaining 1,868 strings in a neutral infinitive style (no
Sie/du), with German compounds, decimal commas and CLDR one/other plurals.
- Review the #908 entries: knots are kn everywhere, the avionics codes BRG,
CRS and DEST stay English like HDG and SPD, expand/collapse is
ausklappen/einklappen, the radio toggle reads EIN/AUS, density SPARSE is
DÜNN, the Thermal style is Wärmebild, German quotes in the shot prompt.
- Register de: catalog, LOCALES, LOCALE_NAMES (Deutsch), package boundaries,
same-as-english (codes, product names, music genres, units).
- Tests: picker order and keyboard model with Deutsch, de/de-AT/de_CH
normalization, browser de-DE resolves to German.
- docs/translations/de.md: style, plurals, units and glossary; TRANSLATORS.md
and CURRENT-STATE.md list German.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- Translate the remaining 1,868 strings (pt-BR, as in #909) and review the
contributor entries: HUD codes BRG/SPD/RANGE stay as in the other
languages, sentence-case layer and scene names, Space key named as on the
keyboard, short PREV/NEXT/ON/OFF chips, and the CLDR many form (exact
millions take «de») on every plural.
- Register pt: any pt tag (pt-BR, pt-PT) maps to it; the picker shows
«Português (Brasil)».
- Codes, units and product names identical to English go to
same-as-english.json.
- docs/translations/pt.md: style, plurals, units and glossary.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
- Register it: catalog in index.js, LOCALES and LOCALE_NAMES (Italiano);
it-IT, it-CH and other it tags select it.
- List it.json with the other catalogs in package-boundaries.json.
- docs/translations/it.md: style, plurals and glossary; Italian in the
shipped lists of TRANSLATORS.md and CURRENT-STATE.md.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Correct 年曆史 → 年歷史, 下遊 → 下游, 並道 → 併道 and 發佈 → 發布,
and list these fixes for future reconversions from zh-CN.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Rebuild the zh-Hant catalog from zh-CN with OpenCC s2tw glyph
conversion, so wording and terminology match zh-CN and only the
script differs. Drop Taiwan-specific vocabulary and wording notes;
zh-TW/HK/MO browser tags still select zh-Hant.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Add a complete Taiwan Traditional Chinese catalog, locale selection,
Chinese readout formatting, translation notes and regression coverage.
Seed translations from #724 and #652 and adapt the zh-CN catalog.
Co-authored-by: caxer <[email protected]>
Co-authored-by: tbdavid2019 <[email protected]>
Co-authored-by: Enzo Abyie <[email protected]>
Co-authored-by: EDIT-Aeterna <[email protected]>
Correct weather, imagery, scene, voice, and status wording after the Chinese UI review. Align the translation glossary with the revised terminology.
Co-Authored-By: Codex (GPT-6) <[email protected]>
- Translate the remaining 910 strings and review the whole catalog (meaning,
terms, punctuation, label length) against the screens.
- Register zh-CN: any zh tag maps to it except Traditional ones (Hant, TW,
HK, MO), which keep English until a Traditional catalog ships.
- Hemisphere letters get their own context so the HUD sector line reads
21.33N, not a compass word; the Bhote Koshi imagery dates follow
year-first languages (2021年10月16日).
- cjk.css: tight tracking for Chinese text and a 9px floor on the dock voice
labels and layer buttons; Latin HUD readouts keep their look.
- docs/translations/zh-CN.md: style, plurals and glossary.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
The review fixes had turned RANGE into DIST. and SPD into VEL.; the
Spanish glossary keeps HDG, BRG, CRS, FOV, DEST, SPD, RANGE and ALT in
English like cockpit avionics. The glossary now records the terms the
review settled: ACTIVO / INACTIVO, marcador, resplandor, Ciber,
NOTICIAS, INCL. / ALT.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
From the re-shot Russian screenshots:
- Translated: weather frame/imagery status errors, HUD summary provenance
("НЕДОСТУПНО: СУДА AIS ОНЛАЙН"), Bhote Koshi map labels, cockpit signal
distances (КМ). The HUD summary fields are separated with " · " in every
language, so the style name and view band no longer read as one phrase.
- Numbers follow the locale: cockpit altitude ("26 175"), precipitation.
- No breaks inside codes and dates: ADS-B and similar in layer rows,
Sentinel-2, cyclone issue dates (word joiner; the UI font has no U+2011),
no-break space after label colons in cyclone details.
- Layout: count lines under ALPR, short unavailable chip (context
"status chip"), roomier draw segments, tighter CCTV calibration chips,
two-line beat titles and media card titles, wrapping weather status.
- Wording: ru advisory is «сводка» (was «бюллетень»; "Advisory center" is
«Центр циклона по сводке»), Street View is «Просмотр улиц», OPACITY
«НЕПРОЗР.», synced «синхр.», Area «Зона»; the import dialog no longer says
"this scene" for several scenes. Glossary updated.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
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]>
Register es next to ru (selector shows EN | ES | RU) and complete the
catalog against the current English: the 13 messages added since #602,
the "many" plural form Intl.PluralRules('es') selects for exact millions,
and fixes where the English had changed (e.g. "hace hace" in LIVE ·
updated, minutes written as metres). Terminology made consistent (buque,
aeronave, incendio activo); key names stay in English. Meir's wording is
kept everywhere else. Adds docs/translations/es.md.
Co-Authored-By: Claude Opus 5.5 <[email protected]>