我正在尝试使用 Markdown 和 LaTeX 建立一个新的文档系统。经过几个小时,大部分事情都运行顺利,但表格有点复杂。
大多数文本都可以用 Markdown 语法编写,包括
\usepackage[fencedCode,inlineFootnotes,citations,definitionLists,hashEnumerators,smartEllipses,hybrid]{markdown}
但是,具有定义单元格宽度和多列的表格必须在 LaTeX 本机代码中完成。
为了让文档更容易记录,我计划创建一个 LaTeX 宏来创建这些表格。这样作者只需要填写一些宏变量,LaTeX 就会创建表格。
即使这几乎可以工作,但是
我必须\end{markdown}
在创建表格之前使用 停止 Markdown 环境,然后使用 启动 Markdown \begin{markdown}
。这在文档中无法正常工作,例如:
\end{markdown}
\marcocreatetable
{parameter 1}
{parameter 2}
\begin{markdown}
但是,当尝试将这些命令放入宏中时
\newcommand{\marcocreatetable}[2]{
\end{markdown}
\begin{longtable}{>{\columncolor[gray]{0.8}}p{2.5cm}|p{2.5cm} p{2.5cm} p{3.5cm} p{2.5cm}}
\arrayrulecolor{red}\hline
Cell1&\multicolumn{2}{l}{S\{1\} #1}&\multicolumn{2}{r}{#2}\\\hline
Cell x&cell y &\multicolumn{1}{c}{\textbf{cell w}}&cell z&\multicolumn{1}{c}{\textbf{6}}\\
\end{longtable}
\begin{markdown}
}
使用类似宏
%\end{markdown}
\marcocreatetable
{parameter 1}
{parameter 2}
%\begin{markdown}
LaTeX 抱怨
\begin{document} ended by \end{markdown}.
似乎markdown
在宏中结束效果不太好。是的,markdown
在宏的开头结束并markdown
从宏的结尾开始可能是错误的代码,但我想仅使用一个命令创建一个表。
对于 LaTeX 大问题,您有什么建议吗?
答案1
我确实找到了解决方案。
在宏中,我必须使用\endmarkdown{}
而不是\end{markdown}
。