我希望我的草稿文档底部有类似 的内容compiled ch2.tex on July 21, 2011 at 18:46
。我的文档有多个文件,我使用 来包含它们\input
。
我有以下序言(我只保留了相关部分):
\documentclass[a4paper,11pt, leqno, draft]{scrbook} %draft
\usepackage{scrtime}
\usepackage{currfile}
\usepackage{fancyref}
\usepackage{fancyhdr}
\pagestyle{fancy}
\usepackage{calc}
\fancyheadoffset[LE,RO]{\marginparsep+\marginparwidth}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}}
\fancyhf{}
\fancyhead[LE,RO]{\bfseries\thepage}
\fancyhead[LO]{\rightmark}
\fancyhead[RE]{\leftmark}
\fancypagestyle{plain}{%
\fancyhead{} % get rid of headers
\renewcommand{\headrulewidth}{10pt} % and the line
}
\lfoot{\scriptsize{\texttt{compiled \currfilename \ on \today \ at \thistime}}}
\cfoot{}
\rfoot{}
\author{Jonas Teuwen}
\title{}
\begin{document}
\input{ch1.tex}
\input{ch2.tex}
\end{document}
出现问题的行如下:
\lfoot{\scriptsize{\texttt{compiled \currfilename \ on \today \ at \thistime}}}
它确实有效,并给出了正确的结果,但是,在最后一页的底部,ch1.tex
LaTeX 已经打印了行ch2.tex
。哪里出了问题?
[final]
还有一个小问题:如果文档设置为而不是,如何自动禁用此部分[draft]
?
答案1
\clearpage
您需要用(或)刷新章节的最后一页\newpage
,否则 LaTeX 将已经打开文件ch2.tex
并\currfilename
保留该名称。
章节应该使用\include
which\clearpage
自动添加,而不是使用\input
。(然后您也可以使用 eg\includeonly{ch1}
仅编译第 1 章。)
您可以使用该ifdraft
包仅在草稿模式下添加此行:
\ifdraft{%
\lfoot{\scriptsize{\texttt{compiled \currfilename \ on \today \ at \thistime}}}%
}{}
(也可以看看仅在选秀选项开启时才执行某些操作?)
请注意,filemod
您还可以使用该包添加文件修改日期。