我执行以下操作:
%! TEX program = pdflatex
\documentclass{article}
%\usepackage{pretty}
\begin{document}
\ExplSyntaxOn
\cs_generate_variant:Nn \tl_analysis_show:n{o, x}
\let\prettyN\tl_analysis_show:n
\let\prettyO\tl_analysis_show:o
\let\prettyX\tl_analysis_show:x
%\let\prettyN\pretty:n
%\let\prettyO\pretty:o
%\let\prettyX\pretty:x
\ExplSyntaxOff
\catcode0=11\relax %letter
\prettyN{escape:\^^@}
\prettyX{detoken:\detokenize{\^^@}}
\prettyX{string:\string\^^@}
\prettyX{raw letter:^^@}
\end{document}
输出大致是 LuaLaTeX 似乎将转义序列视为活动字符,将 detokenize 视为 (反斜杠空格),将 \string 视为 (反斜杠)。原始字母仍然正确。
PDFLaTeX 的输出似乎符合预期(控制序列,反斜杠零空格)
我是不是忽略了什么?这是记录在案的行为还是错误?