Italian translation - #2668
Conversation
Add Italian translation
* AI used: Claude Opus 4.8
* Add locale/it/messages.json
* Register the it language in js/localization.js
* Restore missing Italian accents (à è é ì ò ù) across the translation
* Translate strings present in en but missing in it, including navigation groups, GPS presets, profile titles, settings search, OSD entries, and 9.x strings
* Complete Italian coverage: 100% translated, 0 fallback strings
* Translate all OSD items and help descriptions for a consistent OSD tab
* Translate new 9.x strings related to power limiting, motor wizard, map layers (GEO), backup/restore, flashing warnings, and settings migration
* Keep technical terms and CLI identifiers in English, consistently with the German translation
* Keep language_bg in Cyrillic
* Normalize terminology across the file:
* aeromobile -> velivolo
* tornare a casa -> tornare a Home
* fai clic destro -> clicca con il tasto destro
* Exclude unrelated changes to ci.yml and copilot-instructions.md
Validation:
* 2264 en/it keys aligned
* 0 missing accents
* 0 unaccented occurrences of the verb è
* 0 double spaces
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
|
Configurator test build ready — commit Download build artifacts for PR #2668 Available platforms (scroll to the Artifacts section at the bottom of the run page):
|
Translate all i18n-keyed strings still in English (598 keys), across every tab: adjustments, PID/gyro/notch filtering, ezTune, braking, launch, configuration, RTH/navigation, blackbox, firmware flasher, sensors, mixer, mission/waypoint, etc. - currentLanguage set to "it" (was "en") - Technical terms and acronyms kept in English (GPS, OSD, VTX, ESC, PID, RC, IMU, throttle, mixer, gyro, notch, Blackbox, Airmode, Roll/Pitch/Yaw axes, etc.) — ~220 short labels/identifiers intentionally stay in English - HTML and placeholders ($1/$2/$3) preserved and verified on every string - Terminology unified: "mezzo"/"aeromobile" -> "velivolo" - Verified: 0 missing accents, 0 unaccented "è" verbs, en/it aligned AI used: Claude Opus 4.8
|
|
The Opus translation looks like a really good start! A few types of issues remain: Incomplete Sensor Status DescriptionsCritical technical information is missing from Italian translations for sensor status indicators: sensorStatusGyro:
sensorStatusMag:
sensorStatusBaro:
Impact: Italian users cannot understand what the sensor status color indicators mean. This is moderately severe for user experience. Missing HTML Formatting TagsExample:
Impact: Low - visual consistency only, meaning is preserved. Not everything capitalized is an acronym to be preservedOpus apparently though that where words such as BARO and RAW were capitalized, they must be acronyms and should not be translated. But it translated the same words when in lower case. The above are examples only, and do not cover every adjustment needed. Side note - Haiku found those when asked to review 1/3rd of the file, at 1/5th the cost of Opus. :) I may be useful to give Sonnet the examples and have it look for others, then have humans carefully check it. |
|
Thank you for the feedback! I'll work on it asap! Glad to help! |
Rebased onto maintenance-10.x (the new base of upstream PR iNavFlight#2668) and: - Translate the 50 new 10.x strings: Map Generator tab (tiles, SD sync, cache), fixed-wing Auto Speed settings, OSD framerate, GPS diagnostics OSD element, CRSF sensor port, servo mixer target validation Address review feedback from PR iNavFlight#2668 (checked over the whole file, not just the cited examples): - Restore the color legend in all 8 sensor status strings (Gyro, Accel, Mag, Baro, GPS, Optical flow, Sonar, Airspeed): "Blu: funzionante, Rosso: errore, Scuro: non rilevato" - Restore missing HTML: red span in tabSwitchWaitForOperation; align stale initialSetupResetText and sensorDataFlashFreeSpace with English - Capitalization audit: uppercase emphasis is preserved in translation (FALLITO, AZIONE RICHIESTA, ANGOLI, TUTTE...); RAW kept as-is; fixed "e DISABILITATA" -> "è DISABILITATA" (uppercase predicate had escaped earlier accent checks) and grammar in "Cancella TUTTO il cablaggio" Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016BPosEyF54DDwykLeaJCgk
Full review of all 2301 EN->IT string pairs (12 parallel reviewers + adversarial verification), beyond the examples cited in upstream PR iNavFlight#2668: - 16 accent fixes that escaped earlier pattern-based passes ("un'utilita", "e nell'intervallo", "Si,", "giu", "l'autorita", verb "e" before spans) - 12 grammar fixes: "l'velivolo" -> "il velivolo" (regex artifact), "uscendo portata" -> "uscendo dalla portata", "il UAV" -> "l'UAV", "Rate stabilizzate" -> "stabilizzati", made-up word "invelabile" -> "impossibile da pilotare", "multirotore" plural agreement - 9 mistranslations: "centigradi" -> "centesimi di grado" (centidegrees), "Tipo assistenza satellitare" -> "a terra" (Ground Assistance), "GPS: bloccato" -> "GPS: lock acquisito", stale "Timer Output" -> "Gruppi di output (Timer)", "[%]" removed to match EN - 34 terminology alignments: RC "rate" kept in English (Rate ROLL/PITCH/ YAW, Rate ed Expo, ezTune Rate), "casa" -> "Home", "aeromobili" -> "velivoli", "Default:" -> "Predefinito:", Firmware Flasher tool name, "trim" kept in English - 3 stale strings realigned with current English (channel map A/E/T/R legend, reset-to-defaults button, unit-type help "only") - 2 untranslated Soaring strings translated All fixes machine-validated: HTML tags and $N placeholders identical to English, key alignment 2314=2314 unchanged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016BPosEyF54DDwykLeaJCgk
|
Ok, I fixed the reported issues, merged I noticed that the github action isn't uploading the mac arm artifacts. I'll take a look and open a new issue for it, as it seems unrelated to this translation. In the meantime, I'll run the ci on my fork for testing. I still have a few doubts about some stylistic choices. As soon as I have a compiled version, I'll review them manually. |
|
The fail in the build-mac is unrelated to my PR. The |
|
"Modalità"
I choose "converti", "transplita" isn't on Treccani |
|
I think this translation is ready to be merged, but any feedback is welcome. |





Hi, this PR adds an Italian translation.
To be transparent: this work was mostly done with AI (opus 4.8). I took advantage of it because, for work-related reasons, I currently have access to a subscription with a large token allowance.
I ran the GitHub Actions on my fork, and all configurators seem to work. I tested them on windows, mac (arm and intel) and linux.
I also asked some friends to take a look at the translation.
Any feedback is welcome.