我在与类glossaries
一起使用时产生警告时遇到问题memoir
Package glossaries Warning: overriding `theglossary' environment on input line 4761.
最小工作示例是:
\documentclass{memoir}
\let\printglossary\relax
\usepackage{glossaries}
\makeglossaries
\begin{document}
Hello World
\printglossary
\end{document}
涵盖\let\printglossary\relax
了警告Package glossaries Warning: Overriding \printglossary on input line 4536
,但是这种方法不适用于theglossary
警告。我意识到这个警告不是一个错误,可以只是被忽略,但我宁愿想办法抑制它。谢谢
答案1
与 for 的风格相同\printglossary
,你可以使用
\documentclass{memoir}
\let\printglossary\relax
\let\theglossary\relax
\let\endtheglossary\relax
\usepackage{glossaries}
\makeglossaries
\begin{document}
Hello World
\printglossary
\end{document}
我不会通过 来关闭所有警告glossaries
。silence
您可以通过以下方式覆盖相关信息:
\documentclass{memoir}
\usepackage{silence}
\WarningFilter{glossaries}{Overriding \printglossary}
\WarningFilter{glossaries}{Overriding `theglossary'}
\usepackage{glossaries}
\makeglossaries
\begin{document}
Hello World
\printglossary
\end{document}
答案2
更新至glossaries
版本 4.04 并使用noredefwarn
包选项:
\documentclass{memoir}
\usepackage[noredefwarn]{glossaries}
\makeglossaries
\begin{document}
Hello World
\printglossary
\end{document}
glossaries
还有一个nowarn
抑制警告的选项,但如果发生意外情况,最好重新打开警告。
编辑: glossaries-extra
默认启用此选项:
\documentclass{memoir}
\usepackage{glossaries-extra}
\makeglossaries
\begin{document}
Hello World
\printglossary
\end{document}
答案3
您可以使用该包silence
。
\WarningsOff*
加载前glossaries
和加载后的问题\WarningsOn
。
梅威瑟:
\documentclass{memoir}
\usepackage{silence}
\WarningsOff*
\usepackage{glossaries}
\WarningsOn
\makeglossaries
\begin{document}
Hello World
\printglossary
\end{document}
这样,那些警告就消失了,而文档中的其余警告仍然存在。