我正在准备一份文档,使用 Arch、Manjaro、openSUSE Tumbleweed 和 Kubuntu 进行轮换。在 Manjaro 和 Ubuntu 中,我收到列表包错误,因为无法找到指定的文件。
Kubuntu 日志中的错误:
! Package Listings Error: File `./ord-server-etc/etc-amavis.original/conf(.d/15-
content_filter_mode)' not found.
Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: d/15-content_filter_mode)
Enter file name:
! Emergency stop.
<read *>
l.18 ...vis.original/conf.d/15-content_filter_mode}}
*** (cannot \read from terminal in nonstop modes)
Manjaro 中的日志中的错误:
! Package Listings Error: File `(./ord-server-etc/etc-amavis.original/conf.d/15-
content_filter_mode)' not found.
Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: /ord-server-etc/etc-amavis.original/conf.
d/15-content_filter_mode)
Enter file name:
! Emergency stop.
<read *>
l.18 ...vis.original/conf.d/15-content_filter_mode}}
*** (cannot \read from terminal in nonstop modes)
错误是相同的(文件未找到),但行为不同。在 Kubuntu 中,最后的 .
被认为是文件的扩展名,而在 Manjaro 中第一的 .
被认为是扩展。
LuaLaTeX 假设文件中最后一个点后面的所有内容都是扩展名。我曾尝试{}
在文件路径周围添加第三组,以解决类似的问题,如其他地方所建议的那样includegraphics
,但这没有帮助,并导致其他错误。
我在 Arch 和 openSUSE 中没有收到错误。第一个屏幕截图显示了 TexStudio 中编译的 MWE 文档预览,在 Arch 上没有错误。第二个屏幕截图显示相同的 MWE 在 Ubuntu 上的 TeXstudio 中编译失败。我想知道为什么这两个实现中会出现错误以及如何追踪它。
起初我以为问题只出现在lstinputlisting
下面单独环境中第二次使用 时。实际上,lstinputlisting
在 Manjaro 和 Kubuntu 中均无法使用 。
我想知道差异的根源是什么,但更重要的是:
1) 我想进行调整以避免出现此错误,这样我就可以在 Kubuntu 和 Manjaro 以及 Arch 和 openSUSE 上编译文档。2) 有人可以解释如何设置默认扩展名吗?我在一些使用中看到,当指定的文件没有扩展名时,lstinputlisting
LaTeX/LuaLaTeX 会假定一个默认文件扩展名。.tex
回复评论:
1 - Ulrike Fischer) 在 Kubuntu 中:This is LuaTeX, Version 1.10.0 (TeX Live 2019/Debian)
在 Arch 中:This is LuaTeX, Version 1.10.0 (TeX Live 2019/Arch Linux)
2 - Ulrike Fischer) 我已按照您的建议对所有四个发行版进行了操作。两个发行版使用 2018 年的 LaTeX 版本,另外两个发行版使用 2019 年的版本,LuaLaTeX 格式有所不同,但似乎与哪个版本导致错误没有关联。
梅威瑟:
\documentclass[a4paper,12pt]{book}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{listings}
\begin{document}
\author{TeXstudio Team}
\title{Simple Book Example}
\date{January 2013}
\frontmatter
\maketitle
\tableofcontents
\mainmatter
\lstinputlisting[nolol,linerange={13-14},firstnumber=13,numbers=left,title={Enabling virus filtering}]{{./ord-server-etc/etc-amavis.original/conf.d/15-content_filter_mode}}
\begin{lstinputlisting}
[nolol,linerange={13-14},firstnumber=13,numbers=left,title={Enabling virus filtering}]{{./ord-server-etc/etc-amavis.original/conf.d/15-content_filter_mode}}
\end{lstinputlisting}
\backmatter
% bibliography, glossary and index would go here.
\end{document}