DCS Group LaTeX classes
I have prepared a customized class for writing scientific articles, containing listings of programs, algorithms, etc. It consists of the following files:
- dcsarticle.cls
- An article. It loads dcslib.sty. The class has an option
reportused to produce a technical report. Requires at least version 2.6 of titlesec package.
Current version is 920 produced on 2009-12-21 . - dcsbook.cls
- A book. It also loads dcslib.sty.
Current version is 920 produced on 2009-12-21 . - dcslib.sty
- The main part of the class
dcsarticle. I have put all these stuff in a separate package to make it possible to use the functionality ofdcsarticlewith other classes, e.g. beamer class. The package has an optiontheoremsthat defines a set of theorems as in Springer LNCS.
Requires at least version 1.3 of listings package.
Current version is 920 produced on 2009-12-21 . - dcsalg.sty
- An auxiliary class for typesetting algorithms. Uses algorithmicx
package.
Current version is 920 produced on 2009-12-21 . - dcsarticle.layout
- A layout for LyX 1.6.x to write articles using
dcsarticleclass in LyX.
Current version is 920 produced on 2009-12-21 . - dcsbook.layout
- A layout for LyX 1.6.x to write books using
dcsbookclass in LyX.
Current version is 920 produced on 2009-12-21 . - dcs.module
- A module for LyX 1.6.x with definitions of inline styles: Emph, Strong,
Code, Path, Cmd, Kbd, Name, and a customized style
LyX-Code.
Current version is 920 produced on 2009-12-21 . - logopp.png
- A logo file used by some of the classes.
CSThesis class
And one more class for my PhD thesis:
- csthesis.cls
- The class is based on a standard
bookclass. It uses both dcslib.sty and dcsalg.sty.
Current version is 892 produced on 2009-12-17 . - csthesis.layout
- A layout for LyX to write books using
csthesisclass in LyX.
Current version is 920 produced on 2009-12-21 .
LLS = LaTeX + LyX + Subversion/CVS
In this paper (in Polish) I have presented a set of tools that may be used to work on documents in a group of people in a heterogeneous environment (e.g. mixture of Linux and Windows systems).
Tips and Tricks
PDF documents manipulation
If you want to put multiple pages of an existing PDF document on a single sheet use the scripts from pdfjam package. For example, when producing a handout of my presentations I run:
pdfnup --nup 2x2 --paper a4paper --frame true --scale 0.96 \
--delta "2mm 2mm" doc.pdf
I use pdfnup also for scaling documents (e.g. LNCS papers):
pdfnup --nup 1x1 --scale 1.2 doc.pdf
Strike-through text
Use package ulem, eg.:
\usepackage[normalem]{ulem}
...
Ala \sout{nie} ma kota
will produce: Ala nie ma kota. The option
normalem saves the standard emphasizing command (by default it is changed to
underline). The other commands are: \uline for multiline underlining,
\uuline for double underlining, \uwave for wavy underline.
Additional fonts
I recommend replacing replacing standard Computer Modern constant width font with for example:
Bera Mono or Luxi Mono. These are very nice, scalable
fonts. They have bold variants and contain complete set of polish characters. In order to install
it in unix systems, run latex-font-inst.sh
script.
Mirrored output
If you want to get a mirrored output use the crop package, and the command
\crop. Here is an example:
\usepackage[a4center,mirror]{crop}
\crop[cross]
Bibliography
Key generation algorithm
- If there is only one author: take the first three letters out of his name and join it with the year number (two digits), e.g. Sch90.
- If there are more than one author but less than four: take first letters of their names and join it with the year number (two digits), AB90.
- If there are more than four authors: take first characters of the first three of them, a plus character, and two digits of the year, e.g. ABC+99.
- If there are conflicts: attach single letters a, b and so on to the keys generated, e.g. AB90a.
Links
- GUST (Grupa Użytkowników Systemu TeX)
- TUG (TeX Users Group)
- LyX ― very good frontend for LaTeX
LyX is also available as a natively ported application for Windows - The Not So Short Introduction to LaTeX2e [wersja polska]
- LaTeX2e for class and package writers
- Wymagania techniczne tekstów i ilustracji oraz kilka słów o korekcie
- Zasady typografii i łamania książek/czasopism