Updated authorarchive.

This commit is contained in:
Achim D. Brucker 2023-03-01 06:32:23 +00:00
parent bde86a1118
commit 9f5473505e
3 changed files with 51 additions and 46 deletions

View File

@ -7,7 +7,6 @@ session "Isabelle_DOF-Example-Scholarly_Paper" (AFP) = "Isabelle_DOF" +
"authorarchive.sty" "authorarchive.sty"
"preamble.tex" "preamble.tex"
"lstisadof.sty" "lstisadof.sty"
"vector_iD_icon.pdf"
"figures/isabelle-architecture.pdf" "figures/isabelle-architecture.pdf"
"figures/Dogfood-Intro.png" "figures/Dogfood-Intro.png"
"figures/InteractiveMathSheet.png" "figures/InteractiveMathSheet.png"

View File

@ -1,4 +1,4 @@
%% Copyright (C) 2008-2019 Achim D. Brucker, https://www.brucker.ch %% Copyright (C) 2008-2023 Achim D. Brucker, https://www.brucker.ch
%% %%
%% License: %% License:
%% This program can be redistributed and/or modified under the terms %% This program can be redistributed and/or modified under the terms
@ -11,21 +11,22 @@
%% SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause %% SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause
\NeedsTeXFormat{LaTeX2e}\relax \NeedsTeXFormat{LaTeX2e}\relax
\ProvidesPackage{authorarchive} \ProvidesPackage{authorarchive}
[0000/00/00 Unreleased v1.1.1+% [2023/02/10 v1.3.0
Self-archiving information for scientific publications.] Self-archiving information for scientific publications.]
% %
\PassOptionsToPackage{hyphens}{url} \PassOptionsToPackage{hyphens}{url}
% %
\RequirePackage{ifthen} \RequirePackage{ifthen}
\RequirePackage[inline]{enumitem} \RequirePackage[inline]{enumitem}
\RequirePackage{graphicx} \RequirePackage{orcidlink}
\RequirePackage{eso-pic} \RequirePackage{eso-pic}
\RequirePackage{intopdf} \RequirePackage{intopdf}
\RequirePackage{kvoptions} \RequirePackage{kvoptions}
\RequirePackage{hyperref} \RequirePackage{hyperref}
\RequirePackage{calc} \RequirePackage{calc}
\RequirePackage{qrcode} \RequirePackage{qrcode}
\RequirePackage{hvlogos} \RequirePackage{etoolbox}
\newrobustcmd\BibTeX{Bib\TeX}
% %
%Better url breaking %Better url breaking
\g@addto@macro{\UrlBreaks}{\UrlOrds} \g@addto@macro{\UrlBreaks}{\UrlOrds}
@ -80,31 +81,51 @@
} }
\ProcessKeyvalOptions* \ProcessKeyvalOptions*
% Provide command for dynamic configuration seutp \newcommand{\AA@defIncludeFiles}{
\def\authorsetup{\kvsetkeys{AA}} \def\AA@bibBibTeX{\AA@bibtexdir/\AA@key.bib}
\def\AA@bibBibTeXLong{\AA@bibtexdir/\AA@key.bibtex}
\def\AA@bibWord{\AA@bibtexdir/\AA@key.word.xml}
\def\AA@bibEndnote{\AA@bibtexdir/\AA@key.enw}
\def\AA@bibRIS{\AA@bibtexdir/\AA@key.ris}
}
\AA@defIncludeFiles
\newboolean{AA@bibExists}
\setboolean{AA@bibExists}{false}
\newcommand{\AA@defIncludeSwitches}{
\IfFileExists{\AA@bibBibTeX}{\setboolean{AA@bibExists}{true}}{}
\IfFileExists{\AA@bibBibTeXLong}{\setboolean{AA@bibExists}{true}}{}
\IfFileExists{\AA@bibWord}{\setboolean{AA@bibExists}{true}}{}
\IfFileExists{\AA@bibEndnote}{\setboolean{AA@bibExists}{true}}{}
\IfFileExists{\AA@bibRIS}{\setboolean{AA@bibExists}{true}}{}
}
\AA@defIncludeSwitches
% Provide command for dynamic configuration setup
% \def\authorsetup{\kvsetkeys{AA}}
\newcommand{\authorsetup}[1]{%
\kvsetkeys{AA}{#1}
\AA@defIncludeFiles
\AA@defIncludeSwitches
}
% Load local configuration % Load local configuration
\InputIfFileExists{authorarchive.config}{}{} \InputIfFileExists{authorarchive.config}{}{}
% define proxy command for setting PDF attributes
\ExplSyntaxOn
\@ifundefined{pdfmanagement_add:nnn}{%
\newcommand{\AA@pdfpagesattribute}[2]{\pdfpagesattr{/#1 #2}}%
}{%
\newcommand{\AA@pdfpagesattribute}[2]{\pdfmanagement_add:nnn{Pages}{#1}{#2}}%
}%
\ExplSyntaxOff
\newlength\AA@x \newlength\AA@x
\newlength\AA@y \newlength\AA@y
\newlength\AA@width \newlength\AA@width
\def\AA@bibBibTeX{\AA@bibtexdir/\AA@key.bib}
\def\AA@bibBibTeXLong{\AA@bibtexdir/\AA@key.bibtex}
\def\AA@bibWord{\AA@bibtexdir/\AA@key.word.xml}
\def\AA@bibEndnote{\AA@bibtexdir/\AA@key.enw}
\def\AA@bibRIS{\AA@bibtexdir/\AA@key.ris}
\newboolean{AA@bibExists}
\setboolean{AA@bibExists}{false}
\IfFileExists{\AA@bibBibTeX}{\setboolean{AA@bibExists}{true}}{}
\IfFileExists{\AA@bibBibTeXLong}{\setboolean{AA@bibExists}{true}}{}
\IfFileExists{\AA@bibWord}{\setboolean{AA@bibExists}{true}}{}
\IfFileExists{\AA@bibEndnote}{\setboolean{AA@bibExists}{true}}{}
\IfFileExists{\AA@bibRIS}{\setboolean{AA@bibExists}{true}}{}
\setlength\AA@x{1in+\hoffset+\oddsidemargin} \setlength\AA@x{1in+\hoffset+\oddsidemargin}
\newcommand{\authorcrfont}{\footnotesize} \newcommand{\authorcrfont}{\footnotesize}
@ -148,8 +169,7 @@
%%%% LNCS %%%% LNCS
\ifAA@LNCS% \ifAA@LNCS%
\ifAA@orcidicon% \ifAA@orcidicon%
\renewcommand{\orcidID}[1]{\href{https://orcid.org/#1}{% \renewcommand{\orcidID}[1]{\orcidlink{#1}}
\textsuperscript{\,\includegraphics[height=2\fontcharht\font`A]{vector_iD_icon}}}}
\else\relax\fi% \else\relax\fi%
% %
\ifthenelse{\equal{\AA@publisher}{UNKNOWN PUBLISHER}}{% \ifthenelse{\equal{\AA@publisher}{UNKNOWN PUBLISHER}}{%
@ -157,23 +177,11 @@
}{} }{}
\renewcommand{\authorcrfont}{\scriptsize} \renewcommand{\authorcrfont}{\scriptsize}
\@ifclasswith{llncs}{a4paper}{% \@ifclasswith{llncs}{a4paper}{%
\ExplSyntaxOn \AA@pdfpagesattribute{CropBox}{[92 114 523 780]}%
\@ifundefined{pdfmanagement_add:nnn}{%
\pdfpagesattr{/CropBox [92 114 523 780]}%
}{%
\pdfmanagement_add:nnn {Pages}{CropBox}{[92~114~523~780]}
}%
\ExplSyntaxOff
\renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},40){#1}}% \renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},40){#1}}%
}{% }{%
\ExplSyntaxOn \AA@pdfpagesattribute{CropBox}{[92 65 523 731]}%
\@ifundefined{pdfmanagement_add:nnn}{% \renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},23){#1}}%
\pdfpagesattr{/CropBox [92 65 523 731]}% LNCS page: 152x235 mm
}{%
\pdfmanagement_add:nnn {Pages}{CropBox}{[92~62~523~731]}
}%
\ExplSyntaxOff
\renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},23){#1}}
} }
\setlength{\AA@width}{\textwidth} \setlength{\AA@width}{\textwidth}
\setcounter{tocdepth}{2} \setcounter{tocdepth}{2}
@ -186,7 +194,7 @@
}{} }{}
\renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},35){#1}} \renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},35){#1}}
\renewcommand{\authorcrfont}{\scriptsize} \renewcommand{\authorcrfont}{\scriptsize}
\pdfpagesattr{/CropBox [70 65 526.378 748.15]} % TODO \AA@pdfpagesattribute{CropBox}{[70 65 526.378 748.15]}
\setlength{\AA@width}{\textwidth} \setlength{\AA@width}{\textwidth}
\setcounter{tocdepth}{2} \setcounter{tocdepth}{2}
\fi \fi
@ -218,8 +226,6 @@
draft = false, draft = false,
bookmarksopen = true, bookmarksopen = true,
bookmarksnumbered= true, bookmarksnumbered= true,
pdfauthor = {\@author},
pdftitle = {\@title},
} }
\@ifpackageloaded{totpages}{% \@ifpackageloaded{totpages}{%
@ -305,26 +311,26 @@
\hfill \hfill
\begin{itemize*}[label={}, itemjoin={,}] \begin{itemize*}[label={}, itemjoin={,}]
\IfFileExists{\AA@bibBibTeX}{% \IfFileExists{\AA@bibBibTeX}{%
\item \attachandlink{\AA@bibBibTeX}[application/x-bibtex]{BibTeX entry of this paper}{\BibTeX}% \item \expanded{\attachandlink[\AA@key.bib]{\AA@bibBibTeX}[application/x-bibtex]{BibTeX entry of this paper}{\BibTeX}}%
}{% }{%
\IfFileExists{\AA@bibBibTeXLong}{% \IfFileExists{\AA@bibBibTeXLong}{%
\item \attachandlink[\AA@key.bib]{\AA@bibBibTeXLong}[application/x-bibtex]{BibTeX entry of this paper}{\BibTeX}% \item \expanded{\attachandlink[\AA@key.bib]{\AA@bibBibTeXLong}[application/x-bibtex]{BibTeX entry of this paper}{\BibTeX}}%
}{% }{%
\typeout{No file \AA@bibBibTeX{} (and no \AA@bibBibTeXLong) found. Not embedded reference in BibTeX format.}% \typeout{No file \AA@bibBibTeX{} (and no \AA@bibBibTeXLong) found. Not embedded reference in BibTeX format.}%
}% }%
}% }%
\IfFileExists{\AA@bibWord}{% \IfFileExists{\AA@bibWord}{%
\item \attachandlink{\AA@bibWord}[application/xml]{XML entry of this paper (e.g., for Word 2007 and later)}{Word}% \item \expanded{\attachandlink[\AA@key.word.xml]{\AA@bibWord}[application/xml]{XML entry of this paper (e.g., for Word 2007 and later)}{Word}}%
}{% }{%
\typeout{No file \AA@bibWord{} found. Not embedded reference for Word 2007 and later.}% \typeout{No file \AA@bibWord{} found. Not embedded reference for Word 2007 and later.}%
}% }%
\IfFileExists{\AA@bibEndnote}{% \IfFileExists{\AA@bibEndnote}{%
\item \attachandlink{\AA@bibEndnote}[application/x-endnote-refer]{Endnote entry of this paper}{EndNote}% \item \expanded{\attachandlink[\AA@key.enw]{\AA@bibEndnote}[application/x-endnote-refer]{Endnote entry of this paper}{EndNote}}%
}{% }{%
\typeout{No file \AA@bibEndnote{} found. Not embedded reference in Endnote format.}% \typeout{No file \AA@bibEndnote{} found. Not embedded reference in Endnote format.}%
}% }%
\IfFileExists{\AA@bibRIS}{% \IfFileExists{\AA@bibRIS}{%
\item \attachandlink{\AA@bibRIS}[application/x-research-info-systems]{RIS entry of this paper}{RIS}% \item \expanded{\attachandlink[\AA@key.ris]{\AA@bibRIS}[application/x-research-info-systems]{RIS entry of this paper}{RIS}}%
}{% }{%
\typeout{No file \AA@bibRIS{} found. Not embedded reference in RIS format.}% \typeout{No file \AA@bibRIS{} found. Not embedded reference in RIS format.}%
}% }%