我需要\catcode`\^^M=12 %
在 Latex 文件中使用它来用于其他目的。
文件编译成功但是在模式lualatex
下出现错误。tex4ht lua
有没有办法让它在 tex4ht 中也能工作?这是一个 MWE
\documentclass[11pt]{scrartcl}
\IfFileExists{luatex85.sty}
{\usepackage{luatex85}}{}
\begin{document}
{%
\catcode`\^^M=12 %
\endlinechar=`\^^M %
test
}%
\end{document}
现在 lualatex foo6.tex
编译OK。但是 make4ht --lua foo6.tex
没有:
make4ht --lua foo6.tex
Output dir:
Compiler: dvilualatex
Latex options: -jobname=foo6
tex4ht.sty : xhtml,
tex4ht
build_file foo6.mk4
Cannot open config file foo6.mk4
setting param correct_exit
setting param correct_exit
setting param correct_exit
setting param ext
Adding: ext dvi
LaTeX call: dvilualatex -jobname=foo6 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode xhtml,.a.b.c.\input foo6'
This is LuaTeX, Version 0.95.0 (TeX Live 2016)
restricted system commands enabled.
LaTeX2e <2016/03/31> patch level 1
....
(/usr/local/texlive/2016/texmf-dist/tex/generic/tex4ht/html4.4ht)
(/usr/local/texlive/2016/texmf-dist/tex/generic/tex4ht/html4-math.4ht))
(./foo6.aux)
! Missing number, treated as zero.
<to be read again>
^
l.9 \catcode`\^^
M=12 %
?
这是 Linux 上的 TL 2016。
答案1
`\^^M
只是 13 的一种复杂写法,所以如果你不想禁用 tex4ht 的使用,^
那么你可以使用
\catcode13=12
答案2
似乎与重新定义为生成上标的\^^M
相冲突。您可以尝试使用命令行选项禁用它:^
tex4ht
no^
make4ht -l foo6.tex no^