LuaTeX 示例无效(打印)

LuaTeX 示例无效(打印)

手册第 127 页luatex有示例

before\directlua{tex.sprint("\\relax")tex.sprint(" inbetween")}after

但双斜线会引发错误。同样,单斜线也存在同样的问题。

显然,tex或者luatex不是\\按照我期望的方式处理。(我认为tex是试图将其解析为宏。)

那么,还需要什么才能使样本运行呢?

答案1

这只是为了演示目的。参考手册在编写时没有考虑任何特定的格式/宏包。因此它不知道是否\\已定义。您可以通过将代码放入lua代码*环境来自lua代码包裹:

\documentclass{article}
\usepackage{luacode}
\begin{document}
before\begin{luacode*}
tex.sprint("\\relax")tex.sprint(" inbetween")
\end{luacode*}
after
\end{document}

但是(我一直强调这一点)你应该把所有的 Lua 代码放在一个单独的文件中。这样你就不会惹上麻烦了。

相关内容