!我找不到文件‘[’

!我找不到文件‘[’

我正在使用 LaTeX 和 toptesi 包撰写论文。我大部分时间都在笔记本电脑上写作,但有时我需要切换到另一台电脑。我在生成 pdf 文档时遇到了一些问题。用于生成 pdf 文档的命令是

pdflatex -shell-escape tesi.tex

当显示错误时,编译就结束了:

!我找不到文件‘[’。

这对我来说毫无意义。似乎导致错误的行是此块的第一行,它使用 minted 包在文档中提供源代码。

\begin{listing}[!ht]
\begin{minted}[tabsize=4]{json}
{
    "type": "Room",
    "isPattern": "false",
    "id": "Room1",
    "attributes": [
        {
            "name": "temperature",
            "type": "float",
            "value": "23"
        },
        {
            "name": "pressure",
            "type": "integer",
            "value": "720"
        }
    ]
}
\end{minted}
\caption{JSON structure for entity}
\end{listing}

在我的笔记本电脑上,我的论文编译正确,安装的软件包是相同的,所以我真的不知道问题可能是什么。

编辑:
经过更多尝试后,我找到了一个可以重现错误的最小示例:

\documentclass[english,12pt]{toptesi}

\usepackage[utf8]{inputenc}
\usepackage{minted}

\begin{document}

\begin{listing}[!ht]
\begin{minted}[tabsize=4]{json}
{
    "type": "Room"
}
\end{minted}
\caption{JSON structure for entity}
\end{listing}

\end{document}

问题似乎出在 toptesi 软件包的不同版本上。两台机器都运行 ubuntu 14.04,所有数据包都从官方存储库安装。如果我将 documentclass 更改为 article 之类的内容,pdf 就会成功创建,一切正常。
以下是请求的完整错误:

! I can't find file `['.
\listing ...\par \begingroup \programma \input #1 
                                                  \endgroup 
l.8 \begin{listing}[
                    !ht]
(Press Enter to retry, or Control-D to exit)

答案1

您的类listing为不相关的目的而定义。如果您不需要,您可以重新声明版本minted

\documentclass[english,12pt]{toptesi}

\usepackage[utf8]{inputenc}

\usepackage{minted}
\let\IWANTTHISlisting=\listing

\begin{document}

\let\listing=\IWANTTHISlisting

\begin{listing}[!ht]
\begin{minted}[tabsize=4]{json}
{
    "type": "Room"
}
\end{minted}
\caption{JSON structure for entity}
\end{listing}

\end{document}

相关内容