EcrituresNumeriques / stylo

Stylo est un éditeur de textes pour articles scientifiques en sciences humaines et sociales.
https://stylo.huma-num.fr
GNU General Public License v3.0
48 stars 13 forks source link

Prendre en compte les <p> dans le yaml d'API avec { strip_markdown: true } #856

Open davidbgk opened 1 year ago

davidbgk commented 1 year ago

On se rend compte que si le YAML contient:

abstract:
  - lang: fr
    text_f: |
      S'inspirant sans doute de la Comtesse de Ségur, Sophie Rabau, maîtresse
      de conférences à la Sorbonne Nouvelle (et nouvelle romancière, auteure
      d'Embrasser Maria, (2022), s'est donné la
      peine de rédiger à l'intention de ses jeunes élèves, espiègles et
      désobéissants, un manuel très strict d'exercices de théorie
      littéraire... valable aussi pour tout romancier.
  - lang: en
    text_f: >-
      Probably inspired by la Comtesse de Ségur, Sophie Rabau, lecturer at
      Sorbonne Nouvelle University (and new novelist, author of Embrasser Maria
      (2022), went to the trouble of writing for her young, mischievous and
      disobedient students, a very strict manual of literary theory exercises...
      also valid for any novelist. 

dans la cas du fr on a un saut de ligne qui est interprété comme un paragraphe lors de la conversion markdown, dans le cas du en ça passe bien.

J'ai remonté la chaîne jusque https://github.com/EcrituresNumeriques/stylo/blob/5815c31a3dd90ccaa757be0d24cb71a4b97a4942/graphql/helpers/metadata.js#L87 mais je ne suis pas sûr de voir où sont les balises prises en compte lors du strip.

On a vu ça en séance avec @marviro et @RochDLY

ggrossetie commented 1 year ago

Je ne suis pas sûr de comprendre le problème...

Les sauts de lignes sont conservés en YAML avec |. On a donc des sauts de lignes sur le fr.text_f mais pas sur le en.text_f car on utilise >- (i.e., les sauts de lignes sont remplacés par des espaces et on strip le saut de ligne à la fin du texte): https://yaml-multiline.info/

davidbgk commented 1 year ago

Le problème c'est que je ne m'attends pas à recevoir un <p> avec l'option strip_markdown: true. Or, c'est le cas dans la version fr/|.