powersync-docs/docs/appareils/compatibilite.de.md
Patrick Schurig 846c0c7525 feat(i18n): traduire ce qu'on écrit, garder verbatim ce que la machine affiche
Signalé sur /de/appareils/bornes/goecharger/ : la page était allemande sur deux
lignes et anglaise sur tout le reste. Le diagnostic a séparé deux choses que
j'avais mises dans le même sac le 2026-10-12.

LA LIGNE DE PARTAGE, écrite en tête du générateur :

  • les LIBELLÉS QUE NOUS ÉCRIVONS (en-têtes de colonnes, titres de section,
    oui/non, « Documentation fabricant ») → TRADUITS. Ils ne désignent rien à
    l'écran, l'anglais n'y était qu'une friction. REF devient REF_I18N, trois
    jeux de 20 libellés.

  • le CONTENU VENANT DE NYMEA (noms de modèles, clés de registres, libellés de
    champs comme « MAC address », unités) → VERBATIM, en anglais. Ce sont
    exactement les chaînes que l'installateur lit DANS L'APP, qui tourne en
    en_US. Les traduire rendrait la doc inutilisable pour retrouver un champ à
    l'écran.

Et la pièce qui change l'expérience plus que la traduction elle-même : une note
`verbatim`, générée dans la langue de la page, en tête du bloc de référence.
Sans elle le mélange FR/EN passe pour une traduction bâclée ; avec elle c'est
une convention que le lecteur comprend.

L'injection devient sensible à la langue : `locale_of()` déduit la langue du
suffixe du fichier et `process()` rend le bloc en conséquence. Sans ça le même
bloc partait à l'identique dans les trois versions.

TAGLINES ET TITRES — i18n/devices.yaml, 52 entrées

Le tagline vivait en paragraphe libre, écrit UNE SEULE FOIS à la création de la
page : il restait donc en anglais sur les trois versions, y compris la
FRANÇAISE. Il entre dans le bloc badges, donc il est régénéré, donc traduisible
pour toujours. 52 taglines en fr et de ; l'anglais retombe sur l'amont.

Les traductions vivent dans le dépôt de DOC et pas dans les meta.json : trois
des cinq dépôts plugins sont des dépôts nymea amont que l'AGENTS.md interdit de
modifier. Repli sur l'amont pour toute entrée absente.

Deux titres s'affichaient en FRANÇAIS sous /de/ et /en/ — « Compteur ABB B2x »,
« Borne ABB Terra AC » : corrigés, dans la page et dans la nav.

Deux coquilles AMONT corrigées au passage, repérées en relisant les 57 entrées :
meta.json annonçait « Bestel » pour Vestel et « Easeex » pour Easee. Signalées
comme corrections, pas comme traductions, dans i18n/devices.yaml.

48 FICHES FR ÉTAIENT DANS UN ANCIEN FORMAT, ET MENTAIENT

Trouvé en vérifiant : 48 fiches FR n'avaient pas de marqueur `__badges_*__`.
Leurs badges étaient du HTML figé, écrit une fois — goecharger affichait
« NIGHTLY » alors que PORTING_STATUS dit `stable` depuis. Elles sont migrées au
format canonique : badges générés, donc exacts, plus titre localisé, tagline et
intertitre. Reste `hvac/homeconnect.md`, orpheline (plugin hors PORTING_STATUS).

NAV : UN CONSTAT QUI ÉVITE DE REFAIRE L'ESSAI

`literate-nav` ne lit que son `nav_file` : la substitution par suffixe de
mkdocs-static-i18n ne s'y applique PAS. Un `SUMMARY.de.md` généré n'était lu par
personne et la barre latérale allemande gardait les noms français. Testé, puis
retiré — et la raison est écrite dans le générateur pour que personne n'y
revienne. Les libellés de nav passent par `nav_translations` : 31 éléments
traduits par langue au lieu de 29.

RÉFÉRENCE API : LAISSÉE EN ANGLAIS, DÉLIBÉRÉMENT

Les 23 pages de l'API n'ont pas de variante par langue. Leur traduire les
libellés aurait fait voir du FRANÇAIS aux lecteurs /de/ et /en/ par le repli —
une régression. Créer 46 variantes pour traduire dix libellés aurait triplé
28 000 mots de contenu généré pour un gain nul : le reste de la page (noms de
méthodes, de champs, de types, descriptions) est l'API elle-même, et ce sont les
chaînes qu'on écrit dans ses requêtes. À la place, une note explique dans les
trois langues POURQUOI cette référence est en anglais.

Vérifié : build --strict sans avertissement, les deux générateurs rendent « Doc à
jour » en --check, et la fiche goecharger relue dans les trois langues.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-10-13 08:42:21 +02:00

11 KiB

Kompatibilität

Referenzliste der von ETM PowerSync unterstützten Geräte. Erzeugt aus PORTING_STATUS.yaml — zwischen den Markern nicht manuell ändern.

Jedes Gerät trägt drei unabhängige Badges:

APT-Kanal — Verfügbarkeit im Paket-Repository:

Badge Bedeutung
STABLE APT-Repository stable — produktionsreif
TESTING APT-Repository testing — funktionsfähig, in Bewährung
NIGHTLY Portierung läuft — nicht für den Produktivbetrieb

Herkunft — woher das Plugin kommt:

Badge Bedeutung
ETM Von ETM-Schurig entwickeltes oder gepflegtes Plugin
NYMEA Upstream-Plugin von nymea (Open-Source-Community)
TIERS Externes Plugin von Dritten / aus der Community

Stabilität — vom Plugin-Autor erklärte Reife (meta.json):

Badge Bedeutung
CONSUMER Für den Endkundeneinsatz validiert
COMMUNITY Community-Plugin, Support nach bestem Bemühen

Compteurs

Marke / Modell Protokoll Kanal Herkunft Stabilität
Eastron SDM Modbus RTU STABLE ETM CONSUMER
ABB-B2x-Zähler Modbus RTU TESTING ETM CONSUMER
powerfox — STABLE NYMEA CONSUMER
B+G E-Tech Modbus RTU STABLE NYMEA CONSUMER
inepro Metering Modbus RTU STABLE NYMEA CONSUMER
Schrack Modbus RTU STABLE NYMEA CONSUMER
Vestel Modbus TCP STABLE NYMEA CONSUMER
Senseair Modbus RTU STABLE NYMEA CONSUMER

Bornes de recharge

Marke / Modell Protokoll Kanal Herkunft Stabilität
ABB Terra AC Ladestation Modbus TCP TESTING ETM CONSUMER
Keba Modbus TCP TESTING ETM CONSUMER
Easee — STABLE NYMEA CONSUMER
go-eCharger Modbus TCP STABLE NYMEA CONSUMER
EVBox — STABLE NYMEA CONSUMER
EVerest Modbus TCP STABLE NYMEA CONSUMER
Amber Electric — STABLE NYMEA —
Amperfied Modbus RTU STABLE NYMEA CONSUMER
MENNEKES Modbus TCP STABLE NYMEA CONSUMER
webasto Modbus TCP STABLE NYMEA CONSUMER
PC Electric Modbus TCP STABLE NYMEA CONSUMER
PhoenixConnect Modbus TCP STABLE NYMEA CONSUMER
INRO Modbus TCP STABLE NYMEA CONSUMER

SmartDevices

Marke / Modell Protokoll Kanal Herkunft Stabilität
Shelly — STABLE NYMEA CONSUMER
Tasmota — STABLE NYMEA COMMUNITY
Tuya — STABLE NYMEA COMMUNITY
GPIO — STABLE NYMEA COMMUNITY
USB Relay — STABLE NYMEA CONSUMER
USB-RLY82 — STABLE NYMEA CONSUMER
MQTT client — STABLE NYMEA COMMUNITY
Modbus Commander Modbus TCP STABLE NYMEA COMMUNITY
UniPi — STABLE NYMEA CONSUMER

HVAC

Marke / Modell Protokoll Kanal Herkunft Stabilität
Daikin — STABLE NYMEA COMMUNITY
SG-Ready — STABLE NYMEA COMMUNITY
SimpleHeatpump — STABLE NYMEA COMMUNITY
Tado — STABLE NYMEA COMMUNITY
Stiebel Eltron Modbus TCP STABLE NYMEA COMMUNITY
iDM Modbus TCP STABLE NYMEA CONSUMER
Drexel und Weiss Modbus RTU STABLE NYMEA COMMUNITY
alpha innotec Modbus TCP STABLE NYMEA COMMUNITY
my-PV — STABLE NYMEA COMMUNITY

Onduleurs / PV

Marke / Modell Protokoll Kanal Herkunft Stabilität
Fronius Modbus TCP STABLE NYMEA CONSUMER
Bosswerk Modbus TCP STABLE NYMEA CONSUMER
Solar-Log — STABLE NYMEA CONSUMER
SMA Modbus TCP STABLE NYMEA CONSUMER
SolaX Power Inverter Modbus TCP STABLE NYMEA CONSUMER
Sungrow Inverter Modbus TCP STABLE NYMEA CONSUMER
Huawei FusionSolar Modbus TCP STABLE NYMEA CONSUMER
KOSTAL Solar Electric Modbus TCP STABLE NYMEA CONSUMER
mtec Modbus TCP STABLE NYMEA —
Wattsonic Modbus RTU STABLE NYMEA CONSUMER
SunSpec Modbus TCP STABLE NYMEA CONSUMER

Tarifs & prévisions

Marke / Modell Protokoll Kanal Herkunft Stabilität
OpenMeteo — TESTING ETM CONSUMER
aWATTar — STABLE NYMEA CONSUMER
Tempo — STABLE NYMEA CONSUMER
spot-hinta — STABLE NYMEA CONSUMER

Types génériques

Marke / Modell Protokoll Kanal Herkunft Stabilität
genericenergy — STABLE NYMEA —
genericheatingcooling — STABLE NYMEA —
genericcar — STABLE NYMEA —