在以下标记代码中,我希望item 3
以列表编号3开头。但由于markdown之间的代码块将此列表项作为新列表启动。有没有办法阻止这种行为?
期望的输出:
1. item 1
2. item 2
```
Code block
```
3. item 3
产生输出:
Code block
答案 0 :(得分:453)
使用四个空格在项目符号点之间缩进内容
1. item 1
2. item 2
```
Code block
```
3. item 3
产地:
第2项
Code block
答案 1 :(得分:33)
请注意,在Macmade的解决方案中,您可以在“代码块”上方看到一行额外的代码。
以下是两个更好的解决方案:
将代码块缩进4个空格(通常为8,在此嵌套列表示例中为12)。这会将代码放在<pre>
元素中。在SO上,您甚至可以使用
指定syntax highlight
<!-- language: lang-js -->
缩进4个空格(由于嵌套列表,此处为+1)。
第2项
Code.block('JavaScript', maybe)?
第3项
或者,只需将Code块放在反引号中并缩进4个空格(此处,由于嵌套列表,因此会增加1个)。您将获得一个常规的缩进文本段落,其中包含<code>
元素。这个你不能语法突出显示:
第2项
Code block
第3项
注意:您可以点击此答案的“编辑”以查看基础Markdown代码。无需保存;)
答案 2 :(得分:28)
作为现有答案的扩展。对于那些试图在代码块以外的东西之后继续编号列表的人。例如第二段。只需将第二段缩进至少1个空格即可。
<强>降价:强>
1. one
2. two
three
3. four
<强>输出:强>
2
3
答案 3 :(得分:13)
如果使用tab缩进代码块,它会将整个块整形为一行。为避免这种情况,您需要使用html有序列表。
代码块
<ol start="3">
<li>item 3</li>
<li>item 4</li>
</ol>
答案 4 :(得分:9)
Macmade的解决方案不再适用于我在Github Pages上的Jekyll实例上,但我在kramdown github repo的问题上找到this solution。对于OP的例子,它看起来像这样:
GridSpacingItemDecoration
轻松解决我的问题。
答案 5 :(得分:4)
源;
<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项
答案 6 :(得分:1)
将列表编号放在括号中,而不是后跟句点。
(1)项目1
(2)第2项
code block
(3)第3项
答案 7 :(得分:1)
如果您不希望缩进列表项之间的行,例如在其评论中提到的用户Mars,则可以使用pandoc
的{{1}}功能。来自他们的docs:
example_lists
答案 8 :(得分:0)
我在Github上解决了这个问题,用新行分隔缩进的子块,例如,你写了第1项,然后按两次输入(就好像它是一个新的段落),缩进块并写下你想要的内容(代码块,文本等)。有关Markdown lists和Markdown line breaks的更多信息。
第二项
some other code
第三项
NotFoundHttpException in RouteCollection.php line 161:
答案 9 :(得分:0)
请注意,还有一些扩展可以针对Markdown使用的特定上下文解决此问题。
例如,python-markdown的 sane_lists 扩展名(例如,在mkdocs中使用),将识别Markdown列表中使用的数字。您只需要启用此扩展名arkdown.markdown(some_text, extensions=['sane_lists'])
答案 10 :(得分:0)
如果您想使文本与上一个列表项对齐,但又避免换行符“大”,请在列表项的末尾使用两个空格,并用一些空格缩进文本。
来源:(点是空格;-)当然)
1.·item1··
····This is some text
2.item2
结果:
答案 11 :(得分:0)
如果您恰巧使用Ruby gem redcarpet渲染Markdown,您可能仍然会遇到此问题。
您可以转义编号,而redcarpet会高兴地忽略任何特殊含义:
1\. Some heading
text text
text text
text text
2\. Some other heading
blah blah
more blah blah