在下面的降价代码中,我希望项目3从列表3开始。但由于markdown之间的代码块将此列表项作为一个新列表启动。有没有办法防止这种行为?

期望的输出:

1. item 1
2. item 2

```
Code block
```

3. item 3

产生的输出:

第一项 第二项

代码块

项目3


当前回答

Macmade的解决方案不再适用于我在Github页面上的Jekyll实例,但我在kramdown Github回购的一个问题上找到了这个解决方案。对于OP的例子,它看起来是这样的:

1. item 1
2. item 2

```
Code block
```

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

轻松解决了我的问题。

其他回答

请注意,还有许多可用的扩展可以修复Markdown使用的特定上下文的这种行为。

例如,python-markdown的sane_lists扩展(例如,在mkdocs中使用)将识别Markdown列表中使用的数字。您只需要启用这个扩展markdown。减记(some_text、扩展= [' sane_lists '])

在项目符号之间使用四个空格缩进内容

1. item 1
2. item 2

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

生产:

第一项 第二项 代码块 项目3

我的解决办法很简单:不要用点空格。

e.g.

1.apple

2.banana

3.cherry

4.drone

生产:

1.苹果

2.香蕉

3.樱桃

4.无人机

Macmade的解决方案不再适用于我在Github页面上的Jekyll实例,但我在kramdown Github回购的一个问题上找到了这个解决方案。对于OP的例子,它看起来是这样的:

1. item 1
2. item 2

```
Code block
```

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

轻松解决了我的问题。

注意在Macmade的解决方案中,你可以在“代码块”上方看到额外的一行代码。

这里有两个更好的解决方案:

Indent the code block by an extra 4 spaces (so usually 8, in this nested list example, 12). This will put the code in a <pre> element. On SO, you can even specify syntax highlight with a <!-- language: lang-js --> indented by 4 spaces (+1 here due to the nested list). item 1 item 2 Code.block('JavaScript', maybe)? item 3 Or, just put the Code block within backticks and indent by 4 spaces (here, 1 extra because of the nested list). You'll get a regular indented text paragraph, with a <code> element inside it. This one you can't syntax-highlight: item 1 item 2 Code block item 3

注意:你可以在这个答案上点击“编辑”来查看底层Markdown代码。不需要保存;)