我的一个旧文档在编译时出现问题,今天我无法使用 Windows 上最新的 MiKTex 2.9 安装对其进行重新编译。
看来这是最新版本的问题pgfkeys
。下面是我的最小示例,显示了错误:
\documentclass[10pt, a4paper]{article}
\usepackage{pgf}
\usepackage{xcolor}
\usepackage{titlesec}
\usepackage{interfaces}
\sectionformat\section[hang]{
label=,
labelsep=,
font=\bfseries\normalsize\color{blue!80!black},
top=16pt plus 1pt minus 1pt,
bottom=2pt,
}
\begin{document}
truc
\end{document}
有了它并使用 XeLaTex (我对 PdfLaTex 也有同样的错误)
! Undefined control sequence.
<inserted text> \itf
@setlength \itf @sk {####1}\noexpand \pgfkeysEsetvalue ...
l.15 }
pgf
我已经在源顶部明确添加了包,但错误总是出现在这里。
答案1
Ulrike Fischer 是对的,问题来自接口包。
代码\makeatletter
编译并产生正确的输出。但为了将来,我已将interfaces命令替换为titlesec命令。
\titlelabel{}
\titleformat{\section}[hang]{\bfseries\normalsize\color{blue!80!black}}{}{0pt}{}
\titlespacing*{\section}{0pt}{16pt plus 1pt minus 1pt}{2pt}
现在我有完全相同的输出,我希望它将来会更加稳定。
我使用了 Interfaces 包,因为我发现对于这种配置来说它的语法简单且易读;无论如何比直接使用 titlesec 更简单、更易读(对于此示例)。
但是,由于它不再维护,因此必须将其移除并替换。