minted 在我的源代码中创建边框

minted 在我的源代码中创建边框

我使用minted-package

\setminted{fontsize=\small,frame=lines,linenos=true}

在序言中,并在我的文档中写道:

\begin{listing}[H]
  \begin{minted}{json}
  {<publishedQueryName>: {<storedName>: {Item: [<ListOfUnsigned>]}}}
  \end{minted}
\end{listing}

这是我的结果:

错误的结果

我不明白为什么要创建这些带边框的框,我并不需要它们。这有什么问题minted,我需要更改吗?其他代码都很好。

答案1

您得到的输出是正确的。您正在使用该语言的未知语法json

您使用的语法错误,从生成的文件和命令中也可以看出来。因此,让我以简短的形式解释一下 minted 的工作原理(有关更多详细信息,请参阅文档)。

  1. 将生成的环境内容导出到扩展名为 的文件中pyg。你的情况内容为:

    {<publishedQueryName>: {<storedName>: {Item: [<ListOfUnsigned>]}}}
    
  2. 使用命令pygmentize提供扩展名为 的 latex 输入文件out.pyg。内容为

    \begin{Verbatim}[commandchars=\\\{\}]
      \PYG{p}{\PYGZob{}}\PYG{err}{\PYGZlt{}publishedQueryName\PYGZgt{}:} \PYG{err}{\PYGZob{}\PYGZlt{}storedName\PYGZgt{}:} \PYG{err}{\PYGZob{}Item:} \PYG{err}{[\PYGZlt{}ListOfUnsigned\PYGZgt{}]}\PYG{p}{\PYGZcb{}}\PYG{err}{\PYGZcb{}\PYGZcb{}}
    \end{Verbatim}
    
  3. 命令会根据第一个参数的指定突出显示输出\PYG。 在你的情况下,根据未知语法,你将获得错误突出显示\PYG{err}\PYG{err}定义为:

    \expandafter\def\csname PYG@tok@err\endcsname{\def\PYG@bc##1{\setlength{\fboxsep}{0pt}\fcolorbox[rgb]{1.00,0.00,0.00}{1,1,1}{\strut ##1}}}
    

您还可以使用以下站点测试 minted 提供的输出:http://pygments.org/demo/这里还可以测试各种样式,例如fruity。通常,样式default是默认的。

相关内容