Compare commits
25 Commits
Author | SHA1 | Date |
---|---|---|
Achim D. Brucker | 2306ea6403 | |
Achim D. Brucker | 36494d842e | |
Achim D. Brucker | f474d909b8 | |
Achim D. Brucker | 301b059b49 | |
Achim D. Brucker | 95a66bddd7 | |
Achim D. Brucker | 2b188399cf | |
Achim D. Brucker | 2904f14a78 | |
Achim D. Brucker | bc252c9af6 | |
Achim D. Brucker | e2ee5cc292 | |
Achim D. Brucker | aed9576324 | |
Achim D. Brucker | 24902f805c | |
Achim D. Brucker | 847b173d84 | |
Achim D. Brucker | 3ec32037e4 | |
Achim D. Brucker | 654dfddd3d | |
Oliver Kopp | f0606d5759 | |
Achim D. Brucker | 9376341d13 | |
Achim D. Brucker | 497181cdf3 | |
Achim D. Brucker | e208383473 | |
Achim D. Brucker | e9d6833be0 | |
Achim D. Brucker | 41aa7ed1ec | |
Oliver Kopp | 9db8203aa0 | |
Oliver Kopp | ca97a223b0 | |
Achim D. Brucker | e42d9bb073 | |
Achim D. Brucker | 01d963f798 | |
Achim D. Brucker | 9db07e4ad7 |
|
@ -0,0 +1,22 @@
|
|||
# Continuous Build and Release Setup
|
||||
|
||||
[![status-badge](https://ci.logicalhacking.com/api/badges/adbrucker/llncsconf/status.svg)](https://ci.logicalhacking.com/adbrucker/llncsconf)
|
||||
|
||||
This directory contains the CI configuration for the [Woodpecker CI](https://woodpecker-ci.org/).
|
||||
It may also contain additional tools and script that are useful for preparing a release.
|
||||
|
||||
## Generated Artifacts
|
||||
|
||||
### Latest Build
|
||||
|
||||
* [example_accepted_crop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_accepted_crop.pdf)
|
||||
* [example_accepted_nocrop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_accepted_nocrop.pdf)
|
||||
* [example_intended_crop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_intended_crop.pdf)
|
||||
* [example_intended_nocrop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_intended_nocrop.pdf)
|
||||
* [example_llncs_crop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_llncs_crop.pdf)
|
||||
* [example_llncs_nocrop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_llncs_nocrop.pdf)
|
||||
* [example_proceedings_crop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_proceedings_crop.pdf)
|
||||
* [example_proceedings_nocrop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_proceedings_nocrop.pdf)
|
||||
* [example_submitted_crop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_submitted_crop.pdf)
|
||||
* [example_submitted_nocrop.pdf](https://artifacts.logicalhacking.com/ci/adbrucker/llncsconf/main/latest/example_submitted_nocrop.pdf)
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
pipeline:
|
||||
build:
|
||||
image: docker.io/texlive/texlive
|
||||
commands:
|
||||
- export ARTIFACT_DIR=$CI_WORKSPACE/.artifacts/$CI_REPO/$CI_BRANCH/$CI_BUILD_NUMBER/
|
||||
- mkdir -p $ARTIFACT_DIR
|
||||
- pdflatex "\PassOptionsToPackage{$STATUS,$CROP}{llncsconf}\input{example.tex}"
|
||||
- pdflatex "\PassOptionsToPackage{$STATUS,$CROP}{llncsconf}\input{example.tex}"
|
||||
- cp example.pdf $ARTIFACT_DIR/example_${STATUS}_${CROP}.pdf
|
||||
- find $ARTIFACT_DIR
|
||||
- cd $ARTIFACT_DIR
|
||||
- cd ..
|
||||
- ln -s * latest
|
||||
- sleep 5
|
||||
deploy:
|
||||
image: docker.io/drillster/drone-rsync
|
||||
settings:
|
||||
hosts: [ "ci.logicalhacking.com"]
|
||||
port: 22
|
||||
source: .artifacts/$CI_REPO_OWNER/*
|
||||
target: $CI_REPO_OWNER
|
||||
include: [ "**.*"]
|
||||
key:
|
||||
from_secret: artifacts_ssh
|
||||
user: artifacts
|
||||
notify:
|
||||
image: drillster/drone-email
|
||||
settings:
|
||||
host: smtp.0x5f.org
|
||||
username: woodpecker
|
||||
password:
|
||||
from_secret: email
|
||||
from: ci@logicalhacking.com
|
||||
when:
|
||||
status: [ changed, failure ]
|
||||
|
||||
matrix:
|
||||
CROP:
|
||||
- nocrop
|
||||
- crop
|
||||
STATUS:
|
||||
- intended
|
||||
- submitted
|
||||
- accepted
|
||||
- proceedings
|
||||
- llncs
|
25
CHANGELOG.md
25
CHANGELOG.md
|
@ -5,7 +5,28 @@ 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.1.0 - 2020-05-10
|
||||
## [Unreleased]
|
||||
|
||||
### Added
|
||||
|
||||
### Changed
|
||||
|
||||
## [1.2.0] - 2022-04-24
|
||||
|
||||
### Added
|
||||
|
||||
- The default copyright note can be overwritten by redefining the command `\copyrightnote`.
|
||||
|
||||
### Changed
|
||||
|
||||
- If available, use pdfmanagement instead of `\pdfpagesattr` [[#12](https://github.com/adbrucker/llncsconf/issues/12)]
|
||||
- If `intended` is used, the note is put on each page [[#16](https://github.com/adbrucker/llncsconf/issues/16)]
|
||||
|
||||
### Fixed
|
||||
|
||||
- Reduced size of author statement in footnote [[#15](https://github.com/adbrucker/llncsconf/issues/15)]
|
||||
|
||||
## [1.1.0] - 2020-05-10
|
||||
|
||||
### Added
|
||||
|
||||
|
@ -17,4 +38,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|||
|
||||
- Initial version uploaded to CTAN.
|
||||
|
||||
[Unreleased]: https://git.logicalhacking.com/adbrucker/llncsconf/compare/v1.2.0...HEAD
|
||||
[1.2.0]: https://git.logicalhacking.com/adbrucker/llncsconf/compare/v1.1.0...v1.2.0
|
||||
[1.1.0]: https://git.logicalhacking.com/adbrucker/llncsconf/compare/v1.0.0...v1.1.0
|
||||
|
|
86
README.md
86
README.md
|
@ -1,54 +1,76 @@
|
|||
# llncsconf
|
||||
|
||||
LaTeX package extending Springer's llncs class.
|
||||
LaTeX package extending [Springer's llncs class](https://ctan.org/pkg/llncs).
|
||||
|
||||
## Installation
|
||||
## Installation
|
||||
|
||||
Copy `llncsconf.sty` in a directory that is searched by LaTeX
|
||||
This package is [available on CTAN](https://www.ctan.org/pkg/llncsconf)
|
||||
and thus included TeXLive and MiKTeX. In case the distributed version
|
||||
is too old, 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.
|
||||
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:
|
||||
to use the style.
|
||||
|
||||
The package supports the following general 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.
|
||||
|
||||
To indicate the state of the paper, the package supports following choices:
|
||||
|
||||
* `intended`: adds a *submitted to ... please to no distribute* note
|
||||
to each page. The default copyright note can be overwritten by
|
||||
redefining the command `\copyrightnote`.
|
||||
* `submitted`: adds a *submitted to ... please to no distribute* note
|
||||
to each page. The default copyright note can be overwritten by
|
||||
redefining the command `\copyrightnote`.
|
||||
* `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.
|
||||
* `proceedings`: typesets a note in which proceedings the paper was
|
||||
published (similar to `llncs` without Springer's availability note).
|
||||
* `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}`.
|
||||
|
||||
To display the state information properly, additional commands are required:
|
||||
|
||||
* `\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.
|
||||
options `intended`, `submitted`, or `accepted` 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.
|
||||
|
||||
| State | `\conference` | `\llncs` | `\llncsdoi` |
|
||||
| -- | -- | -- | -- |
|
||||
| intended | yes | no | no |
|
||||
| submitted | yes | no | no |
|
||||
| accepted | yes | no | no |
|
||||
| proceedings | no | yes | no |
|
||||
| llncs | no | yes | yes |
|
||||
|
||||
## 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):
|
||||
Springer states in his [Springer's Consent to Publish v3](https://resource-cms.springernature.com/springer-cms/rest/v1/content/15433008/data/Contract_Book_Contributor_Consent_to_Publish_LNCS_SIPAut):
|
||||
|
||||
> 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
|
||||
|
@ -62,7 +84,6 @@ 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/)
|
||||
|
@ -78,8 +99,9 @@ the LPPL version 1.3c or (at your opinion) any later version.
|
|||
|
||||
SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause
|
||||
|
||||
## Master Repository
|
||||
## Upstream Repository
|
||||
|
||||
The master git repository for this project is hosted by the [Software
|
||||
Assurance & Security Research Team](https://logicalhacking.com) at
|
||||
The upstream git repository, i.e., the single source of truth, for this
|
||||
project is hosted by the [Software Assurance & Security Research
|
||||
Team](https://logicalhacking.com) at
|
||||
<https://git.logicalhacking.com/adbrucker/llncsconf>.
|
||||
|
|
BIN
example.pdf
BIN
example.pdf
Binary file not shown.
|
@ -1,7 +1,6 @@
|
|||
\documentclass[final, runningheads, USenglish, pdftex]{llncs}
|
||||
\usepackage{lipsum}
|
||||
%\usepackage[proceedings,crop]{llncsconf}
|
||||
\usepackage[llncs,crop]{llncsconf}
|
||||
\usepackage{llncsconf}
|
||||
|
||||
\conference{International Conference on \LaTeX-Hacks}
|
||||
\llncs{Anonymous et al.\ (eds).\ \emph{Proceedings of the International
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
%% SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause
|
||||
\NeedsTeXFormat{LaTeX2e}\relax
|
||||
\ProvidesPackage{llncsconf}
|
||||
[2020/05/10 v1.1.0 %
|
||||
[2000/00/00 Unreleased v1.2.0+ %
|
||||
Tweaks for the llncs class.]
|
||||
%
|
||||
\RequirePackage{ifthen}
|
||||
|
@ -27,6 +27,7 @@
|
|||
\newboolean{proceedings}
|
||||
%
|
||||
\DeclareOption{crop}{\setboolean{crop}{true}}
|
||||
\DeclareOption{nocrop}{\setboolean{crop}{false}}
|
||||
\DeclareOption{rcsinfo}{\setboolean{rcsinfo}{true}}
|
||||
\DeclareOption{svninfo}{\setboolean{svninfo}{true}}
|
||||
\DeclareOption{accepted}{\setboolean{accepted}{true}}
|
||||
|
@ -42,16 +43,32 @@
|
|||
\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}{}}
|
||||
|
||||
\newcommand{\copyrightnote}{\copyright\ \number\year, \toc@uthor}
|
||||
|
||||
% <crop>
|
||||
\ifthenelse{\boolean{crop}}{%
|
||||
\ExplSyntaxOn
|
||||
\@ifundefined{pdfmanagement_add:nnn}{%
|
||||
\@ifclasswith{llncs}{a4paper}{%
|
||||
\pdfpagesattr{/CropBox [92 114 523 780]}%
|
||||
}{%
|
||||
\pdfpagesattr{/CropBox [92 65 523 731]}% LNCS page: 152x235 mm
|
||||
}%
|
||||
}{%
|
||||
\@ifclasswith{llncs}{a4paper}{%
|
||||
\pdfmanagement_add:nnn {Pages}{CropBox}{[92~114~523~780]}
|
||||
}{%
|
||||
\pdfmanagement_add:nnn {Pages}{CropBox}{[92~62~523~731]}
|
||||
}%
|
||||
}%
|
||||
\ExplSyntaxOff
|
||||
}{}
|
||||
% </crop>
|
||||
|
||||
|
||||
|
||||
|
||||
\def\ps@svninfofirst{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
|
||||
\def\@oddfoot{\reset@font\scriptsize
|
||||
\vbox to\z@{\parindent=\z@\vss
|
||||
|
@ -88,24 +105,26 @@
|
|||
\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}
|
||||
\copyrightnote%
|
||||
}}\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
|
||||
\copyrightnote%
|
||||
}}\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.
|
||||
Intended for submission to \@conference, please do \emph{not} distribute.\\
|
||||
\copyrightnote%
|
||||
}}\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.
|
||||
Intended for submission to \@conference, please do \emph{not} distribute.\\
|
||||
\copyrightnote%
|
||||
}}\let\@evenfoot\@oddfoot}
|
||||
%
|
||||
\def\ps@llncs{\let\@mkboth\@gobbletwo\let\@oddhead\@empty\let\@evenhead\@empty
|
||||
|
@ -153,7 +172,7 @@
|
|||
% </accepted>
|
||||
% <intended>
|
||||
\ifthenelse{\boolean{intended}}{%
|
||||
% \pagestyle{intended}%
|
||||
\pagestyle{intended}%
|
||||
\let\old@mkttl=\maketitle%
|
||||
\def\maketitle{\old@mkttl\thispagestyle{intendedfirst}}%
|
||||
}{}
|
||||
|
|
Loading…
Reference in New Issue