Paneflow lit une valeur "theme" au premier niveau de paneflow.json.
Les thèmes inclus aujourd'hui sont One Dark et PaneFlow Light.
Omettre la clé, la définir à null, ou la réinitialiser depuis
Settings revient au thème par défaut One Dark.
TL;DR. Utilise Settings -> Themes dans l'interface, ou définis
"theme": "One Dark"/"theme": "PaneFlow Light"danspaneflow.json. Les changements de thème se rechargent à chaud après sauvegarde, sans redémarrer l'app.
Comment changer le thème actif ?
Ouvre Settings -> Themes et choisis l'un des trois segments :
| Segment | Ce que Paneflow enregistre |
|---|---|
| Light | "PaneFlow Light" |
| Dark | "One Dark" |
| System | Le thème concret correspondant au moment du clic : "PaneFlow Light" si l'apparence OS est claire, sinon "One Dark". |
System n'est pas encore stocké comme un mode persistant qui suit
l'OS. Après sélection, Paneflow écrit l'un des deux noms de thème
inclus ci-dessus.
Tu peux aussi modifier paneflow.json directement :
{
"$schema": "https://github.com/arthjean/paneflow/raw/main/schemas/paneflow.schema.json",
"$schemaVersion": "1.0.0",
"theme": "PaneFlow Light"
}Le fichier de configuration vit à :
| OS | Chemin |
|---|---|
| Linux | ~/.config/paneflow/paneflow.json |
| macOS | ~/Library/Application Support/paneflow/paneflow.json |
| Windows | %APPDATA%\paneflow\paneflow.json |
Le schéma liste les graphies canoniques. À l'exécution, la recherche
du nom n'est pas sensible à la casse, mais les noms canoniques gardent
l'autocomplétion et les diffs propres. Les noms inconnus retombent sur
One Dark et émettent un avertissement dans les logs au prochain
parse du fichier. L'ensemble des clés reconnues vit dans le
schéma de configuration.
Quels thèmes sont livrés avec Paneflow aujourd'hui ?
Stable dans les builds actuels.
| Nom | Description |
|---|---|
"One Dark" | Thème sombre, par défaut. Inspiré de la palette One Dark d'Atom, puis ajusté pour le terminal et l'habillage de Paneflow. |
"PaneFlow Light" | Thème clair avec surface de travail blanche, habillage clair et palette de syntaxe claire dédiée. |
Un thème Paneflow définit 36 emplacements de couleurs terminal : une palette ANSI 24 couleurs (8 teintes x 3 intensités : normal, vif, atténué), 5 couleurs de base arrière-plan/premier-plan, le curseur, la sélection avec un premier-plan dérivé, le curseur de barre de défilement, le texte des liens et 2 couleurs de barre de titre. Paneflow garde aussi une palette de syntaxe séparée pour la surface Diff.
Le premier-plan de sélection n'est pas réglé à la main. Paneflow le recalcule au chargement du thème jusqu'à atteindre APCA Lc >= 45 face à l'arrière-plan de sélection, pour que le texte sélectionné reste lisible.
Qu'est-ce qu'un thème affecte ?
Les thèmes changent plus que les couleurs ANSI du terminal :
- arrière-plan, premier-plan, curseur, sélection, barre de défilement, liens et palette ANSI du terminal ;
- palette d'habillage de l'app dérivée du thème actif ;
- panneaux Markdown et tableaux ;
- couleurs de syntaxe Diff et Review ;
- barre de titre et matériaux natifs sur les plateformes prises en charge.
Deux réglages liés restent séparés du nom du thème :
terminal.cursor_colorsurcharge uniquement le curseur du terminal.nullutilise la couleur de curseur du thème actif.commands[].workspace.colorest une couleur de template workspace, pas un accent de thème.
Comment fonctionne le rechargement à chaud des thèmes ?
Quand tu sauvegardes paneflow.json, Paneflow re-résout le thème
actif à la volée. Aucun redémarrage ni rechargement de fenêtre n'est
nécessaire.
Deux mécanismes pilotent le rechargement :
- Chemin piloté par évènement. Un watcher
notifysurveille le dossier de configuration et débounce les évènements fichier à 300 ms. - Repli par sondage. Si le watcher OS ne peut pas démarrer,
Paneflow retombe sur un sondage
mtimeà 500 ms.
Tu verras la nouvelle palette prendre effet à la prochaine frame de rendu après le déclenchement du watcher ou du repli. Si le rechargement échoue silencieusement sur ta machine, la page de dépannage liste les causes courantes.
Les clés de thème et de typographie se rechargent à chaud depuis
paneflow.json. La cléwindow_decorationsest lue une seule fois au démarrage, donc la modifier demande toujours de redémarrer Paneflow.
Comment créer un thème personnalisé ?
Les fichiers de thème personnalisés fournis par l'utilisateur ne sont
pas encore pris en charge. Paneflow ne charge pas theme.json, et il
n'existe pas aujourd'hui de format de palette personnalisée dans
paneflow.json.
Si tu veux une palette précise, ouvre une
issue GitHub avec
le cas d'usage et la palette. Les thèmes inclus sont réglés dans
src-app/src/theme/builtin.rs et livrés avec chaque release.