669 votes

Markdown : continuer la liste numérotée

Dans le code markdown suivant, je veux item 3 pour commencer avec la liste numéro 3. Mais à cause du bloc de code qui se trouve entre les deux, Markdown commence cet élément de liste comme une nouvelle liste. Existe-t-il un moyen d'empêcher ce comportement ?

Sortie souhaitée :

1. item 1
2. item 2

```
Code block
```

3. item 3

Sortie produite :

  1. point 1
  2. point 2

Code block

  1. point 3

4 votes

Voici le solution correcte . Les triples backticks dans la réponse de Macmade produisent en fait juste un <code> Élément HTML contenant des sauts de ligne, qui ne peut pas être mis en évidence par la syntaxe, et qui comporte une ligne vierge supplémentaire au-dessus, visiblement mise en évidence comme du code.

1 votes

Si vous êtes vraiment désespéré, vous pouvez rechercher les codes de caractères HTML pour les chiffres que vous souhaitez utiliser (et pour chaque élément suivant)... comme dans &#50;&#57;. this is list item number 29 . Cependant, cela peut ne pas fonctionner dans tous les analyseurs markdown.

3voto

Oraculum Points 1409

En CommonMark Spec a un règlement à ce sujet

1. foo
2. bar
7) baz

Générer ce HTML

<ol>
<li>foo</li>
<li>bar</li>
</ol>
<ol start="3">
<li>baz</li>
</ol>

2voto

lomzher Points 61

Mettez les numéros de liste entre parenthèses au lieu de les faire suivre d'un point.

(1) point 1
(2) point 2 code block (3) point 3

2voto

Alex Points 335

Notez qu'il existe également un certain nombre d'extensions disponibles qui corrigent ce comportement pour des contextes spécifiques d'utilisation de Markdown.

Par exemple, listes d'attente de python-markdown (utilisée dans mkdocs, par exemple), reconnaîtra les nombres utilisés dans les listes Markdown. Il suffit d'activer cette extension arkdown.markdown(some_text, extensions=['sane_lists'])

1voto

Jarda Points 360

Si vous souhaitez que le texte soit aligné sur l'élément de liste qui le précède, mais que vous évitez un "gros" saut de ligne, utilisez deux espaces à la fin d'un élément de liste et indentez le texte avec quelques espaces.

Source : (les points sont des espaces ;-) bien sûr)

1.·item1··
····This is some text
2.item2

Résultat :

  1. article1
    Voici du texte
  2. article2

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X