我已在 Pandoc Markdown 文档中使用内联 Latex 定义表格。原因是我需要对表格行进行分组(仅在某些行之间使用水平线)。
我正在尝试pandoc-tablenos
通过执行以下操作来使用此内联 Latex 表:
Table: Caption. {#tbl:id}
在表格下方添加(此文本与内联 Latex 的最后一行之间有一个换行符)(如上所述这里)- 结果:输出 PDF 中存在逐字文本
Table: Caption. {#tbl:id}
(表格下方),但tbl:id
未被识别为有效 ID
- 结果:输出 PDF 中存在逐字文本
带有内联 Latex 表的 Pandoc markdown 文档示例:
# Expressions
Test 123. Table:
\begin{footnotesize}
\begin{tabular}{ | l l l | } \hline
\textbf{Expression} & \textbf{Meaning} & \textbf{Associativity} \\ \hline
\texttt{e1 grouped by e2} & Add a group to a grouping & left \\
\texttt{e1 where e2} & Filter a grouping & left \\ \hline
\end{tabular}
\end{footnotesize}
Some more text. *I would like to reference the table here.*
我执行pandoc
如下操作来构建一个 Latex 文档:
pandoc --standalone --from markdown -F pandoc-tablenos --pdf-engine=xelatex <input-file>.md -o <output-file>.tex
答案1
您需要在 latex 表中添加标题和表 ID。由于您正在使用tabular
且没有浮动环境,因此您必须\captionof
从包中使用caption
。您可以在 yaml-header 中加载它:
---
header-includes: \usepackage{caption}
---
# Expressions
Test 123. Table:
\begin{footnotesize}
\captionof{table}{A \LaTeX-table. \label{tbl:latex}}
\begin{tabular}{ | l l l | } \hline
\textbf{Expression} & \textbf{Meaning} & \textbf{Associativity} \\ \hline
\texttt{e1 grouped by e2} & Add a group to a grouping & left \\
\texttt{e1 where e2} & Filter a grouping & left \\ \hline
\end{tabular}
\end{footnotesize}
Some more text. See table @tbl:latex
您可以忽略该警告:
pandoc-tablenos:错误引用:@tbl:latex。
这只是意味着你没有在pandoc-tablenos
语法中定义标签