在 lua 中设置 KOMA 标题

在 lua 中设置 KOMA 标题

我可以tex.print()设置\title我的文档的命令,但是当我尝试时tex.print('\\rohead{...}),什么都没有出现..有什么建议吗?

\documentclass{scrartcl}
\usepackage[headsepline]{scrlayer-scrpage}
\usepackage{luacode}
\begin{luacode*}
tex.print('\\title{TITLE}')
tex.print('\\rohead{R-HEAD}') -- why is this not setting?
tex.print('\\global\\rohead{R-HEAD}') -- why is this not setting?
\end{luacode*}
\lohead{L-HEAD}
% \rohead{THIS WORKS}
\begin{document}
\maketitle
\clearpage
\section{Introduction}
\end{document}

答案1

问题不是由tex.print周围luacode环境引起的,而是由周围环境引起的。如果您使用\luaexec(或者甚至只是\directlua),那么您可以设置它。您尝试添加但\global没有成功,因为\global它只适用于 TeX 原始设置命令,而不适用于 LaTeX 命令。

\documentclass{scrartcl}
\usepackage[headsepline]{scrlayer-scrpage}
\usepackage{luacode}
\luaexec{
tex.print('\\title{TITLE}')
tex.print('\\rohead{R-HEAD}')
}
\lohead{L-HEAD}
% \rohead{THIS WORKS}
\begin{document}
\maketitle
\clearpage
\section{Introduction}
\end{document}

相关内容