summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/llncsconf
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/llncsconf
Initial commit
Diffstat (limited to 'macros/latex/contrib/llncsconf')
-rw-r--r--macros/latex/contrib/llncsconf/CHANGELOG.md9
-rw-r--r--macros/latex/contrib/llncsconf/LICENSE23
-rw-r--r--macros/latex/contrib/llncsconf/README.md65
-rw-r--r--macros/latex/contrib/llncsconf/example.pdfbin0 -> 123034 bytes
-rw-r--r--macros/latex/contrib/llncsconf/example.tex31
-rw-r--r--macros/latex/contrib/llncsconf/llncsconf.sty187
6 files changed, 315 insertions, 0 deletions
diff --git a/macros/latex/contrib/llncsconf/CHANGELOG.md b/macros/latex/contrib/llncsconf/CHANGELOG.md
new file mode 100644
index 0000000000..8e8bd0660f
--- /dev/null
+++ b/macros/latex/contrib/llncsconf/CHANGELOG.md
@@ -0,0 +1,9 @@
+# Changelog
+All notable changes to this project will be documented in this file.
+
+The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
+and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
+
+## [1.0.0] - 2018-02-20
+### Added
+- Initial version uploaded to CTAN.
diff --git a/macros/latex/contrib/llncsconf/LICENSE b/macros/latex/contrib/llncsconf/LICENSE
new file mode 100644
index 0000000000..cf2cd80d69
--- /dev/null
+++ b/macros/latex/contrib/llncsconf/LICENSE
@@ -0,0 +1,23 @@
+Copyright (c) 2016 Achim D. Brucker
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/macros/latex/contrib/llncsconf/README.md b/macros/latex/contrib/llncsconf/README.md
new file mode 100644
index 0000000000..6d43746f65
--- /dev/null
+++ b/macros/latex/contrib/llncsconf/README.md
@@ -0,0 +1,65 @@
+# llncsconf
+LaTeX package extending Springer's llncs class.
+
+## Installation
+Copy `llncsconf.sty` in a directory that is searched by LaTeX
+(e.g,. either your `texmf` tree or the local directory with your main
+LaTeX file.
+
+## Usage
+In a LaTeX file that uses Springer's `llncs` class, just add
+```tex
+ \usepackage{llncsconf}
+```
+to use the style. The package supports the following options:
+ * `crop`: crops the page (PDF) to the page size (152x235mm) used by
+ the LNCS proceedings books (and the official PDFs offered by
+ Springer). Please ensure that you *do not* have the option
+ `a4paper` activated. Otherwise, cropping produces wrong results.
+ * `rcsinfo`: adds RCS revision information to the first page of
+ the document.
+ * `svninfo`: adds subversion/svn revision information to the
+ first page of the document.
+ * `llncs`: typesets a copy of Springer's copyright note. This should
+ satisfy Springer's requirements for self-archiving.
+ You need to supply the DOI using `\llncsdoi{DOI}`.
+ * `proceedings`: typesets a note in which proceedings the paper was
+ published (similar to `llncs` without Springer's availability note).
+ * `accepted`: adds a *accepted for publication at ...* note
+ to the first page. This is useful for the phase where the camera
+ ready version is prepared, but the publisher did not yet publish it.
+ * `submitted`: adds a *submitted to ... please to no distribute* note
+ to the first page.
+ * `intended`: adds a *submitted to ... please to no distribute* note
+ to the first page.
+
+Moreover, the package requires two commands to be executed:
+* `\conference{name of the conference}` which takes one argument,
+ i.e., the name of the conference. This is used when one of the
+ options `submitted` or `intended` is used for loading the package.
+* `\llncs{book editors and title}{start page}` which takes two
+ arguments: first the information about the book (e.g., editors,
+ title) and, second, the start page of the chapter (contribution).
+* `\llncsdoi{DOI}` which takes one argument,
+ i.e., the DOI of the final publication available at Springer's web site.
+
+## Self-Archiving
+Sprinter states in his [Springer's Consent to Publish v3](http://resource-cms.springer.com/springer-cms/rest/v1/content/731196/data/v3):
+
+> Author may only post his/her own version, provided acknowledgment is given to the original source of publication and a link is inserted to the published article on Springer’s website.
+> The link must be provided by inserting the DOI number of the article in the following sentence:
+> "The final publication is available at Springer via `http://dx.doi.org/[insert DOI]`".
+The DOI (Digital Object Identifier) can be found at the bottom of the first page of the published paper.
+
+This package uses `https://doi.org` as `http://dx.doi.org` [is deprecated](https://www.doi.org/factsheets/DOIIdentifierSpecs.html).
+
+
+## Authors
+Main author: [Achim D. Brucker](http://www.brucker.ch/)
+
+### Contributors
+* [Oliver Kopp](https://github.com/koppor/)
+
+## License
+This project is dual-licensed under a 2-clause BSD-style license and/or
+the LPPL version 1 or any later version.
diff --git a/macros/latex/contrib/llncsconf/example.pdf b/macros/latex/contrib/llncsconf/example.pdf
new file mode 100644
index 0000000000..99910c31fd
--- /dev/null
+++ b/macros/latex/contrib/llncsconf/example.pdf
Binary files differ
diff --git a/macros/latex/contrib/llncsconf/example.tex b/macros/latex/contrib/llncsconf/example.tex
new file mode 100644
index 0000000000..6df9fdc455
--- /dev/null
+++ b/macros/latex/contrib/llncsconf/example.tex
@@ -0,0 +1,31 @@
+\documentclass[final, runningheads, USenglish, pdftex]{llncs}
+\usepackage{lipsum}
+%\usepackage[proceedings,crop]{llncsconf}
+\usepackage[llncs,crop]{llncsconf}
+
+\conference{International Conference on \LaTeX-Hacks}
+\llncs{Anonymous et al.\ (eds).\ \emph{Proceedings of the International
+ Conference on \LaTeX-Hacks}, LNCS~-42. Some Publisher, 2016.}{0042}
+\llncsdoi{10.1007/xxxx}
+\title{A Simple Example of the \texttt{llncsconf} Package for \LaTeX}
+
+\author{\protect\href{http://www.brucker.ch/}{Achim D. Brucker}}
+\institute{Some Department, Somewhere}
+
+\begin{document}
+
+\maketitle{}
+\begin{abstract}
+\lipsum[1-2]
+\end{abstract}
+
+\section{Introduction}
+\lipsum[1-4]
+
+\section{Contribution}
+\lipsum[5-10]
+
+\section{Conclusion}
+\lipsum[10-12]
+% \label{LastPage}
+\end{document}
diff --git a/macros/latex/contrib/llncsconf/llncsconf.sty b/macros/latex/contrib/llncsconf/llncsconf.sty
new file mode 100644
index 0000000000..a8f7a7d483
--- /dev/null
+++ b/macros/latex/contrib/llncsconf/llncsconf.sty
@@ -0,0 +1,187 @@
+%% Copyright (C) 2003-2018 Achim D. Brucker, https://www.brucker.ch
+%%
+%% License:
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt; either
+%% version 1 of the License, or any later version.
+%% OR
+%% The 2-clause BSD-style license.
+\NeedsTeXFormat{LaTeX2e}\relax
+\ProvidesClass{llncsconf}[Unreleased Achim D. Brucker]
+%
+\RequirePackage{ifthen}
+\RequirePackage{hyperref}
+%
+\newboolean{rcsinfo}
+\newboolean{svninfo}
+\newboolean{accepted}
+\newboolean{submitted}
+\newboolean{intended}
+\newboolean{llncs}
+\newboolean{crop}
+\newboolean{proceedings}
+%
+\DeclareOption{crop}{\setboolean{crop}{true}}
+\DeclareOption{rcsinfo}{\setboolean{rcsinfo}{true}}
+\DeclareOption{svninfo}{\setboolean{svninfo}{true}}
+\DeclareOption{accepted}{\setboolean{accepted}{true}}
+\DeclareOption{submitted}{\setboolean{submitted}{true}}
+\DeclareOption{intended}{\setboolean{intended}{true}}
+\DeclareOption{llncs}{\setboolean{llncs}{true}}
+\DeclareOption{proceedings}{\setboolean{proceedings}{true}}
+%%%
+\ProcessOptions\relax
+%%
+\AtEndDocument{\label{LastPage}}
+\def\conference#1{\gdef\@conference{#1}}
+\def\llncs#1#2{\gdef\@llncs{#1}\ifthenelse{\boolean{llncs} \OR \boolean{proceedings}}{\setcounter{page}{#2}}{}}
+\gdef\@llncsdoi{UNKNOWN}
+\def\llncsdoi#1{\gdef\@llncsdoi{#1}{}}
+
+% <crop>
+\ifthenelse{\boolean{crop}}{%
+\pdfpagesattr{/CropBox [92 70 523 736]}% LNCS page: 152x235 mm
+}{}
+% </crop>
+\def\ps@svninfofirst{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ \textsf{\small Revision: \svnInfoRevision \quad Date: \svnInfoDate
+ \quad Time: \svnInfoTime \quad File: \svnInfoFile\\}}
+ }\let\@evenfoot\@oddfoot}
+\def\ps@svninfo{\let\@mkboth\@gobbletwo
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ \textsf{\small Revision: \svnInfoRevision \quad Date: \svnInfoDate
+ \quad Time: \svnInfoTime \quad File: \svnInfoFile\\}}
+ }\let\@evenfoot\@oddfoot}
+%
+\def\ps@rcsinfofirst{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ \textsf{\small Revision: \rcsInfoRevision \quad Date: \rcsInfoDate
+ \quad Time: \rcsInfoTime \quad File: \rcsInfoFile\\}}
+ }\let\@evenfoot\@oddfoot}
+\def\ps@rcsinfo{\let\@mkboth\@gobbletwo
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ \textsf{\small Revision: \rcsInfoRevision \quad Date: \rcsInfoDate
+ \quad Time: \rcsInfoTime \quad File: \rcsInfoFile\\}}
+ }\let\@evenfoot\@oddfoot}
+%
+\def\ps@acceptedfirst{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ Accepted for publication at \@conference.
+ }}\let\@evenfoot\@oddfoot}
+%
+\def\ps@submitted{\let\@mkboth\@gobbletwo
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ Submitted to \@conference, please do \emph{not} distribute.\\
+ \copyright\ \number\year, \@author
+ }}\let\@evenfoot\@oddfoot}
+\def\ps@submittedfirst{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ Submitted to \@conference, please do \emph{not} distribute.\\
+ \copyright\ \number\year, \@author
+ }}\let\@evenfoot\@oddfoot}
+%
+\def\ps@intended{\let\@mkboth\@gobbletwo
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ Intended for submission to \@conference, please do \emph{not} distribute.
+ }}\let\@evenfoot\@oddfoot}
+\def\ps@intendedfirst{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ Intended for submission to \@conference, please do \emph{not} distribute.
+ }}\let\@evenfoot\@oddfoot}
+%
+\def\ps@llncs{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ \@llncs
+ \unskip, pp.~\thepage--\pageref{LastPage}, \number\year.\\
+ The final publication is available at Springer via \url{https://doi.org/\@llncsdoi}.
+ }}\let\@evenfoot\@oddfoot}
+
+\def\ps@proceedings{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
+ \def\@oddfoot{\reset@font\scriptsize
+ \vbox to\z@{\parindent=\z@\vss
+ \@llncs
+ \unskip, pp.~\thepage--\pageref{LastPage}, \number\year.
+ }}\let\@evenfoot\@oddfoot}
+
+% <rcsinfo>
+\ifthenelse{\boolean{rcsinfo}}{%
+\RequirePackage{rcsinfo}
+\pagestyle{rcsinfo}%
+\let\old@mkttl=\maketitle%
+\def\maketitle{\old@mkttl\thispagestyle{rcsinfofirst}}%
+}{}
+% </rcsinfo>
+% <svninfo>
+\ifthenelse{\boolean{svninfo}}{%
+\RequirePackage{svninfo}
+\RequirePackage{eso-pic}
+ \AddToShipoutPicture{%
+ \setlength{\unitlength}{1mm}%
+ \put(38,28){\tiny\svnInfoFile\quad\svnInfoRevision\quad\svnInfoDate%
+ \quad\svnInfoTime\quad\svnInfoOwner}%
+ }%
+%\pagestyle{svninfo}%
+%\let\old@mkttl=\maketitle%
+%\def\maketitle{\old@mkttl\thispagestyle{svninfofirst}}%
+}{}
+% </svninfo>
+% <accepted>
+\ifthenelse{\boolean{accepted}}{%
+\let\old@mkttl=\maketitle%
+\def\maketitle{\old@mkttl\thispagestyle{acceptedfirst}}%
+}{}
+% </accepted>
+% <intended>
+\ifthenelse{\boolean{intended}}{%
+% \pagestyle{intended}%
+\let\old@mkttl=\maketitle%
+\def\maketitle{\old@mkttl\thispagestyle{intendedfirst}}%
+}{}
+% </intended>
+% <submitted>
+\ifthenelse{\boolean{submitted}}{%
+\pagestyle{submitted}%
+\let\old@mkttl=\maketitle%
+\def\maketitle{\old@mkttl\thispagestyle{submittedfirst}}%
+}{}
+% </submitted>
+% <llncs>
+\ifthenelse{\boolean{llncs}}{%
+\let\old@mkttl=\maketitle%
+\def\maketitle{\old@mkttl\thispagestyle{llncs}}%
+}{}
+% </llncs>
+\ifthenelse{\boolean{proceedings}}{%
+\let\old@mkttl=\maketitle%
+\def\maketitle{\old@mkttl\thispagestyle{proceedings}}%
+}{}
+
+\setcounter{tocdepth}{2}
+\let\clearheadinfo\relax
+\hypersetup{%
+ draft = false,
+ bookmarksopen = true,
+ bookmarksnumbered= true,
+ pdfauthor = {\@author},
+ pdftitle = {\@title},
+}
+%\renewcommand{\chapter}[1]{#1}
+%
+
+\providecommand*{\toclevel@title}{0}
+\providecommand*{\toclevel@author}{0}
+
+
+\endinput