feat(i18n): localizzazione interfaccia — italiano, francese, tedesco (v0.4.0)

- translations/: harbour-hermes-it/fr/de.ts (78 stringhe ciascuna, 100%
  tradotte) + caricamento in main.cpp in base alla lingua di sistema
- .pro: CONFIG += sailfishapp_i18n + TRANSLATIONS (pattern ufficiale
  Sailfish: .qm generati in build e installati in
  /usr/share/harbour-hermes/translations)
- stringhe visibili del core in tr(): ApiClient, ChatModel, Recorder
  (VoiceRecorder era gia' ok); plurali dei messaggi corretti
  (1 message / %1 messages) in SessionsPage e CoverPage
- spec: BuildRequires qt5-qttools-linguist + %files translations
- README/BUILD: sezione Localization + workflow lupdate/lrelease

Verificato: lupdate 78/78 per it/fr/de, lrelease OK, e test runtime di
caricamento .qm (tutte le traduzioni risolte nei contesti corretti).
This commit is contained in:
2026-09-12 22:37:32 +02:00
parent 48467b372d
commit 22ccb49424
13 changed files with 1357 additions and 17 deletions
+16 -3
View File
@@ -76,14 +76,27 @@ richiede il probe WebUI su :8899). Esito 12/09/2026: unit 9/9, live completo OK.
```bash
cd ~/workspace
tar czf harbour-hermes-0.3.2.tar.gz \
--transform 's,^harbour-hermes,harbour-hermes-0.3.2,' \
tar czf harbour-hermes-0.4.0.tar.gz \
--transform 's,^harbour-hermes,harbour-hermes-0.4.0,' \
--exclude='.git' harbour-hermes
```
Lo spec si aspetta la directory `harbour-hermes-0.3.2/` (pattern degli altri
Lo spec si aspetta la directory `harbour-hermes-0.4.0/` (pattern degli altri
progetti: cercato in modo robusto anche per i sorgenti live di sfdk).
## Traduzioni
Stringhe UI in `qsTr()` (QML) e `tr()` (C++). Dopo modifiche alle stringhe:
```bash
lupdate -no-obsolete -recursive src qml -ts translations/harbour-hermes-it.ts \
translations/harbour-hermes-fr.ts translations/harbour-hermes-de.ts
```
In build `CONFIG += sailfishapp_i18n` compila i `.qm` e li installa in
`/usr/share/harbour-hermes/translations` (caricati all'avvio in base alla
lingua di sistema).
## 5. Dipendenze lato server (WebUI)
- `/api/transcribe` richiede un provider STT attivo sul server