这是一个非常难以起草的问题,因为我不太清楚到底发生了什么。
我在 Ubuntu 20.04 上使用 TeXStudio 和 MikTeX,我应该编译一个文档仅使用 LuaLaTeX。
有一段时间,这工作正常,但今天我在 MikTeX 上安装了几个包后,文档突然无法再编译了。
现在,我已经重新安装了 MikTeX,确保在 TeXStudio 编译器上重新链接 MikTeX-LuaLaTeX,但我甚至无法运行这个最小的工作示例。
% !TeX program = lualatex
\documentclass[10pt,a4paper,draft]{article}
\begin{document}
hi
\end{document}
我收到以下错误:
line 1: Extra \endcsname.
line 1: Missing { inserted.
line 1: Missing control sequence inserted.
line 1: Extra \endcsname.
line 1: Missing { inserted.
line 1: Missing { inserted.
line 1: Extra \endcsname.
line 1: You can't use `macro parameter character #' in horizontal mode.
line 1: TeX capacity exceeded, sorry [input stack size=5000].
这是相同的日志文件,编译器似乎正在循环遍历该文件但并未执行任何操作: https://pastebin.com/7cZfHm7a
非常感谢任何有关此事的线索,谢谢!
编辑:\usepackage[latin1]{inputenc}
根据@Mico 和@David Carlisle 的评论,从 MWE 中删除。
答案1
\usepackage[latin1]{inputenc}
如果您打算使用 LuaLaTeX 或 XeLaTeX 来编译文档,则绝对不应该运行。
我实际上完全无法重现您报告的错误消息。相反,我得到了以下信息:
! Package inputenc Error: inputenc is not designed for xetex or luatex.
(inputenc) only UTF-8 supported.
See the inputenc package documentation for explanation.
结果如何?不是inputenc
如果您打算使用 LuaLaTeX 或 XeLaTeX 来编译文档,请加载该包。
答案2
我想添加一个答案以供我将来参考,或者供任何遇到同样问题的人参考。
非常感谢 @Mico、@DavidCarlisle 和 @UlrikeFischer 的回复!你们关于我的安装太旧的说法很有道理,所以以下是解决我的问题的方法:
- 卸载 MikTeX
- 删除无效链接
/bin
- 重新安装 MikTeX
我可能正在运行旧版本的 MikTeX,并且使用一些较旧的库---因此存在一些不兼容性。