Quick start for modern LaTeXing with LNCS.
- Features
- Background
- Quick start
- Tool hints
- Using the template with your git repository
- FAQ
- Development
- Links
- Support for German documents (without broken headers): Contains a fix to increase compatibility with Babel. See https://tex.stackexchange.com/a/441701/9075 for details.
- Provides a skeletal paper.tex file.
- Generated PDF allows for copy and paste of text without getting words with ligatures such as "workflow" destroyed.
This is enabled by
glyphtounicode
, which encodes ligatures (such as fl) using unicode characters. - Automatic setting of "Fig." and "Section"/"Sect." according to the LNCS style.
Just use
\Cref{sec:xy}
at the beginning of a sentence and\cref{sec:xy}
in the middle of a sentence. Thanx to cleveref. - Support of hyperlinked references without extra color thanx to hyperref.
- Better breaking of long URLs.
- Sharper font (still compatible with Springer's requirements).
- Support for
\powerset
command. - Support todos as pdf annotations. This is enabled by the pdfcomment package.
- microtypographic extensions for a better look of the paper.
- Adds modern packages such as microtype, cleveref, csquotes, paralist, hyperref, hypcap, upquote, natbib, booktabs, cfr-lm.
- Optional: Support for minted package. Uncomment
\usepackage[newfloat]{minted}
to get started. - Optional: Compile with
lualatex
instead ofpdflatex
. - Ready-to-go configuration for latexindent.
Examples:
- paper.pdf - normal paper.
- paper-minted.pdf - paper showing minted in action.
- paper-newtx.pdf - paper typeset in Times Roman to save some space.
- paper-minted-newtx.pdf - paper typeset in Times Roman to save some space.
The official template is available at https://www.springer.com/gp/computer-science/lncs/conference-proceedings-guidelines --> "Templates, samples files & useful links" --> "LaTeX2e Proceedings Templates (zip)" Deep link: ftp://ftp.springernature.com/cs-proceeding/llncs/llncs2e.zip.
The class file authored by Springer is needed to get the template working:
llncs.cls
You get it from inside the ZIP ofllncs2e.zip
available at ftp://ftp.springernature.com/cs-proceeding/llncs/llncs2e.zip.
Reason: Licensing restrictions of Springer do not allow distribution outside of springer.
See message #47 for debian bug 31897 for details.
Therefore, the required file llncs.cls
has to be downloaded in some way.
Follow the quick start instructions.
- Click on
Download ZIP
or here. - Extract
LNCS-master.zip
in the folder where you want to write your paper. - Place
llncs.cls
into the directory- Download
llncs2e.zip
from ftp://ftp.springernature.com/cs-proceeding/llncs/llncs2e.zip and extract it in the directory. On Linux, just executedownload-llncs-files-from-springer.sh
. - In case ftp does not work at your side, you can try online ftp services such as http://www.net2ftp.com/ to download the files.
Open the connection to
ftp.springernature.com
and navigate tocs-proceeding
,llncs
, and download the ZIP archive.
- Download
- Edit paper.tex.
latexmk paper
.
As you see on CircleCI, the paper compiles out of the box. There is no need to adjust the packages or to remove some of them. This might lead to undesiered results such as hyperlinks not working any more or no good microtypographic features. In case you think, a package needs to be altered or added, feel free to open an issue.
There is currently no official biblatex support. A first step towards that is done at biblatex-lncs.
MiKTeX installation hints are given at https://github.com/latextemplates/scientific-thesis-template/blob/template/README.md#installation-hints-for-windows.
- Grammar and spell checking is available at TeXstudio.
Please download LanguageTool (Windows:
choco install languagetool
) and configure TeXstudio to use it. Note that it is enough to point tolanguagetool.jar
. If TeXstudio doesn't fit your need, check the list of all available LaTeX Editors. - Use JabRef to manage your bibliography (Windows:
choco install jabref
).
In case you want to get started using minted, do following steps:
- Install python:
choco install python
- that uses chocolatey to install Python - Install pygments:
pip instal pygments
- that uses the Pyhton package manager to install the pygments library - When latexing, use
-shell-escape
:pdflatex -shell-escape paper
. You can also just executelatexmk paper
.
- Initialize your git repository as usual
- Add this repository as upstream:
git remote add upstream https://github.com/latextemplates/LNCS.git
- Merge the branch
upstream/master
into yourmaster
branch:git merge upstream/master
.
After that you can use and push the master
branch as usual.
Notes on syncing with the upstream repository are available from GitHub.
ShareLaTeX might output following warning:
LaTeX Warning: You have requested, on input line 8, version 2018/03/10' of document class llncs, but only version 2004/08/17 v2.14 LaTeX document class for Lecture Notes in Computer Science' is available.
The reason is that you did not use llncs.cls
from a recent llncs2e.zip (which can be downloaded from ftp://ftp.springernature.com/cs-proceeding/llncs/llncs2e.zip), but a copy from somewhere else.
Please use the latest version offered by Springer.
Q: I get the error ! pdfTeX error (font expansion): auto expansion is only possible with scalable fonts.
Install the cm-super
package using the MiKTeX package manager. Then, run initexmf --mkmaps
on the command line. (Long description: http://tex.stackexchange.com/a/324972/9075)
The most simple solution to get more space is to exchange the font.
You can disable the cfr-lm package by the newtx package's newtxtext
and newtxmath
.
This effectively switches the font from Computer Modern to Times Roman.
This switch is prepared in the template. Exchange
\iftrue % use default-font
by
\iffalse
Execute following command:
latexindent -l -s -sl -w paper.tex
Execute following command:
latexindent -m -l -s -sl -w paper.tex
Attention! This is work in progress and does not always produce best results.
Q: Is it possible to have a footer indicating that the paper is intended to be submitted/submitted/published?
Activate the llncsconf
package.
The possible options are listed in paper.tex
.
Yes.
-
Pass parameter
ngerman
to the document class:\documentclass[english,runningheads,a4paper]{llncs}[2018/03/10]
-
Please search for
babel
inpaper.tex
and use\usepackage[english,ngerman]{babel}
instead of
\usepackage[ngerman,english]{babel}
Reindent:
latexindent -y="indentPreamble:1,defaultIndent:' '" -m -w paper.tex`
If you like this work, please consider donating via Liberapay!
- tex.stackexchange.com questions regarding LNCS: https://tex.stackexchange.com/questions/tagged/lncs
- German: Hinweise zu Ausarbeitungen: http://wiki.flupp.de/studium/ausarbeitungen
- Other templates: https://latextemplates.github.io/
- Original LNCS demonstration (without the improvements): llncs-dem.pdf
- Original LNCS documentation (without the improvements): llncs-doc.pdf