L’en-tête : la balise <theme>
Ce qui identifie votre thème — et qui ne va QUE dans theme.xml.
<theme> est la racine de tout fichier XML d’un thème. Mais ses attributs d’identité n’ont de sens que dans theme.xml : c’est ce fichier-là que lit le gestionnaire de thèmes pour savoir de quoi il s’agit.
À retenir Dans
theme.xml, renseignez-les tous : sans eux, votre thème s’affiche sans nom, sans version, et le gestionnaire ne sait pas sur quels écrans il fonctionne. Dans les autres fichiers, écrivez<theme>nu : les répéter n’apporte rien et peut semer la confusion.
Les attributs
| Attribut | Rôle | Exemple | Si absent |
|---|---|---|---|
name | Nom affiché dans la liste des thèmes | name="Mon Thème" | le nom du dossier |
version | Version du thème | version="1.2" | non affichée |
author | L’auteur | author="Benoît" | non affiché |
recalbox | Version minimale de Recalbox exigée | recalbox="10.0" | toutes versions |
compatibility | Types d’écran gérés : hdmi, crt, jamma, tate | compatibility="hdmi,crt" | hdmi |
resolutions | Définitions gérées : qvga, vga, hd, fhd | resolutions="hd,fhd" | fhd,hd |
compatibility et resolutions sont exactement les pictogrammes affichés par le gestionnaire de thèmes : HDMI / CRT / JAMMA / TATE d’un côté, SD 240p / SD+ 480p / HD 720p / FULLHD 1080p de l’autre. Les annoncer faux, c’est promettre ce que le thème ne tient pas.
⚠️ Sans eux, votre thème ne peut pas être publié dans le gestionnaire de thèmes : un nom, une version et un auteur sont exigés. Voir Partager son thème.
Les deux cas
Dans theme.xml — la balise complète :
<theme name="Mon Thème" version="1.2" author="Benoît"
recalbox="10.0" compatibility="hdmi,crt" resolutions="hd,fhd">
…
</theme>
Dans tous les autres fichiers du thème — la balise nue :
<theme>
<view name="system"> … </view>
</theme>