pandoc 到 PDF 没有在语言特定的代码部分周围放置阴影块

pandoc 到 PDF 没有在语言特定的代码部分周围放置阴影块

我的 .md 文件中有以下文本:

### Table of Contents, List of Tables, List of Figures

The example below shows how to place a table of contents, a list of
tables, and a list of figures, each in its own page.

~~~ latex
\newpage
\tableofcontents
\newpage
\listoftables
\newpage
\listoffigures
\newpage
~~~

当使用以下命令处理时:

pandoc --number-sections \
    --toc --variable lof=true --variable lot=true \
    --filter pantable \
    --filter pandoc-tablenos \
    --filter pandoc-fignos \
    --filter pandoc-latex-fontsize \
    --from markdown \
    --standalone \
    --template=template.latex
    --variable subparagraph:yes \
    --variable colorlinks:yes \
    --to latex \
    --output document.txt \
    document.md

代码块周围没有阴影块。当我有相同的部分,但latex在第一组之后没有时~~~,会生成阴影块,但我丢失了语言格式。我查看了许多潜在的解决方案,包括将以下内容添加到 template.latex 文件中:

$if(highlighting-macros)&
$highlighting-macros&
$end$

我收到以下错误:

LaTeX Error: Command \VerbBar already defined.
             Or name \end... illegal, see p.192 of the manual.

pandoc 为上述内容生成的代码是:

\begin{Shaded}
\begin{Highlighing}
\FunctionTok{\textbackslash{}newpage}
\FunctionTok{\textbackslash{}tableofcontents}
\FunctionTok{\textbackslash{}newpage}
\FunctionTok{\textbackslash{}listoftables}
\FunctionTok{\textbackslash{}newpage}
\FunctionTok{\textbackslash{}listoffigures}
\FunctionTok{\textbackslash{}newpage}
\end{Highlighing}
\end{Shaded}

当不指定语言时,将生成相同的部分,如下所示:

\begin{verbatim}
\newpage
\tableofcontents
\newpage
\listoftables
\newpage
\listoffigures
\newpage
\end{verbatim}

我使用的 pandoc 版本是:

pandoc 2.2.2
Compiled with pandoc-types 1.17.4.2, texmath 0.11, skylighting 0.7.0.2

使用Tex Live 2013/Debian

并且正在运行(我目前无法升级):

Linux myhostname 4.4.0-96-generic #119-14-04.1-Ubuntu SMP Wed Sep 13 08:40:48 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

我需要能够使用带有语言说明符的代码块,在生成 PDF 文件时在代码周围生成阴影块。

注意:我在生成 HTML 文件时没有遇到问题。

答案1

$ pandoc --to latex test.md --highlight-style tango -o test.pdf

姆韦

查看可用样式:pandoc --list-highlight-styles

答案2

您应该将其添加--highlight-style=<xxxx>到您的 Pandoc 命令中。对于 的可能值,<xxxx>请从 中进行选择pandoc --list-highlight-styles

我经常使用--highlight-style=espresso。(我稍微修改了你的Markdown以使所有输出适合一页,并真正显示下面屏幕截图中LaTeX代码的突出显示。)结果:

在此处输入图片描述

相关内容