- **Sélecteur de langue FR / EN** dans l'en-tête de l'application. La totalité de l'interface bascule : titres de modules, libellés, listes déroulantes, boutons, infobulles, messages d'état, ligne d'aide du clavier et texte des slots vides.
- **Détection au démarrage** d'après la langue du navigateur (`fr` → français, sinon anglais), modifiable d'un clic.
- La langue retenue est **enregistrée dans les sessions `.json`** et restaurée au chargement.
- L'attribut `lang` du document suit la langue choisie, pour les lecteurs d'écran et la synthèse vocale.
### Modifié
- La ligne d'aide du clavier combine désormais langue et disposition : quatre variantes possibles (FR/EN × QWERTY/AZERTY).
- Le vocabulaire musical universel reste inchangé dans les deux langues : noms de notes et d'accords, types (DIM, MIN, MAJ, AUG, SUS2, SUS4, 5, m♭6), tensions et altérations, modes de performance (block, strum, harp, arp), drop voicings et valeurs rythmiques.
### Notes d'implémentation
- Le français reste la version de référence dans le balisage ; les textes d'origine sont capturés au chargement et restaurés au retour en FR, ce qui évite toute perte après plusieurs changements de langue.
- Un seul fichier applicatif : pas de version anglaise séparée, donc aucun risque de divergence entre les deux langues.
L'en-tête porte un sélecteur **FR / EN** qui bascule toute l'interface. La langue est détectée au démarrage d'après le navigateur et conservée dans les sessions `.json`. Le vocabulaire musical (noms d'accords, types, tensions, modes de performance) est identique dans les deux langues.
Le **LCD** est votre référence permanente : il affiche le nom de l'accord courant, ses notes réelles (avec octaves), et l'état des modes (voicing, drop, key, perf, MIDI, voice-leading).
<p>Machine à accords et à progressions. Le principe tient en une phrase : <strong>vous ne jouez pas les notes d'un accord, vous le décrivez</strong> — une fondamentale, un type, des tensions — et la machine fait le reste, jusqu'à vos synthés ou votre DAW.</p>
</div>
@@ -212,6 +212,7 @@
</ul>
<figcaption>fig. 1 — cartographie de la face avant</figcaption>
</figure>
<p>L'en-tête de l'application porte un sélecteur <strong>FR / EN</strong> qui bascule toute l'interface : libellés, listes, boutons, infobulles et messages. La langue est détectée au démarrage d'après votre navigateur et conservée dans les sessions <code>.json</code>. Le vocabulaire musical — noms d'accords, types, tensions, modes de performance — reste identique dans les deux langues.</p>
</section>
<!-- ============ 02 PREMIER ACCORD ============ -->
@@ -729,7 +730,7 @@
</table>
</section>
<footer>_chordlab · manuel rev. 2.4 · underscorelab / leradiologue</footer>
<footer>_chordlab · manuel rev. 2.5 · underscorelab / leradiologue</footer>
<p>A chord and progression machine. The whole idea fits in one sentence: <strong>you don't play the notes of a chord, you describe it</strong> — a root, a type, some tensions — and the machine takes it from there, all the way to your synths or your DAW.</p>
</div>
@@ -212,6 +212,7 @@
</ul>
<figcaption>fig. 1 — front panel map</figcaption>
</figure>
<p>The app header carries an <strong>FR / EN</strong> switch that flips the whole interface: labels, dropdowns, buttons, tooltips and messages. The language is detected at startup from your browser and stored in <code>.json</code> sessions. Musical vocabulary — chord names, types, tensions, performance modes — stays the same in both languages.</p>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.