使用Jekyll制作Markdown表格中的列表

11

我正在使用Jekyll/Markdown编写文档,其引擎是kramdown。
现在我想知道如何在markdown构建的表格中编写列表。

我尝试了以下内容。

|Name   |Columns             |
|-------|--------------------|
|PRIMARY|<ul><li>id</li></ul>|

在 GitHub 的 Gist 中,它被呈现成我想要的样子。

但是在 Jekyll(我的本地或 GitHub Pages 的 Jekyll)中,则不是这样。
http://yuya-takeyama.github.io/2011/10/08/hello-github-pages.html

是否有一种方法可以在 Jekyll 中将列表写成表格的形式?
如果需要,我会替换 Markdown 引擎。

5个回答

10

nomarkdown标签可以帮助:

|Name   |Columns                               |
|-------|--------------------------------------|
|PRIMARY|{::nomarkdown}<ul><li>id</li></ul>{:/}|

Jekyll渲染的表格

该解决方案适用于kramdown和redcarpet。


3
我们知道,从2.0版本开始,Jekyll默认使用kramdown作为markdown转换器。但是它不支持表格单元格的对齐合并等功能,我认为下面的内容可以帮助你。

jekyll-spaceship - Jekyll插件,提供强大的表格、mathjax、plantuml、mermaid、emoji、视频、youtube、vimeo、dailymotion等支持。

https://github.com/jeffreytse/jekyll-spaceship

目前提供以下扩展功能:
  • 跨多列的单元格
  • 跨多行的单元格
  • 单元格文本可以分别对齐
  • 表头不是必需的
  • 分组的表头行或数据行

table code

上面的代码将被解析为:

html table


2
这似乎最大化了 GitHub Markdown 的兼容性:
markdown: redcarpet
redcarpet:
  extensions:
    - no_intra_emphasis
    - fenced_code_blocks
    - autolink
    - tables
    - strikethrough
    - superscript
    - with_to_data

您提出的问题所涉及的扩展名是tables,但如果您想要在Gists中使用与您网页相同的标记,则需要获取其他内容。

1
不幸的是,GitHub Pages不再支持redcarpet,因此您必须自己构建Jekyll页面来解决此问题。 - biolauri

2

我认为Kramdown不支持多行表格,表格单元格中也不能有HTML(虽然我不是Kramdown专家)。

然而,Pandoc有几种不同的表格语法,其中包括:


其中“think”、“support multiline tables”和“table syntaxes”是链接词,可点击跳转。
+---------+----------+
| Name    | Columns  |
+=========+==========+
| PRIMARY | - id one |
|         | - id two |
+---------+----------+

您可以使用此插件从Jekyll中使用Pandoc。请注意,由于GitHub不支持Jekyll插件,因此您必须在本地运行Jekyll。

我使用我的设置测试了由Yuya制作的表格,它运行良好。 - Phlow

-3

1
这并不起作用。kramdown会渲染表格外的所有元素。但是markdown表格内部的HTML列表不会被渲染。 - udondan
该答案与问题“表格内的多行/列表”无关。 - KargWare

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接