在文件上运行 xelatex
\documentclass{article}
\usepackage{amsmath}
\usepackage{blkarray}
\begin{document}
\begin{blockarray}{c}
1
\end{blockarray}
\end{document}
给出错误
(/usr/local/texlive/2014/texmf-dist/tex/latex/blkarray/blkarray.sty)
(./test.aux)
! Incompatible list can't be unboxed.
<argument> \BA@first@box
l.9 \end{blockarray}
[删除对 amsmath 的引用后,文件就会编译。]
为什么会出现此错误?是否可以将 blkarray 包与 amsmath 和 xelatex 一起使用?
谢谢。
答案1
不错的 MWE。结果发现 amsmath 破坏了方框 0(它确实有权这样做),但不幸的是 blkarray 也在做同样的事情。
\documentclass{article}
\usepackage{array}\usepackage{amsmath}
\usepackage{blkarray}
\makeatletter
\newbox\BA@first@box
\makeatother
\begin{document}
\begin{blockarray}{c}
1
\end{blockarray}
\end{document}
答案2
blockarray
如果你以数学模式书写,就不会有问题:
\documentclass{article}
\usepackage{blkarray}
\usepackage{mathtools}
\begin{document}
\[ \begin{blockarray}{[c\}}
1\\-1
\end{blockarray} \]
\end{document}