与 algorithm2e 包相关的 typearea 警告

与 algorithm2e 包相关的 typearea 警告

我正在尝试从我的论文中删除一些警告,但有一个我完全无法理解。这是 typearea 包和 algorithm2e 包之间的一些奇怪的交互。这是一个 mwe:

\documentclass{scrbook}
\usepackage{blindtext}
\usepackage{algorithm2e}
\KOMAoptions{
  paper=a4,
  pagesize=auto,
  fontsize=11pt,
  twoside=true,
  BCOR=20mm,
  DIV=13,
  open=right, % new chapter always on right page
  cleardoublepage=current, 
  headsepline=true,
  titlepage=true,
  parskip=false,
  chapterprefix=true,
  captions=tableheading
}
\recalctypearea
\begin{document}
  Hello World!
  \blindtext[10]
\end{document}

我收到以下警告:

Package typearea Warning: \typearea used at group level 2.
(typearea)                Using \typearea inside any group, e.g.
(typearea)                environments, math mode, boxes, etc. may result in
(typearea)                many type setting problems.
(typearea)                You should move the command \typearea
(typearea)                outside all groups on input line 21.

我不确定是否\recalctypearea正确使用了,但注释它肯定会改变输出。如果我注释包algorithm2e,那么也不会有警告。

谢谢你的帮助!

答案1

这是由旧版本中存在的一个错误引起的,algorithm2e.sty该错误有一个流浪{字符。

如果你无法更新你的 TeX 发行版,请复制algorithm2e.sty到你的工作目录中,并修改以下行

\newboolean{algocf@displaygroupmarkers}{\setboolean{algocf@displaygroupmarkers}{false}

进入

\newboolean{algocf@displaygroupmarkers}\setboolean{algocf@displaygroupmarkers}{false}

也就是去掉{之前的\setboolean

您也可以algorithm2e.sty在完成后加载\recalctypearea,但未关闭的组的问题仍然存在,并且可能会影响大文档。

相关内容