-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Formatage Markdown des tableaux #54
Comments
Cette fonctionnalité est implémentée dans legi.py 0.3 (Legilibre/legi.py#25). |
@Seb35 Le problème de la syntaxe markdown des tableaux est qu'elle repose sur des espaces complétant le texte, ce qui est déjà un peu chiant à générer imho mais ça n'est pas critique* |
@boogheta Je n’avais effectivement pas pensé que les espaces généreront des diffs ; on peut peut-être contourner ceci en mettant toujours une espace à gauche et à droite de chaque cellule même si le texte brut est moins lisible. En syntaxe MediaWiki, il n’y aurait pas ce problème mais ce n’est pas non plus très lisible (exemple ci-dessous). @mdamien m’a parlé de daff (on a échangé sur différentes problématiques techniques qu’on rencontrait chacun de notre côté) ; ça peut effectivement convenir côté visualisation, mais j’aimerais avoir une solution texte brut pour ce qui est des dépôts Git.
|
Effectivement si on accepte de rendre le markdown moins lisible, soit en méthode wiki avec une ligne par cellule, soit en méthode github avec juste un espace à gauche et à droite, ça peut rendre les diffs lisibles sans bruit. exemple ci-dessous plus réaliste pour le côté peu lisible de la version github avec des cellules de longueur différentes :
|
J'ai une préférence perso pour la syntaxe mediawiki, en markdown, cela te force d'avoir un header, ce qui ajoute du bruit dans le diff |
J’ai aussi une préférence pour la syntaxe MediaWiki qui permet aussi des fusions de cellules. Par contre, je me vois pas trop écrire les titres en Markdown et les tableaux en MediaWiki, sinon l’option est du "tout MediaWiki", mais la syntaxe est largement moins répandue que Markdown. Bon, après, l’idéal serait de faire un sondage sur ce que proposent les principales interfaces Git (GitHub, Gitlab, Gogs, …) comme syntaxe de tableau et comme formats supportés, et mettre en balance tout ça avec la lisibilité des syntaxes. PS : toutes ces syntaxes, il y a en plein, un peu trop d’ailleurs et elles ne sont pas toujours bien formalisés (genre toutes les variantes de Markdown), et elles sont parfois limitées comme ce problème de tableaux ou le fait qu’il n’y a que 6 niveaux de titres (alors que j’aurais besoin de plus, 10 niveaux je crois ; je me permets d’ailleurs d’aller au-delà des 6 niveaux réglementaires, même si ça n’est pas reconnu par les moteurs de rendu). Je vais peut-être finir par faire ma propre syntaxe pour parer aux limitations, comme dit XKCD 927 (je dis ça dans un moment de déprime, mais c’est peut-être pas une solution raisonnable). |
C’est plus joli d’avoir des pages qui rendent bien sur github/gitlab/gogs mais sûrement juste un petit plus non ? |
- Les <br>, <p>, <div>, <span> sont transformés en paragraphes au sens Markdown - Les listes à puces prennent toujours le format de liste à puces Markdown, y compris avec les tirets exotiques (avec une ligne vide précédent la liste à puces comme en Markdown originel) - Maximum de 1 espace consécutive - Maximum de 2 retours chariots consécutifs - Le formatage des tableaux reste en HTML pour l’instant, mais la soupe de <tr>, <td>, <th> est séparée en les mettant chacun sur une ligne séparée; déjà ça rend le tableau plus lisible et les diffs plus lisibles - Les alinéas sont désormais correctement délimités, par 1 ou 2 retours chariot (2 le plus souvent, mais 1 lorsqu’il s’agit de listes à puces), hormis dans les tableaux où cela demande un parsing spécifique. Issue: #54 Issue: #25
Sans préjuger d’une décision sur cette issue, je viens a minima d’organiser un peu la soupe de tags de tableaux HTML, ça rend le texte et les diffs plus lisibles en restant fidèle à l’original. Par exemple sur le git-blame du code de la propriété intellectuelle, on voit assez distinctement sur l’article D631-1 les différentes modifications -- j’ai fait en sorte de retirer les espaces en fin de ligne à l’intérieur des cellules sinon ça rajoute des "faux-positifs" sur la version au 1er janvier 2012 (ainsi on voit sur cette version que seul le gras du titre est changé). |
Je viens de tomber sur le forum de CommonMark et il y a une longue discussion sur les tableaux (et qq autres, chercher "table"). (Je le mentionne mais j’ai pas encore lu en détails.) En y repensant à l’instant, je me dis que finalement la lisibilité des diffs peut être moins importante que la lisibilité de la syntaxe (donc j’ai moins de scrupules à utiliser une syntaxe Markdown/GFM) étant donné que je travaille sur la visualisation des diffs pour le site archeo-lex.fr (donc je me place sur plus de liberté d’action, comme pour la Fabrique, voir cette issue qui fait suite aux implémentations en PHP et Python) et il y a aussi l’option |
Actuellement les tableaux sont en HTML, et certains diffs montrent des retours à la ligne alors que ceux-ci ne sont que liés à la représentation HTML sans influence sur le contenu. Il faudrait nettoyer cette soupe de balises HTML et avoir une jolie représentation textuelle des tableaux.
La version GitHub du Markdown possède cette syntaxe, je trouve ça pas mal, elle a l’avantage d’être lisible. Vérifier s’il est possible de fusionner verticalement ou horizontalement des cellules ou, à défaut, si c’est bloquant en recherchant dans des textes de loi.
Voir aussi cette discussion sur Meta Stackoverflow.
The text was updated successfully, but these errors were encountered: