如何检测“我是否在 arXiv.org 上”?

如何检测“我是否在 arXiv.org 上”?

我写了一个类。我希望根据网站上是否使用该类来设置不同的页眉(并最终做出一些其他细微的差别)arXiv.org或不。最小示例如下:

我的类名.cls

\ProvidesClass{myclass}[2013/02/27]

\LoadClass{article}
\date{}

\RequirePackage{fancyhdr}
\fancyhf{}
\fancyfoot[C]{\thepage}

%\ifABC
\fancyhead[C]{arXiv version}
%\fi

\pagestyle{fancy}
\g@addto@macro{\maketitle}{\thispagestyle{fancy}}

\endinput

测试文章

\documentclass{myclass}

\title{Just an Article}
\author{Me the First}

\usepackage{lipsum}

\begin{document}

\maketitle

\lipsum[1-8]

\end{document}

在文件中myclass.cls,if 条件(在 MWE 中禁用)应检测“是否 arXiv”。由于类文件将被许多我不认识的人使用,因此欢迎尽可能万无一失的解决方案,以及可能需要进一步开发才能发挥作用的想法。我的第一个想法是在开始时检测包是否hyperref在处理类文件之前加载(因为它始终在 arXiv 上加载),但它似乎不起作用。

答案1

如果“主机”平台未设置明确标志,则没有通用方法来检测某个.tex文件是否正在由特定发布者系统处理。因此,如果不了解 arXiv 系统,并且可能没有联系人,就无法实现这种检测。

答案2

我今天在 academia.se 上发布了一个类似的问题,并被指向了这个问题。我发布了一个 hack那里这也适合您的情况。

基本上,创建一个单独的空文件,myclass.dont.upload.to.arxiv然后使用IfFileExistslatex 中的函数来测试此文件是否存在并采取相应的措施。当你必须将论文上传到 arxiv 时,不要上传此文件。问题解决了。

相关内容