![使用 Lyx 时出现 LaTeX 错误:Bad mathchar (32768)](https://linux22.com/image/265660/%E4%BD%BF%E7%94%A8%20Lyx%20%E6%97%B6%E5%87%BA%E7%8E%B0%20LaTeX%20%E9%94%99%E8%AF%AF%EF%BC%9ABad%20mathchar%20(32768)%20.png)
我在输出 LyX 文档时收到此错误消息:错误的 mathchar (32768),并给出以下解释:“mathchar 数字必须介于 0 和 32767 之间。我将其更改为零。”,随后出现另外两个错误:缺少数字,视为零。,并给出解释“这里应该有一个数字;我插入了 `0'。(如果您无法弄清楚为什么我需要看到一个数字,请在 TeXbook 索引中查找``奇怪的错误''。)”
错误的来源似乎是创建表的以下 TeX 文件:
&\multicolumn{3}{c}{Matem\'aticas} \\\cmidrule(lr){2-4}
&\multicolumn{1}{c}{(1)} &\multicolumn{1}{c}{(2)} &\multicolumn{1}{c}{(3)} \\
\midrule
Tratamiento & 0.07 & 0.08\sym{**} & 0.09\sym{***}\\
& (0.08) & (0.05) & (0.03) \\
\addlinespace
Controles & No & S\'i & S\'i \\
\midrule
Observaciones & 2000 & 2000 & 2000 \
然后将 TeX 文件保存在与 LyX 文件相同的文件夹中,名称为 return.tex,并通过 Insert-TeX Code 插入到 LyX 文档中:
\begin{threeparttable}
\estwide{regressions.tex}{3}{c}
\Figtext{\footnotesize{Errores est\'andares entre par\'entesis.\\ \textit{* p < 0.1, ** p < 0.05, *** p < 0.01.}}}
\end{threeparttable}
我可以在 pdf 中看到插入此代码的 LyX 文件的输出(尽管我收到了前面提到的错误消息),但是当我将 LyX 文件作为子文件插入另一个 LyX 文件中时,它不起作用。
我在主文档中的其他 Child LyX 文件中也有类似的表格,它们工作正常。我还没能找到问题出在哪里。任何帮助都将不胜感激,谢谢!
序言应包括:
\usepackage{booktabs}
\usepackage{threeparttablex}
% *****************************************************************
% Estout related things
% *****************************************************************
\let\estinput=\input % define a new input command so that we can still flatten the document
\newcommand{\estwide}[3]{
\vspace{.75ex}{
\textsymbols% Note the added command here
\begin{tabular*}
{\textwidth}{@{\hskip\tabcolsep\extracolsep\fill}l*{#2}{#3}}
\toprule
\estinput{#1}
\bottomrule
\addlinespace[.75ex]
\end{tabular*}
}
}
\newcommand{\estauto}[3]{
\vspace{.75ex}{
\textsymbols% Note the added command here
\begin{tabular}{l*{#2}{#3}}
\toprule
\estinput{#1}
\bottomrule
\addlinespace[.75ex]
\end{tabular}
}
}
% Allow line breaks with \\ in specialcells
\newcommand{\specialcell}[2][c]{%
\begin{tabular}[#1]{@{}c@{}}#2\end{tabular}
}
编辑:
我遇到过这个问题。这与使用的特定表格无关,但事实上表格可能包含数学字符,或者以某种方式干扰了 LyX 处理 tex 代码中的数学字符的方式。不知道幕后是如何运作的,但在某些情况下会出现一些问题。要解决这个问题,在调用上述代码之前,LyX 文档中必须有一些使用数学的 TeX 代码。“$ $”就足够了。