我无法同时使用这两个包thm工具和tkz-euclide。
以下是使用“pdfTeX,版本 3.14159265-2.6-1.40.18”的最小非工作示例:
\documentclass{article}
\usepackage{thmtools}
\usepackage{tkz-euclide}
\begin{document}
a
\end{document}
这种给予
/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty:433: Extra \endc
sname.
\kv@processor@default ...fincsname\@xa \endcsname
\csname iftrue\endcsname \...
l.433 }
/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty:433: ==> Fatal
error occurred, no output PDF file produced!
以下是使用“XeTeX,版本 3.14159265-2.6-0.99998”的最小非工作示例:
\usepackage{amsmath}
\usepackage{thmtools}
\usepackage{tkz-euclide}
\newtheorem{thm}{Theorem}
\begin{document}
a
\end{document}
这种给予
.test.tex.swp:8: LaTeX Error: Missing \begin{
document}.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.8
No pages of output.
答案1
改变加载顺序是不够的。正如tkz-fct 和 thmtools 之间有冲突吗?,这会中断tkz-euclide
。
这是一个有效的补丁。
\documentclass{article}
\usepackage{tkz-euclide}
\usepackage{thmtools}
\usepackage{etoolbox}
\makeatletter
%%% patch tkz-tools-base.tex
\let\tkz@g@xa\tkz@init@xmin % don't undef \@xa or thmtools will be upset
\let\tkz@g@xb\tkz@init@xmax\undef\@xb
\let\tkz@g@ya\tkz@init@ymin\undef\@ya
\let\tkz@g@yb\tkz@init@ymax\undef\@yb
\patchcmd{\tkz@Init}
{\global\let\@xa\tkz@init@xmin
\global\let\@xb\tkz@init@xmax
\global\let\@ya\tkz@init@ymin
\global\let\@yb\tkz@init@ymax}
{\global\let\tkz@g@xa\tkz@init@xmin
\global\let\tkz@g@xb\tkz@init@xmax
\global\let\tkz@g@ya\tkz@init@ymin
\global\let\tkz@g@yb\tkz@init@ymax}
{}{}
\patchcmd{\tkz@Grid}
{(\@xa,\@ya)(\@xb,\@yb)}
{(\tkz@g@xa,\tkz@g@ya)(\tkz@g@xb,\tkz@g@yb)}
{}{}
\makeatother
\newtheorem{thm}{Theorem}
\begin{document}
a
\end{document}