Markdown: продолжить нумерованный список

В следующем коде кода я хочу, чтобы item 3 начинался со номера списка 3. Но из-за того, что кодовый блок между уценкой запускает этот элемент списка как новый список. Есть ли способ предотвратить это поведение?

Требуемый вывод:

1. item 1
2. item 2

```
Code block
```

3. item 3

Произведенный выход:

  • item 1
  • item 2

Code block

  • item 3

Ответ 1

Используйте четыре пробела для содержимого отступа между точками маркера

1. item 1
2. item 2

    ```
    Code block
    ```
3. item 3

Выдает:

  • item 1
  • item 2

    Code block

  • item 3

Ответ 2

Обратите внимание, что в решении Macmade вы можете увидеть дополнительную строку кода над блоком кода.

Вот два лучших решения:

  • Отступьте блок кода дополнительными 4 пробелами (обычно 8, в этом примере с вложенным списком 12). Это поместит код в элемент <pre>. В SO вы даже можете указать синтаксис подсветки с помощью <!-- language: lang-js --> с отступом на 4 пробела (+1 из-за вложенного списка).

    • item 1
    • item 2

      Code.block('JavaScript', maybe)?
      
    • item 3

  • Или просто поместите блок кода в backticks и indent на 4 пробела (здесь 1 дополнительный из-за вложенного списка). Вы получите обычный абзац с отступом, содержащий внутри него элемент <code>. Вы не можете выделить синтаксис:

    • item 1
    • item 2

      Code block

    • item 3

Примечание: вы можете нажать "изменить" в этом ответе, чтобы увидеть базовый код Markdown. Не нужно сохранять;)

Ответ 3

Как расширение существующих ответов. Для тех, кто пытается продолжить нумерованный список после чего-то, кроме кода. Например, второй абзац. Просто отпустите второй абзац как минимум на 1 пробел.

Markdown:

1. one
2. two

 three
3. four

Вывод:

  • один
  • два

    три

  • четыре

Ответ 4

Если вы используете вкладку для отступов кода, она будет формировать весь блок в одну строку. Чтобы этого избежать, вам нужно использовать список, упорядоченный по html.

  • item 1
  • item 2

Блок кода

<ol start="3">
  <li>item 3</li>
  <li>item 4</li>
</ol>

Ответ 5

Решение Macmade больше не работает для меня на моем экземпляре Jekyll на страницах Github, но я нашел это решение для одной проблемы с репозиторием kramdown github. Для примера OP это будет выглядеть так:

1. item 1
2. item 2

'''
Code block
'''

{:start="3"}
3. item 3

Решил мои проблемы легко.

Ответ 6

Источник

<span>1.</span> item 1<br/>
<span>2.</span> item 2
```
Code block
```
<span>3.</span> item 3


Результат;

1. пункт 1
2. пункт 2 Code block 3. пункт 3

Ответ 7

Поместите номера в круглые скобки вместо того, чтобы следовать за ним.

(1) item 1
(2) пункт 2 code block (3) пункт 3

Ответ 8

Я решил эту проблему на Github, отделяя отступ в подблоке с новой строкой, например, вы пишете элемент 1, затем нажмите дважды (например, если это был новый абзац), отступьте блок и напишите, что вы хотите (блок кода, текст и т.д.). Более подробная информация о Markdown list и Разметка линии Markdown.

Пример:

  • item one
  • item two

    this block acts as a new paragraph, above there is a blank line

  • элемент три

    some other code

  • элемент четыре

Ответ 9

Если вы не хотите, чтобы строки между элементами списка были с отступом, как, например, пользователь Mars, упомянутый в его комментарии, вы можете использовать pandoc example_lists. Из их документов:

(@)  My first example will be numbered (1).
(@)  My second example will be numbered (2).

Explanation of examples.

(@)  My third example will be numbered (3).