Cimento
Cimento
Abstract
This document describes the LATEX class provided by the Italian Physical
Society (SIF) for typesetting papers for its journal “Il Nuovo Cimento”.
Contents
1 Foreword 2
1.1 How to obtain this file. . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Distribution files and installation . . . . . . . . . . . . . . . . . . . 2
2 Desperate introduction 3
3 Class description 4
3.1 Author vs. editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2 The preamble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2.1 Preamble scheme . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.2 Preamble macros . . . . . . . . . . . . . . . . . . . . . . . . 5
3.3 The main text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.4 Final stuff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.5 Additional macros . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.6 Things of no consequence . . . . . . . . . . . . . . . . . . . . . . . 13
5 Contacting 15
6 A sample paper 15
∗ This file has version number v1.4c, last revised 1999/12/01.
1
1 Foreword
The class cimento is a variation of the standard LATEX article class, especially
designed to produce an output that matches the standards of the review “Il Nuovo
Cimento”.
Papers written in LATEX and based on this class will undergo the publication
process more easily, more quickly and with less structural changes than in any
other possible format, such as plain TEX, Word, WordPerfect, etc.
While the printed appearance of a paper based on this class will be quite
different from that of a standard LATEX article, we have tried to preserve as far as
possible the syntax of LATEX, so that you won’t have to learn many new commands
and only minor changes should be necessary to adapt a text already written in
LATEX.
Please notice that this class is still under development and it changes often:
you should try to get the latest version before starting to write a paper based
upon it.
ftp.sif.it/pub/tex/cimento/
and on the web at
www.sif.it.
You can also have it on a disquette by making a request at one of the addresses
listed in section 5.
Finally, this package is free: use it, distribute it, even modify it if you feel
like—we cannot prevent it. There is a copyright notice in the distribution file
cimento.dtx.
2
searched by the program, so you have to put it either in the LATEX input directory,
or in the directory where the file you are actually writing dwells1 .
The second file extracted from cimento.dtx, cimsmple.tex, is a short sample
paper that you can compile to compare the output with the source code; you could
also make a copy of it and use it as a template for your own paper. Section 6
contains a commented copy of the source code of this sample.
The following table resumes the filenames and their contents
distribution files
README.TXT readme file. . .
cimento.dtx the “compressed” file which contains the class
code along with the document you are reading
cimento.ins a script file for unpacking the distribution
unpacked files
cimento.cls the actual class file, the one you will input in your
paper
cimsmple.tex a sample/template paper
2 Desperate introduction
If you can tell the difference between LATEX 2.09 and LATEX 2ε please skip this
section; otherwise, this is as good a place as any other to learn something about
that.
LATEX 2ε is the new version of LATEX which has been released in 1994. Since it
has replaced the older version, it is of course refered to simply as ‘LATEX’, and so is
in this document. Whenever there is the necessity to distinguish this new version
from the older one, the latter is called ‘LATEX 2.09’, from its version number.
Needless to say, the cimento package is based upon the new version; you should
seriously consider the opportunity of documenting yourself about the features of
this new version of LATEX. See LATEX: A Document Preparation System [1] or The
LATEX companion [2] for a thorough treatment of the subject.
However, some facts need to be pointed out here:
• LATEX 2ε behaves quite well with respect to documents written for LATEX
2.09, but,
• in order to distinguish clearly between old macro packages and new ones, the
former keep their traditional name of “style files” and the .sty extension,
while the latter are called “class files” with extension .cls—this explains
why we call cimento a “class” instead of a “style” file.
• The first line of a document makes LATEX decide whether it’s facing a new
document or an old one:
• Whenever you write in LATEX, you should try and start your paper with
1 Note that the former choice may not be available to you: if you work in a Unix environment,
you probably don’t have write access rights to the LATEX directory. You can still play with
environment variables to have your TEX search in your own user-defined path. . .
3
\documentclass{article};
this will trigger LATEX 2ε mode, which is more convenient—much faster, for
instance. Then, if you don’t want to spend some time learning the new
wonderful commands at your disposal, you can just get along with the com-
mands you are accustomed to; the minor syntax differences are conveniently
handled for you by LATEX itself.
Now, this package is written for LATEX 2ε ; that means you must begin your
paper with the new starting command, like this:
\documentclass{cimento}.
To conclude this section, we point out that LATEX 2ε is the standard now, and
as such is probably already installed on your system (if not, complain!); that’s
why you had better cope with it and take a glance at one of the books cited
above—look at your local library first.
3 Class description
The class is really a standard article, with but a little make-up; therefore the
description which follows is simply a list of the peculiarities and differences between
this class and the standard one.
4
3.2.1 Preamble scheme
\documentclass[options]{cimento}
\usepackage{package1}
\usepackage{package2}
...
\newcommand{comm1}{...}
\newcommand{comm2}{...}
...
\title{paper title}
\author{first author\from{i1},
second author\from{i2},
...
\atque last author\from{in}}
\instlist{\inst{i1} first institute
\inst{i2} second institute
...
\isnt{in} last institute}
\PACSes{\PACS{first ID}{first description}
\PACS{second ID}{second description}
...
\PACS{last ID}{last description}}
\begin{document}
\documentclass \documentclass[options]{cimento}.
The options supported by the class are summarized in the table below. All op-
tions not explicitly mentioned are not supported and produce a warning message.
However, they are kept in memory for packages that may use them, so that, for
example, you can still declare an option dvips in the call to \documentclass and
have it passed on to the packages.
5
option description
author options
draft Draft mode: 12pt fonts, stretched page layout, no
running heads and so on.
final The counterpart of the preceding one. It typesets
the paper with the final formatting. This one is
on by default.
seceqno Numbers equations within sections, rather than
within all document.
cite Load the cite package.
bareref Alternate mode for references. Not documented
still!
varenna Varenna mode, see sec. 4.3 below.
rivista Rivista mode, see sec. 4.4 below.
editorial options
overfull Gives overfull marks on the right margin, as in
draft mode.
shortnote Used to produce a short note. Like the next two,
this is still quite experimental.
erratum Used to produce errata.
toc Table of contents of an issue (formerly index).
prefatory Prefatory matter: introductions, prefaces, etc.
century This option substitutes the standard TEX fonts
with postscript fonts. You don’t have these fonts,
so don’t bother yourself with trying it out.
debug Makes TEX error messages more detailed. Useful
mainly while debugging the class code, i.e., not
useful for you!
The only default option is final.
As you can see, the class options are generally not very useful to authors; you
can safely ignore them and begin your paper simply with
\documentclass{cimento}.
Title and author. The \title2 macro in draft mode is apparently the same
as in article, but since it does more than you can tell at first glance, you have
to use it, together with \maketitle, and do not build the title up by means of
low-level formatting commands.
The same is true for \author.
\atque Inside the \author command use \atque to separate the last author in a list;
this will produce an ‘and’ that will not get uppercased in the running head.
\thanks To place a footnote in either the title or the author list use \thanks like in
standard LATEX; don’t forget to \protect fragile commands in its argument.
Running heads. The running heads do not appear in draft mode, so if you
do not use the final mode you can happily skip this section and proceed to the
description of the institutes below.
2 It is merely a matter of taste whether these commands (and the subsequent ones in this
section) should reside in the preamble or in the main text, after the \begin{document}; the
point is that they should go before \maketitle.
6
The \title macro in fact provides both the main title of the paper and the
short title for the running heads. If the title is too long to fit into the running
\ETC head, a \ETC macro has to be inserted inside the title at the point where it should
be cut. For example,
would produce
in the running head. A backslash after \ETC is necessary if a space has to appear
at that spot3 . \ETC ignores preceding blanks and provides automatically the
necessary spacing.
With respect to the running head and the \ETC macro, \author behaves exactly
the same way as \title. Note that its use is required only when the authors are
too many to fit into the running head, e.g. not for two authors!
When the short title for the running head should not be obtained simply by
cutting the main title, but should instead be a (partly or completely) different text,
\shorttitle you should ignore the \ETC mechanism, and use, instead, \shorttitle{running-head-title}.
Do not use \ETC inside \shorttitle.
\shortauthor \shortauthor{running-head-author } does the same job for the author, al-
though its use should be quite rare. Do not use \ETC inside \shortauthor, either.
Important note. The text of the title (and author) gets capitalized in the
running heads. All the text, even the symbols in mathematics so that, for example,
becomes
THE SPIRIT OF E = M C 2
in the running heads. To avoid this you have to enclose all the letters of the title
which should remain lowercase into a \MakeLowercase, like this:
We know that this is boring, but we couldn’t see a better solution. (Comments
and suggestions are welcome.)
7
insts := \inst{label-1 } institute-description-1
\inst{label-2 } institute-description-2
...
\inst{label-n} institute-description-n
\inst The \insts print the institute-descriptions and store away the labels, which
are then (or rather, were) used to reference the institutes from inside the \author
\from argument by means of \from tags: for example,
\author{A.~Bab\‘a\from{ins:gen}} \atque Mr. Albatros\from{ins:air}
\instlist{\inst{ins:gen} Genius Lamp,
1001 Sesamo str. - The Cave
\inst{ins:air} Main Stream - Troposphere}
will produce something like
A. Babà(1 ) and Mr. Albatros(2 )
(1 ) Genius Lamp, 1001 Sesamo str. - The Cave
(2 ) Main Stream - Troposphere
The \instlist may appear anywhere before \maketitle (it usually goes after
the \author); anyway, it will be printed right below the authors.
Actually, the \instlist construction admits a second syntax, to be used when
there is no need of marks to refer to institutes (this is true, for example, when there
is but one author, or when all the authors are affiliated to the same institute(s)).
In practice, this secondary syntax is characterized by the absence of \froms in
the \author declaration. When this is the case, you just have to omit the label
argument from all the \insts, so that the syntax of the argument for \instlist
becomes
insts := \inst institute-description-1
\inst institute-description-2
...
\inst institute-description-n
8
Mathematics. seceqno is a class option that makes your equations numbered
within the sections (e.g. (1.1), (1.2), . . . , (2.1), etc.):
\documentclass[seceqno]{cimento}
(1a) x = y
(1b) y = z
(1c) z = x
Note that the first label (positioned before or “outside” of the rows) generates
a reference to the whole system (i.e., (\ref{eq.sys}) gives “(1)”), while the
next labels, one for each row, store reference information for the single rows
(i.e., (\ref{eq.sys.r1}), (\ref{eq.sys.r2}), (\ref{eq.sys.r3}) give, re-
spectively, “(1a)”, “(1b)” and “(1c)”). The labels, if present, must be in the right
position: the general label right after the \begin{eqnletter}; the row labels in
the third column of each row: after the second & and before the \\.
Citations. Citations like \cite{b:3-b:6}, which should produce ‘[3-6]’, are not
permitted by standard LATEX; however, there is a package which extends the func-
tionality of the \cite command to permit such citations. The package is named
cite.sty5 and is available in any CTAN mirror (for example, ftp.dante.de) in
the directory
/tex-archive/macros/latex/contrib/supported/cite/
4 By [email protected]
5 by [email protected]
9
(or, ask me and I will send it to you).
We strongly encourage its use, and there is an option [cite] for the cimento
class which automatically loads the package.
If you don’t want to install this package, please follow this rule: Don’t type
\cite{a}-cite{f}; type instead \cite{a,b,c,d,e,f}: you will get ‘[1,2,3,4,5,6]’,
we will get ‘[1-6]’ and everybody will be happy.
...preceding text
\appendix
\section*{}
appendix text follows...
...preceding text
\appendix
\section{}
appendix text follows...
• full header:
Appendix A.
ASCII character table
This is obtained this way:
...preceding text
\appendix
\section{ASCII character table}
follows the table...
Note that a \section*{} (first case above) does not get added to the table of
contents. This must be done manually with \addcontentsline as follows:
\addcontentsline{toc}{section}
{\protect\numberline{\normalfont\textsc{Appendix}}{}}
Note also that papers for Il Nuovo Cimento do not have any table of contents. . .
10
Note. Previously released versions of this file did not allow unnumbered sections
(\section*, \subsection* and \subsubsection*); now they are fully supported.
Tables. Since tables in Nuovo Cimento are always as large as the page, the
tabular tabular environment is redefined (in terms of tabular*. . . ) to span the whole
text width; if a different width is really needed, one has to resort to tabular* (but
such a table format will most probably be changed during proof-reading). Note
that tabular* is left unchanged.
However, if a table has only two or three columns and these are quite narrow
so that the table looks a bit too “spaced”, extra space should be allocated beside
the leftmost and rightmost column. Nevertheless, the width of the table in itself
should remain as large as the page so that, for example, the horizontal rules span
the whole page.
narrowtabular The narrowtabular environment does this. Its syntax is:
begin{narrowtabular}[pos]{colwidth}{cols}
where pos and cols are the ordinary tabular arguments and colwidth is an
extra mandatory argument that specifies the amount of horizontal space to be put
at the left of the leftmost column and at the right of the rightmost. colwidth
should be a TEX length (1cm, 2pc etc.).
@{extracolsep{\hfill};
(if you don;t know anything about @-expressions, please ignore this paragraph).
Unfortunately, this means that all @-tricks you should eventually insert would
end up by adding stretchable white space before the next column so that, in
particular, alignment of numbers to the decimal point with the r@{.}l construct
is impossible6 .
However, two characters are activated inside the tabular environment which
! should help you overcome any aligning difficulty: ! inserts an \hphantom with
? the width of a number; ?{} builds a phantom as large as what you type as an
argument. (To obtain a literal ‘!’ and a literal ‘?’, type, resp., \fact and \?.)
For those who did not ever care to learn what a phantom is, we give here a
practicle example of how to align numbers:
\begin{tabular}{lcl}
Spinaci & 3250?{.}!! & lire\\
Caramella & !!50?{.}!! & lire\\
X-Men & !!!1.25 & dollars\\
\end{tabular}
11
By the way, if you think you could make use of ! and ? in other contexts as
\phantoms well, you can gain access to them by declaring \phantoms in your code. There is
no \nophantoms available, so take care to include everything in a group, like this:
{\phantoms ...}.
Finally, please note that
• the tabular as here redefined is compatible with the array package and its
relatives, so that, for example, you can use dcolumn to align numbers to the
dot;
• as explained above, you can obtain weird effects if you try to put vertical
lines, @-expressions or other things between columns; however, no verti-
cal lines are admitted in the review tables, so this should not constitute a
problem for you.
after.
12
3.5 Additional macros
A few macros are defined that could be of some help in writing for Il Nuovo
Cimento.
\atque \atque expands to ‘and’ in lowercase normal type, even in different contexts,
such as small caps, bold, etc. Particularly useful in author and bibliography input.
NB: you don’t need to put a slash-space after this one (like this: \atque\ ); it’s
automatic. This is true only for this macro.
\etal In a similar way, \etal and \idest expand, respectively, to ‘et al.’ and ‘i.e.’.
\idest Another abbreviation: \drm gives an upright (roman) ‘d’ to be used for differ-
\drm entials: $\drm x$ gives dx. Math mode only.
\sy \sy{...} is a shorthand for \mathrm{...}; it is used inside equations to insert
letters which do not represent ‘variables’, but ‘names’ (e.g. rm , m = max, as
opposed to ri , the i-th r). Math mode only.
\tx \tx{...} is a shorthand for \mbox{...}; use it to insert words or sentences
inside an equation. Both math and paragraph mode.
\un \un{...} is a shorthand for \,\mbox{...}; used to typeset measure units:
120\un{GeV} gives 120 GeV. Both modes.
y = x2 + 2x + 1
= (x + 1)2
is reduced as in
y = x2 + 2x + 1
= (x + 1)2
\footnotesize Font dimension. The \footnotesize command produces the same font size
\small of \small. The command to obtain the font size assigned by standard LATEX to
\smaller \footnotesize is \smaller.
13
4.1 Figures
There is up to now no particular facility for inserting figures in cimento documents;
you should instead make use of standard LATEX packages such as graphics or epsf
or epsfig or the like. There are some guidelines you should adhere to to help us
grant a good printing quality—see below.
4.3 Varenna
The Italian Phisical Society publishes the volumes of proceedings of the Summer
School of Physics “Enrico Fermi” (“Varenna school” for short, from the village
where it takes place on the lake of Como).
The layout of the volumes is very similar to that of the journal Il Nuovo
Cimento; that’s why a LATEX class for the volumes is presently implemented as a
variation of the cimento class.
There is an option [varenna] which switches the class to the Varenna mode,
so that the first line of a Varenna paper becomes
\documentclass[varenna]{cimento}
Authors and institutes. The only relevant point in which the varenna mode
differs from the normal cimento mode is in the author/institute syntax.
In the cimento mode, you first list all the author, then all the institutes, using
\from/\inst tags to explicit the affilitations.
In varenna mode instead, you have to write all the couples of authors/corresponding-
institute one after the other, and no \from/\inst mechanism is necessary (nor is
it available!); so the preamble of a varenna document should look like this:
\documentclass[varenna]{cimento}
\title{Title of the paper}
\author{A. Author, B. Author \atque C. Author}
\institute{Institute of the First Three Authors}
\author{X. Author \atque Y. Author}
\institute{Institute of the Other Two Authors}
\begin{document}
14
Other differences.
• The command \ETC does not work when there is more than one \author.
\shortauthor If this is your case, you have to use \shortauthor . Do not use \ETC inside
\shortauthor.
• There is no abstract in Varenna volumes, so don’t use the abstract
abstract environment.
• Something else. . . ?
5 Contacting
Feedback of any kind is greatly appreciated, indeed. If you have any
• question,
• bug report,
• hint,
• anything else
about this package, or related to Il Nuovo Cimento and LATEX, please write to
[email protected].
For info about Il Nuovo Cimento in general, that is, not concerning this package
in particular (or LATEX), please write to [email protected].
La Società Italiana di Fisica is [email protected].
Finally, our web page is
www.sif.it.
That’s all.
6 A sample paper
Hereafter is included and commented a sample paper which is specifically meant
to stress all the peculiarities of the cimento class.
You can also extract it from the distribution file using the docstrip pro-
gram with option sample (if you use cimento.ins to unpack the distribution
(see sec. 1.2), this is done automatically). Once extracted, you can compile it
(latex cimsmple) and compare the output with the source code.
1 ∗sample
2 \documentclass{cimento}
15
The title below is short enough to fit into the running head; that’s why no \ETC
macro is used in it.
3 \title{Sample paper for the {\mdseries\ttfamily cimento} class}
The authors, on the contrary, are too many, so just a few (just one, this time) are
sent to the running head. Notice the comma after the \ETC in the first line.
4 \author{S.~Summers\from{ins:x}\ETC,
5 J.~Grey\from{ins:x},
6 H.~McCoy\from{ins:x},
7 R.~Drake\from{ins:x}\\
8 W.~Worthington\from{ins:x}
9 \atque
10 Mr.~M\from{ins:evil}\thanks{The bad fellow.}}
Also remark the \froms above, corresponding to \insts below.
11 \instlist{\inst{ins:x} Xavier’s school for gifted youngsters - Westchester,
12 N.Y.
13 \inst{ins:evil} The Brotherhood of Evil Mutants\-Russel Square,
14 London, UK}
PACSes are stored and typeset inside the abstract box.
15 \PACSes{\PACSit{00.00}{By the way, which PACS is it, the 00.00? GOK.}
16 \PACSit{---.---}{\ldots}}
Usage of the next commands is absolutely standard. Just notice the absence of
punctuation in section and subsection headings.
17 \begin{document}
18
19 \maketitle
20
21 \begin{abstract}
22 This sample paper is intended to briefly expose the differences
23 between a standard \LaTeX\ article and a paper based upon the
24 \texttt{cimento} class.
25 \end{abstract}
26
27 \section{Description}
28 This is a very short sample paper distributed with the class
29 \texttt{cimento}.
30 It is just a collection of examples about the syntax of commands
31 which behave in a different way from the standard \LaTeX
32 and/or new commands not defined in \LaTeX.
33
34 This sample is not meant to provide documentation for the class;
35 to obtain the class ‘manual’ typeset the main distribution file,
36 \texttt{cimento.dtx}.
37
38 You can also use this file as a template for your own paper:
39 copy it to another filename and then modify as needed.
40
41 \section{Examples}
42 \subsection{Tables}
43 Tables~\ref{tab:pricesI}, \ref{tab:pricesII} and~\ref{tab:pricesIII}
44 inserted at this point.
16
The tables below show the usage of phantoms to align numbers. Also notice the
absence of vertical and double horizontal lines.
45
46 \begin{table}
47 \caption{Prices of important items.}
48 \label{tab:pricesI}
49 \begin{tabular}{rcl}
50 \hline
51 Ice-cream & 1500 & lire \\
52 More ice-cream & 15000 & lire \\
53 Crocodile & 1500 & dollars \\
54 \hline
55 Phone call & .25 & dollars \\
56 X-Men & 1.25 & dollars \\
57 Dollar & 1 & dollars \\
58 \hline
59 \end{tabular}
60 \end{table}
61
62 \begin{table}
63 \caption{Same thing, but formatted using \texttt{!} and \texttt{?}.}
64 \label{tab:pricesII}
65 \begin{tabular}{rcl}
66 \hline
67 Ice-cream & !1500 & lire \\
68 More ice-cream & 15000 & lire \\
69 Crocodile & !1500 & dollars \\
70 \hline
71 Phone call & !.25 & dollars \\
72 X-Men & 1.25 & dollars \\
73 Dollar & 1?{.}!! & dollars \\
74 \hline
75 \end{tabular}
76 \end{table}
77
78 \begin{table}
79 \caption{Again, this time with \texttt{narrowtabular}}
80 \label{tab:pricesIII}
81 \begin{narrowtabular}{2cm}{rcl}
82 \hline
83 Ice-cream & !1500 & lire \\
84 More ice-cream & 15000 & lire \\
85 Crocodile & !1500 & dollars \\
86 \hline
87 Phone call & !.25 & dollars \\
88 X-Men & 1.25 & dollars \\
89 Dollar & 1?{.}!! & dollars \\
90 \hline
91 \end{narrowtabular}
92 \end{table}
93
There is also an example of lettered equations. Please notice the usage of roman
characters.
17
94
95 \subsection{Mathematics}
96 Here is a lettered array~(\ref{e.all}), with eqs.~(\ref{e.house})
97 and~(\ref{e.phi}):
98 \begin{eqnletter}
99 \label{e.all}
100 \drm x_\sy{F} & = & 1.2\cdot10^3\un{cm}, \qquad
101 \tx{where\ } \sy{F} = \tx{Fermi} \label{e.house}\\
102 \phi_i & = & i\pi \label{e.phi}
103 \end{eqnletter}
104
105 \subsection{Citations}
106 We’re almost done, just some citations~\cite{ref:apo}
107 and we will be over~\cite{ref:pul,ref:bra}.
108
References
[1] Leslie Lamport: LATEX: a document preparation system, 2nd ed.; Addison-
Wesley, Reading, Massachussets, 1994
18
[2] Michel Goosens, Frank Mittelbach and Alexander Samarin: The LATEX Com-
panion; Addison-Wesley, Reading, Massachussets, 1994
[3] AA.VV., LATEX 2ε for authors, document distributed with LATEX 2ε under the
file name usrguide.tex.
19