The local latex guide of Sophia Antipolis

Introduction

This is the start of a local guide for the users of latex, xdvi, dvips and related software. In case of trouble, you can

Documentation

Some books : Documentation available from your workstation, if you are are Sophia (mostly in French)

Software

Here is a list of some common software, with their version number. (SemirV4 june 2004) Same list, for teTeX3 (see section Fedora) feb 2006. Here is a list of some common softwares, with their version number. (june 2004) Here N/A means not available: the latex engine is pdf+e+tex, that is a bit more recent than other stuff.

This is a short help for each command distributed with the web2c7.2 distribution.

access afm2tfm,
bibtex,
dmp, dt2dv, dv2dt, dvibook, dviconcat, dvicopy, dvidvi, dvihp, dvilj4, dvips, dviselect, dvitodvi, dvitomp, dvitype,
einitex, elatex, etex, evirtex,
gftodvi, gftopk, gftype, gsftopk,
inimf, inimpost, iniomega, initex,
kpsestat, kpsewhich,
lacheck, lambda, latex,
mag, makeindex, makempx, mf, mft, mkindex, mkocp, mkofm, mktexlsr, mktexmf, mktexpk, mktextfm, mpost, mpto, musixflx,
newer,
odvicopy, odvips, odvitype, ofm2opl, omega, opl2ofm, otangle, otp2ocp, outocp, ovf2ovp, ovp2ovf, oxdvi,
patgen, pdfinitex, pdflatex, pdftex, pdfvirtex, pfb2pfa, pk2bm, pktogf, pktype, pltotf, pooltype, ps2pk,
readlink,
tangle, tex, tex4ht, tftopl, tie,
vftovp, virmf, virmpost, viromega, virtex, vptovf, weave, xdvi,

Other softs

Man pages should in under /usr/local/man. The official directory is however /usr/local/lib/texmf/man. They are updated for web2c7.2a

Not yet documented: epsffit extractres fixdlsrps fixfmps fixmacps fixpsditps fixpspps fixscribeps fixtpps fixwfwps fixwpps fixwwps getafm includeres psbook psmerge psnup psresize psselect pstops

See also: gs, ghostview and gv.

Using latex

Creating a LaTeX document

It is recommended to use you favorite text editor. In the case where it is Emacs, the auctex package is the one to chose. It suffices to put a line containing
    (require 'tex-site)
in your init file (.emacs or ~/.xemacs/init.el). You will see two menus: Commands and LaTeX (and sometimes a third, called Math) The first one allows tou to executes some commands (pdflatex, bibtex, etc, on the file).

Viewing the math in Emacs

If you put the following two lines in the ~/.xemacs/init.el file
   (require 'tex-site)
   (require 'preview)
then you get yet another menu, called Preview. You can say C-c C-p C-d, and all the maths fomulas are shown by their LaTeX equivalent. This needs xemacs-21.

Environment variables

There is a priori no need to set any variable. The author of this page once setted this :

VARTEXFONTS=$HOME/lib/tex/fonts

The use of the variable TEX_TMPFONTS is now obsolete.

Frequently asked questions

Summary

How to include an image in latex ?

Note that you can only include postscript images in latex, and pdf or png images into pdflatex. If you want to convert a unique latex source into both dvi (via latex) and pdf (via pdflatex), the best thing to do is to prepare two versions of your image, say image.ps and image.pdf, and include it with \includegraphics{image}. In this case, latex will chose the postscript version, and pdflatex will chose the pdf version.

There are several packages considered obsolete. For instance, psfig, epsfig, and epsf. There is one standard package graphics, and an extension of it, graphicx. There is no need to include these packages if your class is inriaslides or ra1999, or if you load the package RR.

We give here some examples of how to convert old syntax into new syntax.

Replace
\psfig{figure=resultats/seq16.ps,width=0.175\columnwidth}
with
\includegraphics[width=0.175\columnwidt]{resultats/seq16.ps}

Replace
\epsfig{figure=bonnaud/rec003.eps,width=0.45\textwidth}
wit/h
\includegraphics[width=0.45\textwidth]{bonnaud/rec003.eps}

Replace
\epsfig{file=gg.eps,width=12cm}
with
\includegraphics[width=12cm]{gg.eps}

Replace
\epsfxsize=6cm\epsfbox{p40roi10label.ps}
with
\includegraphics[width=6cm]{p40roi10label.ps}

Replace
\epsfxsize=3.6cm \epsffile{Fig/imageBradu.ps}
with
\includegraphics[wdith=3.6cm]{Fig/imageBradu.ps}

Pourquoi mes noms d'auteurs sont interprétés de travers par bibtex ? voir la description de bibtex

How to include source files into latex?

You can load the verbatim package, and use \verbatimfile{sourcefile.C}. You can also use the fancyvrb package (documentation in french can be found in cahier Gutenberg, 28-29, available at the library)

If you want a beautifier (keywords in bold), you can use the lgrind command.

How to generate pdf from latex?

Use pdflatex instead of latex. The following document meta2 is the ``rapport d'activité'' of the meta2 project. The only modifications we made to the source file is conversions from the old syntax of images inclusions to the new one ( see above). Images were converted from postscript into pdf via epstopdf. See also a research report.

Comment installer des fichiers de fontes PK sur les serveurs ? Réponse : envoyer par mail à l'auteur de cette page la commande utilisée pour générer la fonte (celle qui contient MakeTeXPK).

What is a type3 font and how to avoid it?

A Type1 font is a font defined by quadratic or cubic splines, while a Type3 font is defined by a bitmap. All TeX fonts designed by Knuth are defined by a Metafont program (that uses cubic splines) and converted into a pk file (packed bitmaps). Documents including these fonts will contain Type3 fonts after conversion into PostScript or Pdf. These fonts are badly rendered by Acrobat Reader on low resolution decives, like a compute screen.

You have the following possibilites

New Web2c version

All binaries use web2c version 7.3.1. Some binaries are compiled with a newer version (7.4.5).

Language support

(does this still work in 7.3.1?) TeX uses now the C function isprint, to check whether a character like ``é'' is printable. If it is not, it will output it as ``^^e9''. This is the default. If you like 8bit output, you can change the value of the LC_ALL environment variable. Set it to fr or iso_8859_1 on sun, to fr_FR.ISO8859-1 on Dec, to fr_FR on linux (Red Hat only).

[07-2003] It seems that Omega outputs ^^e9, other software é on linux and LC_ALL is needed on solaris.

You can also put this as the first line of the TeX file:
%& --translate-file=il1-t1.tcx
(some binaries say %&-line parsing enabled.) The tcx files are located in /usr/local/lib/texmf/web2c

Configuration files

All binaries in the distribution look at configuration files. These are searched in the current directory, and then in the default system directory. The name is texmf.cnf. The defaut configuration file /usr/local/lib/texmf/web2c/texmf.cnf shows all the variables used by web2c.

You can have a local texmf.cnf file, and overriding any variables in it. For instance, if you need a huge tex, you can put the following lines in your texmf.cnf file.

Note: in the current version, for security reasons, the texmf.cnf file is not searched in the current directory by default. You must set a shell variable, via TEXMFCNF=.:, or something like that, in order for this to work.

Using kpsewhich, kpsexpand, kpsewpath

The command kpsepath takes an argument X, and shows the path used by TeX and related programs for type X. Example:
     grimm@medee$ HOMETEXMF=~/HTF kpsepath tfm
     .:/u/medee/0/miaou/grimm/HTF/fonts/tfm//:!!/usr/local/lib/texmf.local/fonts/tfm//
     :!!/usr/local/lib/texmf/fonts/tfm//:/var/tmp/texfonts/tfm//

This hows that the metric file are searched in the current directory, then in the HOMETEXMF directory, then in the texmf.local directory, and in the texmf directory, and finally in the /tmp directory. If !! preceeds a directory name the ls-R file must be created for this directioy (at Inria, the ls-R data base is update every day, a bit after 8pm).

You can use kpsewhich to find any files relevant to tex/mf/xdvi/dvips, etc. One new feature is that you can also use it to find the documentation. For instance
kpsewhich -format="TeX system documentation" ltnews13.dvi
gives you the path of the files ltnews13.dvi and
dvips $(kpsewhich -format="TeX system documentation" ltnews13.dvi) prints the ps file associated with it (ltnews13 explains what's new in the June 2000 release of LaTeX, and the the next latex version should be in June 2001).

Changes in the 2001 release

Since the french style (by B. Gaulle) is now a shareware, the current distribution does not contain the file french.sty, and the latex format is made without it.

You can replace \usepackage{french} by one of
\usepackage{frenchle} or
\usepackage[french]{babel} or
\usepackage[frenchb]{babel}.
In the first two cases, this will use the freeware version of the french style, otherwise, it will use the babel version (by D. Flipo).

Under /usr/local/lib/texmf, there is a standard latex distribution. All files not on the TeXLive5 are now in /usr/local/lib/texmf.local. There is no need to change the environment variables, since texmf.local is searched by tex, latex, etc, as well as texmf.

Font encoding

The defaut font encoding is OT1 (7bit characters). If you want 8bit input and the same behaviour you must add these lines in the TeX file
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}

At least one of the previous lines is needed. Otherwise, you will get one of the following lines in the log file (but not on the terminal)
Missing character: There is no ^^e9 in font cmr12
Missing character: There is no é in font cmr12!

You may also see guillemets when you enter << test >> , where you expect this: « test ». (in this case, no message is generated)

You will get an error message when trying to use one of these symbols \k, \DH, \DJ, \NG, \TH, \dh, \dj, \th,\guillemotleft, \guillemotright \guilsinglleft, \guilsinglleft, \guilsinglright, \quotedblbase, \quotesinglbase, \textquotedbl . Using T1 encoding, you should get the following: somechars.

The inriaslides.cls package uses T1 encoding, and the RR.sty package uses T1 encoding by default (unless you call it via pdflatex). Both these packages load the inputenc package.

French related stuff

In order to translate something like \^\i to upper case, the french style defined \I to be equivalent to I. This is no longer the case.

The french style redefines commas in math mode. You can say \regularmathcomma in order to undo this. regularmath

Other commands defined by the french style that do not work: \noabbreviations \abbreviations \frhyphex \rightguillemets \leftguillemets \degre \guillemets, \endguillemets \primo, \secundo, \tertio, \quarto, \quando \numero \Numero \numeros \Numeros \degre \degres \fup \ieme \iemes \ier \iers \iere \ieres \fsc \lsc

Some others: \untypedspaces \originalinput \drapeau???, \ttyhyphenation, \nottyhyphenation, \allowfulluchyph, \allowuchyph, \disallowuchyph, \sommaire, \tocreduite \annexe, \annexes, \glossaire, \glossaires .

Some commands were redefined by the french style in order to work outside math mode. For instance : \tilde \vert \backslash .

Following definitions were in french.sty :
\def\noresetatpart{\let\cl@part\empty}

And more \printindex (use the makeidx package for this one) Related to this one: \see \nosee \seealso \subsee

This does not work: 5$^{\grave{e}me}$. why ? (you should use 5\textsuperscript{e} instead).

Other

Fonts generated by the mktex* shell scripts are put in /var/tmp/texfonts, unless you set the variable VARTEXFONTS.

The new xdvi calls an html browser (netscape by default) in case where the input file is not a dvi file. Thus `xdvi foo.tex' is unlikely to works. However `xdvi $PWD/manual.html' works well.

Makeindex Where are its ist files?

In the previous version, a lot of ist files (files used by makeindex) were under texmf/tex/ist. Standard ist files are now under texmf/makeindex, which is the place looked at by makeindex. However lots of ist files come with latex packages hence are somewhere under texmf/tex/latex. You can get these files without an absolute pathname, using the following:
INDEXSTYLE=:\$TEXMF/tex/latex// makeindex -s circ.ist indexfile
(note the backslash before the dollar sign).

The Fedora version

Introduction

Fedora Core3 comes with teTeX 2.0. This is a bit obsolete. Typically, you will see

grimm@moderell$  pdflatex                        
This is pdfTeX, Version 3.14159-1.10b (Web2C 7.4.5)
**\relax
{/usr/share/texmf/pdftex/config/pdftex.cfg}
LaTeX2e <2001/06/01>
Babel  and hyphenation patterns for american, french, german, 
ngerman, nohyphenation, loaded.
On the ftp server ftp://ftp-sop.inria.fr/apics/latex you will find a tar ball tetex.tar.gz containing a compiled version of teTeX3.0. To install, cd to the root, uncompress and untar. This will put everything under /usr/local/teTeX/ instead of /usr/share/texmf/. Binaries are in /usr/local/teTeX/bin/i686-pc-linux-gnu instead of /usr/bin, so that you have to update your path in order to use it. Now, you will see something like this
grimm@medee$ pdflatex      
This is pdfeTeX, Version 3.141592-1.30.3-2.2 (Web2C 7.5.5)
**\relax
entering extended mode
LaTeX2e <2003/12/01>
Babel  and hyphenation patterns for american, french, german, ngerman, 
bahasa, basque, bulgarian, catalan, croatian, czech, danish, dutch, esperanto,
estonian, finnish, greek, icelandic, irish, italian, latin, magyar, norsk, 
polish, portuges, romanian, russian, serbian, slovak, slovene, spanish, 
swedish, turkish, ukrainian, nohyphenation, loaded.

The main texmf tree is /usr/local/teTeX/share/texmf-dist. All packages should be installed under /usr/local/teTeX/share/texmf. Some rpms download stuff into a local texmf tree. In order to be compatible with teTeX2 and teTeX3, do the following:

mkdir /usr/local/share/texmf
cd /usr/local/teTeX/share/
ln -s /usr/local/share/texmf texmf-local

Available packages

We assume here TEXMF=/usr/local/teTeX/share/texmf. and LOCALTEXMF=/usr/local/share/texmf. On the ftp server ftp://ftp-sop.inria.fr/apics/latex you can find the following. $Date: 2006/03/23 18:24:58 $