Le fichier Latex2tex contient un certain nombre de définitions de macros donnant une compatibilité avec LaTeX : ainsi les commandes usuelles comme \begin, \end, \small, \em, \mbox, etc. sont définies de manière cohérentes avec leur sens en LaTeX (ainsi que quelques commandes de AMSTeX, comme \Bbb). Cela permet donc de les utiliser dans un texte prévu essentiellement pour plain-TeX, et notamment de mélanger des commandes TeX et LaTeX : très pratique en combinaison avec le couper-coller de différents documents !
Un exemple typique d'utilisation de Latex2tex est son usage dans la base de données d'exercices de mathématiques créée dans notre laboratoire, en collaboration avec Stéphane Cordier. J'ai aussi utilisé Latex2tex pour faire un style de notes C.R.A.S.
Pour utiliser Latex2tex, il suffit de rapatrier le fichier et de placer la commande
\input Latex2tex
dans votre texte. Dès ce moment, en plus des commandes TeX de plain, les commandes LaTeX énumérées ci-après deviennent utilisables, approximativement comme dans LaTeX (voyez un manuel de LaTeX pour des informations sur leur signification).
Vous pouvez vous contenter d'utiliser une partie seulement de ces commandes en ajoutant
\let \smallversion\wlog
avant la commande \input précédente. Dans ce cas, les commandes n'ayant de sens que dans un document complet (comme \begin{document} ou \tableofcontents par exemple) ne sont plus définies ou provoquent un message dirigé par la macro \smallversion elle-même (dans notre cas, \wlog provoque son affichage dans le fichier de rapport).
LaTeX2tex est bien plus simple que LaTeX. En particulier les commandes de fontes sont simplifiées, les fichiers annexes (.aux), de style (.sty), etc. ne sont pas utilisés. (De ce fait les références croisées ne peuvent fonctionner que pour des références ultérieures dans le même texte.)L2Tfonts. Si ce fichier existe et est accessible, il est chargé. Vous pouvez notamment y placer des commandes de préchargement de certaines fontes, si vous les avez, comme par exemple cmti7 (sinon Latex2tex utilisera cmti10 at 7pt en cas de besoin, ce qui est moins esthétique). Un exemple de tel fichier peut être chargé ici, il est librement modifiable. Dans cet exemple, un deuxième fichier defBbb est à son tour chargé (s'il existe), qui définit la commande \Bbb avec les vrais caractères éclairés msbm10 ; vous devez cependant posséder cette fonte pour un fonctionnement correct.Latex2tex ; par exemple, on peut accorder \begin{document} avec \end{description}, ou ne pas utiliser le même nombre de commandes \begin que \end. La commande \newcommand est similaire à \renewcommand (pas de vérification que la commande existe, etc.)\input ou \sqrt sont utilisées par LaTeX avec une syntaxe différente de celle de plain-TeX. Autant que possible, on a conservé la compatibilité avec les deux syntaxes, mais cela peut parfois poser des problèmes.LaTeX2tex. Dans ce cas un avertissement vous le signale dans le fichier de rapport.LaTeX2tex :Les chiffres entre parenthèses ci-après renvoient aux notes.
% counters :
equation, enumi, enumii, enumiii, enumiv
% dimensions :
\textwidth, \textheight,
\arraycolsep (=5pt), \doublerulesep (=2pt)
\footskip (1), \topmargin (1), \headheight (1), \headsep (1),
\oddsidemargin (1), \evensidemargin (1), \marginparwidth (1),
\marginparsep (1), \pageheight (1), \pagewidth (1)
\leftmargin, \rightmargin, \parsep, \labelsep
% environments :
document (*), sloppypar,
displaymath, equation, eqnarray, eqnarray*
center, quote, quotation, verse
enumerate, itemize, description
array, tabular, verbatim (*)
% general purpose
\begin{...} \end{...}
\protect (1), \renewcommand, \newcommand (2)
\input (4)
\LaTeX, \LaTeXe, \NeedsTeXFormat (1),
\makeatletter, \makeatother
% counters
\newcounter, \value, \setcounter, \addtocounter, \stepcounter
\arabic, \roman, \Roman, \alph, \Alph, \fnsymbol
% type style, sizes
\em, \emph
\sf, \sc, \normalfont
\rmfamily, \ttfamily, \sffamily, \bfseries,
\upshape, \itshape, \slshape, \scshape, \mdseries,
\textrm, \textmd, \textnormal, \textit, \textbf,
\textsl, \texttt, \textsf, \textsc, \textup,
\mathrm, \mathit, \mathbf, \mathsl, \mathtt, \mathsf, \mathcal
\symbol
\normalsize, \small, \footnotesize, \scriptsize, \tiny,
\large, \Large, \LARGE, \huge, \Huge
% sectionning
\part (1*), \appendix (1*), \chapter (3*), \section (3),
\subsection (3), \subsubsection (3), \paragraph (3), \subparagraph (3)
% mathematical formulas
\(, \), \[, \]
\nonumber
\frac, \sqrt (4)
% lists
\item
% document class, title, etc.
\maketitle (1*), \tableofcontents (1*),
\documentclass (1*), \documentstyle (1*), \usepackage (1*),
\pagestyle (1*), \pagenumbering (1*),
\title (1*), \author (1*), \date (1*), \thanks (1*),
% cross references
\label (2), \ref, \refstepcounter
% bibliography, citation
\cite (1), \thebibliography (1*)
% line and page breaking
\linebreak, \nolinebreak, \newline, \\,
\sloppy, \fussy
\pagebreak (*), \newpage (*), \clearpage (*)
% boxes
\mbox, \makebox, \framebox, \fbox, \parbox
% spaces
\hspace, \@
% arrays
\hline, \vline
% verbatim
\verb (*)
% compatibility with amstex
\Bbb, \boldsymbol, \frak, \text
Notes :
(1) Command ignorée (sans effet).
(2) Aucune vérification.
(3) Pas de numérotation.
(4) Peut être utilisé aussi avec la syntaxe de plain-TeX.
(*) Seulement en version complète.
En cas de problème avec ces macros, n'hésitez pas à m'envoyer un email.
Programme créé par Thomas Lachand-Robert.
Dernière mise à jour : le 30 novembre 1996. T. L. R.