mohuangrui/ucasthesis

\usepage{diagbox}与 \natbib等冲突

jeong-lee opened this issue · 1 comments

我在编译的时候插入表格斜杠需要用到命令包\usepage{diagbox},但是编译出来以后引用文献显示为?(问号),注释掉此命令后恢复正常,猜测可能是此命令与\natbib等冲突导致,是否有解决策略?

加载 diagbox 后编译,报错为

Use of \Vector doesn't match its definition.

检查 \Vector 的定义为

\providecommand{\Vector}[1]{\boldsymbol{#1}}% general vectors in bold italic

猜测是 diagbox 的行为修改了 \Vector 的定义,找到
https://github.com/leo-liu/tex-pkg/blob/54fbd571682b61d02df5834b275fb823523a882f/diagbox/diagbox.dtx#L632
构造 MWE:

\documentclass{article}
\usepackage{amsmath}
\providecommand{\Vector}[1]{\boldsymbol{#1}}
\usepackage{pict2e}
\begin{document}
  $\Vector{x}$
\end{document}

发现是 pict2e 的问题,问题在于 pict2e 定义了 \Vector

\def\Vector(#1,#2)(#3,#4){\polyvector(#1,#2)(#3,#4)}

那么,最简单的方法就是将

\providecommand{\Vector}[1]{\boldsymbol{#1}}% general vectors in bold italic

改为另一命令名,同时修改在模板中使用这一定义的地方