我想用asciidoc动态生成一个表,看起来像这样:
--------------------------------------
|Text | Parameter | Value1 | Value2 |
--------------------------------------
|foo | param1 | val1 | val2 |
--------------------------------------
|bar | param2 | val3 | val4 |
| | param3 | value_ | val6 |
| | | multi_ | |
| | | 5 | |
| | param4 | val7 | val8 |
--------------------------------------
| baz | param5 | val9 | val10 |
--------------------------------------
也就是说,一个文本可能有多个参数,以及它们的参数 值可能跨越多行。我正在寻找一种自动化的方法 aline这些。我有一个程序来收集变化的数据,所以我可以 不要手动修复。
我目前做的是:我有框架和无网格嵌套表 参数,Value1和Value2行。这个问题只是他们的问题 aline如果每个值都不跨越多行。
我还尝试将Parameter,Value1和Value2放在一起,使用网格但没有框架。 它适用于对象,但看起来不太好,因为网格线不接触外表的网格线。添加 框架也看起来很暗淡,因为它强调多参数条目。
我真正想做的是在外表中添加一条额外的行(没有表格嵌套),中间没有水平线, 如果有额外的参数。 我不知道如何用asciidoc做到这一点。这有可能吗?关于如何解决这个问题的任何其他建议?
答案 0 :(得分:0)
如果您正在使用asciidoctor,那么表格还有许多其他选项,包括将列放在新行上,并使用表格的元数据来指定表格所包含的列数。这是在Asciidoctor中进行表格的推荐方法。您可以在user's guide中看到此示例和许多其他示例。举一个关于SO的例子:
[cols="2*"]
|===
|Cell in column 1, row 1
|Cell in column 2, row 1
|Cell in column 1, row 2
|Cell in column 2, row 2
|===
Asciidoctor可以替代asciidoc命令,但你会想看看differences between the two。
答案 1 :(得分:0)
.Multiline values alined with spans
[cols=",,,",width="60%", options="header"]
|================
|Text | Parameter | Value1 | Value2
|foo | param1 | val1 | val2
.3+<.<|foo .3+<.<|bar | val3 | val4
| razzle bla fasel foo bar | dazzle
|bli | bla
|foo2 | param3 | val5 | val6
|================
现在我需要做的就是告诉我的模板系统(jinja2)我需要跨越多少行,但这是一项勤奋而又常规的工作。