将文件的编译时间添加到草稿文档中。

将文件的编译时间添加到草稿文档中。

我希望我的草稿文档底部有类似 的内容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.texLaTeX 已经打印了行ch2.tex。哪里出了问题?

[final]还有一个小问题:如果文档设置为而不是,如何自动禁用此部分[draft]

答案1

\clearpage您需要用(或)刷新章节的最后一页\newpage,否则 LaTeX 将已经打开文件ch2.tex\currfilename保留该名称。

章节应该使用\includewhich\clearpage自动添加,而不是使用\input。(然后您也可以使用 eg\includeonly{ch1}仅编译第 1 章。)

您可以使用该ifdraft包仅在草稿模式下添加此行:

\ifdraft{%
\lfoot{\scriptsize{\texttt{compiled \currfilename \ on \today \ at \thistime}}}%
}{}

(也可以看看仅在选秀选项开启时才执行某些操作?

请注意,filemod您还可以使用该包添加文件修改日期。

相关内容