在使用该包的文档中classicalthesis
,为了获得没有链接的脚注(*)(但在其他地方保留链接),我尝试了我能找到的所有选项:使用 \hypersetup
,使用相同选项再次hyperfootnotes=false
加载hyperref
(它由自动加载classicalthesis
)(**),以所有可能的方式更改加载的顺序,......什么都不起作用:该死的脚注仍然是链接。
我尝试生成 MEW,但无济于事:仅有的获得无链接脚注的方法是使用包注释掉该行。所以我查看了classicalthesis的源代码,并通过在加载的[hyperfootnotes=false]
两个地方添加以下内容对其进行了修改:hyperref
% ********************************************************************
% PDF and XeLaTeX Stuff
% ********************************************************************
\RequirePackage{ifpdf}
\ifpdf\RequirePackage[hyperfootnotes=false]{hyperref}\fi % for texorpdfstring command below
% Necessary to rewrite hacks for chapters and parts and toc
\RequirePackage{ifxetex}
\ifxetex\RequirePackage[hyperfootnotes=false]{hyperref}\fi % for texorpdfstring command below
% pdfspacing does not work with XeLaTeX
\ifxetex%
\ifthenelse{\boolean{@pdfspacing}}%
{% pdfspacing is used with XeLaTeX
\PackageWarningNoLine{classicthesis}{You cannot use the option %
"pdfspacing" with XeLaTeX!}%
}{\relax}%
\setboolean{@pdfspacing}{false}%
\fi
这招奏效了!但我的问题是:有没有更简单的方法?最好是能做到的。不是涉及修改任何包的源代码吗?
(*) - 我首先想要这个的原因是因为脚注的链接是错误的,当我试图纠正它们时,我发现甚至 hyperref 的开发人员也承认链接脚注是一种脆弱的功能......所以我完全放弃了它。
(**) — 这引发了一个错误,抱怨超链接被(重新)加载了不兼容的选项……
答案1
将选项传递给包。
\documentclass[headinclude=true,footinclude=true]{scrreprt}
\PassOptionsToPackage{hyperfootnotes=false}{hyperref}
\usepackage{classicthesis}
\setlength{\textheight}{3cm}
\begin{document}
Pogo penguin\footnote{this is not a lazy leguan}
\end{document}