如果我放入\censor
,\newglossaryentry
我会收到此错误:
错误:\glo@liberty@sortvalue 定义中的参数编号非法。
--- TeX 说 ---
什么原因导致了错误?如何解决?
\documentclass{report}
\usepackage[section=section]{glossaries}
\usepackage{censor}
\glsdisablehyper
\makenoidxglossaries
\setglossarystyle{tree}
\newglossary*{secret}{Secret}
\newglossaryentry{liberty}
{
type=secret,
name={Liberty},
% name={\censor{Liberty}},
description={missile}
}
\begin{document}
%\gls{liberty}
\censor{\gls{liberty}}
\printnoidxglossary[type=secret]
\end{document}
答案1
这是一个解决方法,需要编译两次。
\documentclass{report}
\usepackage[section=section]{glossaries}
\usepackage{censor}
\glsdisablehyper
\makenoidxglossaries
\setglossarystyle{tree}
\newglossary*{secret}{Secret}
\usepackage{xparse}
\newglossaryentry{liberty}
{
type=secret,
% name={Liberty},
name={\censor{Liberty}},
text={Liberty},
sort={Liberty},
description={missile \censor{XYZ}}
}
\begin{document}
\tableofcontents
%\StopCensoring
\censor{\gls{liberty}}\glsadd{liberty}
\printnoidxglossary[type=secret]
\end{document}