betagouv / beta.gouv.fr

Le site public de l'Incubateur de Services Numériques de l'État
https://beta.gouv.fr
245 stars 1.01k forks source link

Pas le droit d'être Rock & Roll dans l'Incubateur??? #174

Closed Morendil closed 8 years ago

Morendil commented 8 years ago

Problème rencontré par PP lors de la création de sa page, dont la bio contenait les mots "Rock & Roll": la présence de l'esperluète fait échouer les tests d'intégration continue (html5linter je suppose)

Morendil commented 8 years ago

Apparemment la solution consiste à utiliser xml_escape, like so:

        <div class="description">
            {{ include.description.bio | xml_escape }}
        </div>

ce qui va générer

        <div class="description">
            Rock &amp; Roll
        </div>

Ce qui me gêne un peu c'est qu'il faudrait faire ça en principe pour tous les contenus extraits d'un bloc YAML, et je me demande s'il y a une meilleure solution.

MattiSG commented 8 years ago

Jekyll ne peut pas deviner les fois où l'utilisateur veut mettre du HTML brut ou échappé. Dans de la métadonnée, il semble pertinent de ne pas échapper.

La meilleure solution me semble être d'utiliser le corps de la page (par opposition au front-matter) pour les bios. Le corps est interprété comme étant au format donné par l'extension de fichier, donc Markdown dans le cas présent. Je n'avais pas fait ce choix en considérant qu'il était probable qu'on décide plus tard d'utiliser le corps de la page pour donner plus d'infos que la bio, mais YAGNI.