View on GitHub

LNCS

Improved Lecture Notes in Computer Science (LNCS) template

Simplified LNCS Template Build Status

Quick start for modern LaTeXing with LNCS.

TOC

Features

Examples:

Background

The official template is available at http://www.springer.com/computer/lncs?SGWID=0-164-6-793341-0. Deep link: ftp://ftp.springernature.com/cs-proceeding/llncs/llncs2e.zip. The files are also provided at Springer’s FTP server at ftp://ftp.springer.de/pub/tex/latex/llncs/latex2e/.

The class file authored by Springer is needed to get the template working: llncs.cls You get it from inside the ZIP of llncs2e.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.

Quick start

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.

Tool hints

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.

In case you want to get started using minted, do following steps:

  1. Install python: choco install python - that uses chocolatey to install Python
  2. Install pygments: pip instal pygments - that uses the Pyhton package manager to install the pygments library
  3. When latexing, use -shell-escape: pdflatex -shell-escape paper. You can also just execute latexmk paper.

Using the template with your git repository

  1. Initialize your git repository as usual
  2. Add this repository as upstream: git remote add upstream https://github.com/latextemplates/LNCS.git
  3. Merge the branch upstream/master into your master 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.

FAQ

Q: ShareLaTeX outputs a warning regarding the llncs class

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)

Q: I need more space. What can I do?

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

Q: How can I reformat my .tex files?

Execute following command:

latexindent -l -s -sl -w paper.tex

Q: I want to obey the one-sentence-per-line rule. How can I do that?

Execute following command:

latexindent -m -l -s -sl -w paper.tex

Attention! This is work in progress and does not always produce best results.

Activate the llncsconf package. The possible options are listed in paper.tex.

Q: Can I also write in German?

Yes.

  1. Pass parameter ngerman to the document class:

     \documentclass[english,runningheads,a4paper]{llncs}[2018/03/10]
    
  2. Please search for babel in paper.tex and use

     \usepackage[english,ngerman]{babel}
    

    instead of

     \usepackage[ngerman,english]{babel}
    

Development

Reindent:

latexindent -y="indentPreamble:1,defaultIndent:'  '" -m -w paper.tex`

If you like this work, please consider donating via Liberapay!