Ét.Nadji.fr/

Du code, des mots, des livres.

Quelques modifications des CSS de Métopes

Remarque:
Si vous ne savez pas ce qu’est Métopes, cet article n’a aucun intérêt pour vous.

Métopes peut avoir ses bugs, mais dans la plupart des cas, quand une unité éditoriale (UE) est mal rendue, le bug est humain. Que ce soit dans le document Word ou dans XMlmind, il est toujours possible qu’on ait mal stylé1 ou omis quelque chose. L’avantage du XML, c’est que c’est punitif2, si on s’est planté – et on se plantera, forcément – ça se remarque.

Alors autant essayer d’augmenter un peu la détection d’erreurs, en amont. Et on peut le faire avec les CSS de Métopes. Il est en effet possible d’y accéder, et donc de modifier l’affichage du texte des fichiers XML/TEI/Métopes dans XMLmind.

Sous Windows®, les fichiers à modifier se trouvent dans AppData\Roaming\XMLmind\XMLEditor7\addon\metopes_tei\css. Vu la longueur du chemin (où manque d’ailleurs le dossier utilisateur au début), je vais le sous-entendre quand je pointerais vers un fichier à modifier.

Sommaire

  1. Préalables
  2. Différencier
    1. Titre / sous-titre d’une UE
    2. Notes de bas de page / notes de fin
    3. Affiliation d’un auteur / son nom
    4. Liste dans le texte / liste dans une note
  3. Visibiliser
    1. Les line beginning (lb)
    2. Les commentaires de révision de Word
  4. Cosmétique
    1. Aligner l’affiliation et le nom d’un auteur de la même façon

Préalables 🔗

  1. Ça se passe dans tei_ue_core_text.css.
  2. Vous devriez déjà le savoir, il faut employer une police unicode.

Différencier 🔗

Titre / sous-titre d’une UE 🔗

En l’état, les CSS déclarent simplement un corps de texte plus gros :

titlePart {
  font-size:140%;
}

Seulement, cela ne suffit pas pour différencier le titre de l’UE de son sous-titre, puisque les deux titres sont des titlePart. Cela peut amener à retravailler le texte bien plus tard, parce que les deux titres se retrouvent « collés » l’un à l’autre (c’est le comportement de Lodel quand il rencontre deux titlePart de même niveau).

Si l’on ajoute à la suite du code précédent3 :

titlePart[style="T_3_Article"]:before,
titlePart[style="T_SousTitre"]:before,
titlePart[style="T_Surtitre"]:before {
  color:#143AA3;
  display: block;
}
titlePart[style="T_3_Article"]:before {content: "Titre UE :";} titlePart[style="T_SousTitre"]:before {content: "Sous-titre :";} titlePart[style="T_Surtitre"]:before {content: "Sur-Titre UE :";}

Rien de bien compliqué, mais qui peut éviter des confusions; on fait apparaître un bloc de couleur bleue4 annonçant la nature du titre avant ce dernier.

Illustration de la modification CSS

À la base, je voulais simplement que cela s’affiche avant, sur la même ligne que le titre. Mais en scrollant un peu vite, on pourrait passer sans se rendre compte qu’il y a deux titres de même niveau. Et c’était pas très beau, aussi. En faisant en sorte que le :before se comporte comme un bloc, on chasse tout vers le bas — et on a donc plus de chances de repérer que quelque chose ne va pas.

Notes de bas de page / notes de fin 🔗

Métopes permet de transformer rapidement les notes de bas de page en note de fin, mais si les notes de bas de page ont un fond gris permettant de les repérer dans le texte, ce n’est pas le cas des notes de fin.

note[place=end] > p {
  background-color: #d3f3ff;
}

Tant qu’à faire, la couleur de fond des notes de fin n’est pas la même que celle en bas de page; il est ainsi aisé de savoir si la conversion a été appliquée ou non.

Illustration de la modification CSS

Affiliation d’un auteur / son nom 🔗

Même principe qu’avec la différenciation titre et sous-titre, sauf que c’est en inline.

affiliation[style="auteur_Institution"]:before {
  content: "[Affili\00e9\00a0\00e0\00a0/\00a0Profession] ";
  color: #143AA3;
}
Illustration de la modification CSS
J’aime les trucs bien rangés.

Liste dans le texte / liste dans une note 🔗

Les CSS de Métopes appliquent une couleur de fond aux notes pour les distinguer du texte, mais cela ne s’applique pas aux listes contenues dans les notes. Quoique les notes se terminent toujours par un } inséré par une propriété content dans note[place]:after, il me semble mieux d’appliquer la couleur de fond des notes aux listes (et aux items de liste) contenues dans ces dernières.

Remarque:
Je sais, ce n’est pas bien de faire des listes dans des notes. Dites cela aux auteurs.
note list, note list item {
  background-color: #efefef;
}
Illustration de la modification CSS

Visibiliser 🔗

Les line beginning (lb) 🔗

En l’état, les CSS déclarent un retour à la ligne forcé quasiment invisible.

lb {
  content:"\A";
  line-height: 0.02;
}

Ce qui peut poser problème quand la longueur et la justification du texte les dissimulent (les line beggining peuvent être des ninjas).

J’ai fait le choix à l’opposé : les line beginning, en gras, en rouge, et signalés par un taquet « ⌊ » (j’aurais pu insérer « ¶ », mais cela aurait été source de confusion).

Illustration de la modification CSS

Il faut donc remplacer le code précédent par :

lb {
  color: red;
  display: inline;
  content:"\230A\A";
  font-weight: bold;
}

Les commentaires de révision de Word 🔗

En toute logique, les commentaires Word de révision du texte devraient être supprimés, puisqu’avec Métopes, on suppose un texte déjà bien abouti, les corrections à faire devant être minimales. Mais on n’est jamais trop prudent.

À noter que précédant ces commentaires, on trouve un horodatage du commentaire de révision, comme « etnadji 2019-01-10T10:20:00 a », qui doit aussi être supprimé.
note remark {
 color: black;
 border: 1px solid black;
 background-color: yellow;
}
note remark:before { color: red; font-weight: bold; content: "Note issue de Word "; }
Illustration de la modification CSS

Le jaune employé est absolument hideux mais c’est l’idée il attire l’œil. La mention « Note issue de Word » sert également à repérer les commentaires de révision vides (Métopes convertit les commentaires de révision en transformant chaque ligne du commentaire en note/remark).

Cosmétique 🔗

Aligner l’affiliation et le nom d’un auteur de la même façon 🔗

Le nom de l’auteur / du contributeur est aligné à droite, son affiliation à gauche. Cette modification ne sert donc pas à grand chose, mais ça arrêtera de me gêner.

Remarque:
Le byline > est là pour éviter que l’affiliation dans le teiHeader soit aussi aligné à droite.
byline > affiliation {
  text-align: right;
}

Notes

  1. Oui, c’est un néologisme, vu les définitions du saint TLFi. On a l’air un peu seul dans cet usage d’ailleurs, à quelques exceptions près. Dans le même genre, il y a « stylage », qui a l’air très prisé de l’industrie du cosmétique.  
  2. Et surtout, les messages d’erreur sont à peu près compréhensibles. Pas comme ceux de LATEX qui t’indiquent une « overfull hbox » parce que t’as oublié de fermer une liste à puces.  
  3. En l’occurrence l’ordre n’est pas très important, mais il pourrait l’être dans une autre modification, du fait du fonctionnement de CSS. Mais bon, avoir tous les styles appliqués aux titlePart au même endroit, c’est pratique.  
  4. C’est le bleu employé pour les petites capitales. 

Commentaires

Pour commenter ce billet, envoyez un mail sur etnadji (at) eml.cc, ou créez-vous votre blog.