summaryrefslogtreecommitdiff
path: root/info/latex4wp
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /info/latex4wp
Initial commit
Diffstat (limited to 'info/latex4wp')
-rw-r--r--info/latex4wp/HOW-TO-TYPESET23
-rw-r--r--info/latex4wp/README6
-rw-r--r--info/latex4wp/dat2tex.sh28
-rw-r--r--info/latex4wp/exa.sty118
-rw-r--r--info/latex4wp/gnuplot.gp14
-rw-r--r--info/latex4wp/gnuplot.pdfbin0 -> 47724 bytes
-rw-r--r--info/latex4wp/inkscape-tb.pngbin0 -> 19507 bytes
-rw-r--r--info/latex4wp/inkscape.pngbin0 -> 80642 bytes
-rw-r--r--info/latex4wp/latex4wp.pdfbin0 -> 647140 bytes
-rw-r--r--info/latex4wp/latex4wp.tex3339
-rw-r--r--info/latex4wp/midifile.midbin0 -> 6766 bytes
-rw-r--r--info/latex4wp/tbx.eps840
-rw-r--r--info/latex4wp/tbx.pdfbin0 -> 7277 bytes
-rw-r--r--info/latex4wp/tbx.tex18
14 files changed, 4386 insertions, 0 deletions
diff --git a/info/latex4wp/HOW-TO-TYPESET b/info/latex4wp/HOW-TO-TYPESET
new file mode 100644
index 0000000000..630377d332
--- /dev/null
+++ b/info/latex4wp/HOW-TO-TYPESET
@@ -0,0 +1,23 @@
+How to typeset this guide
+-------------------------
+
+Please note that some LaTeX packages may be missing from your default
+configuration. To include them, do the following (Linux/Unix):
+
+- download the missing package from the CTAN. For instance, let's
+suppose you don't have slashbox.sty; you'll get it from
+http://www.ctan.org/tex-archive/macros/latex/contrib/slashbox
+
+- run these commands:
+
+$ mkdir -p ~/texmf/tex/latex/slashbox
+$ cp slashbox.sty ~/texmf/tex/latex/slashbox
+$ texhash ~/texmf
+
+- repeat the above steps for each missing package
+
+- typeset the guide with pdflatex:
+
+$ pdflatex latex4wp.tex; pdflatex latex4wp.tex; pdflatex latex4wp.tex
+
+Enjoy!
diff --git a/info/latex4wp/README b/info/latex4wp/README
new file mode 100644
index 0000000000..618ab4e9c7
--- /dev/null
+++ b/info/latex4wp/README
@@ -0,0 +1,6 @@
+LaTeX4WP: A LaTeX guide specifically designed for word processor
+users.
+
+"LaTeX for Word Processor Users" is a guide that helps converting
+knowledge and techniques of word processing into the LaTeX typesetting
+environment. It aims at helping WP users use LaTeX instead.
diff --git a/info/latex4wp/dat2tex.sh b/info/latex4wp/dat2tex.sh
new file mode 100644
index 0000000000..f7378a5197
--- /dev/null
+++ b/info/latex4wp/dat2tex.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+# dat2tex: converts tabular data to a tabular environment
+
+if [ $# != 1 ]; then
+ echo "Usage: $0 <datafile>"
+ exit 1
+fi
+
+# is this a cvs file?
+grep ";" $1 > /dev/null
+if [ $? = 0 ]; then
+ AWK="awk -F;"
+else
+ AWK=awk
+fi
+
+# ok awk, make my day
+$AWK '{if (1 == FNR) { \
+ printf "\\begin\{tabular\}\{"; \
+ for (i = 1; i <= NF; i++) {printf "l"}; \
+ printf "\}\n"
+ }
+ for (i = 1; i < NF; i++) \
+ {printf $i" & "} printf $NF" \\\\ \n"} \
+ END {printf "\\end\{tabular\}\n"}' $1
+
+# end of dat2tex
diff --git a/info/latex4wp/exa.sty b/info/latex4wp/exa.sty
new file mode 100644
index 0000000000..1e1cbe5e65
--- /dev/null
+++ b/info/latex4wp/exa.sty
@@ -0,0 +1,118 @@
+% exa.sty
+% modified after example.sty by J.Schrod, xitijsch@ddathd21.bitnet
+% Guido Gonzato, guido.gonzato@univr.it
+
+\chardef\escape=0
+\chardef\open=1
+\chardef\close=2
+\chardef\letter=11
+\chardef\other=12
+%\chardef\active=13 % is defined in Plain already
+
+\chardef\uscode=\catcode`\_ % top level macro file!
+
+\catcode`\_=\letter
+
+\oddsidemargin=0pt
+\evensidemargin=\oddsidemargin
+
+\newwrite\example_file
+\def\example_name{\jobname.tmp } % <-- space!
+
+\newdimen\ExampleWidth
+ \ExampleWidth=\textwidth
+ \advance\ExampleWidth by \marginparwidth % stick into margins
+ \advance\ExampleWidth by \columnsep % between columns
+ \divide\ExampleWidth by 2
+
+\def\ExampleSet{%
+ \begin{boxedminipage}[c]{0.5\textwidth}%
+ \hrule height\z@
+ \def\markboth##1##2{}%
+ \def\markright##1{}%
+ \def\addcontentsline##1##2##3{}%
+ \input \example_name
+ \par
+ \hrule height\z@
+ \end{boxedminipage}%
+ }
+
+\begingroup
+ \catcode`\^^I=\active
+ \gdef\@vobeytabs{\catcode`\^^I\active \let^^I\@xobeytab}
+ \global\let^^I=\@xobeytab% % for \write's
+\endgroup
+\def\@xobeytab{\space\space\space\space\space\space\space\space}
+
+\def\ExampleVerb{%
+ \begin{minipage}[c]{0.5\textwidth}%
+ \hrule height\z@
+ \begingroup
+ \small
+ \parindent\z@
+ \rightskip\@flushglue
+ \@makeother\"\@verbatim
+ \frenchspacing \@vobeyspaces \@vobeytabs
+ \input \example_name
+ \endverbatim
+ \endgroup
+ %\hrule height\z@
+ \end{minipage}%
+ }
+
+\def\example{
+ \par
+ \immediate\openout\example_file\example_name
+ \begingroup
+ \@makeother\"\let\do\@makeother \dospecials
+ \obeylines \obeyspaces
+ \@ignoretrue \copy_line
+ }
+
+\begingroup
+ \catcode`\|=\escape % | is temporary escape character
+ \catcode`\[=\open % [ and ] are temporary grouping symbols
+ \catcode`\]=\close
+ \catcode`\{=\other % these are `other' in verbatim mode
+ \catcode`\}=\other
+ \catcode`\\=|other
+ |gdef|end_of_example[\end{example}]
+|endgroup
+
+\begingroup
+ \obeylines \gdef\copy_line#1^^M{\write_line{#1}}%
+\endgroup
+
+\def\write_line#1{%
+ \def\Next{#1}%
+ \ifx \Next\end_of_example
+ \def\Next{\end{example}}% % finish example
+ \else
+ \ifx \Next\empty
+ \if@ignore % ignore empty lines at the beginning
+ \else % but write them out later
+ \immediate\write\example_file{\Next}%
+ \fi
+ \else
+ \immediate\write\example_file{\Next}%
+ \@ignorefalse % at least one non-empty line written
+ \fi
+ \let\Next\copy_line % next line of example
+ \fi
+ \Next
+ }
+
+\def\endexample{%
+ \endgroup
+ \immediate\closeout\example_file
+ \penalty \predisplaypenalty
+ \vskip \abovedisplayskip
+ % \leftline{\ExampleVerb \hskip\columnsep \ExampleSet}%
+ \leftline{\ExampleVerb \hfill \ExampleSet}%
+ \penalty \postdisplaypenalty
+ \vskip \belowdisplayskip
+ }
+
+\catcode`\_=\uscode
+
+\endinput
diff --git a/info/latex4wp/gnuplot.gp b/info/latex4wp/gnuplot.gp
new file mode 100644
index 0000000000..d7e8c0299c
--- /dev/null
+++ b/info/latex4wp/gnuplot.gp
@@ -0,0 +1,14 @@
+gnuplot> set hidden
+gnuplot> set isosam 50
+gnuplot> splot sin(x*x + y*y)/(x*x + y*y)
+gnuplot> splot [-3:3] [-3:3] sin(x*x + y*y)/(x*x + y*y)
+gnuplot> splot [-4:4] [-4:4] sin(x*x + y*y)/(x*x + y*y)
+gnuplot> set title "Gnuplot 3D graph"
+gnuplot> replot
+gnuplot> set grid
+gnuplot> replot
+gnuplot> set xlabel
+gnuplot> set xlabel "X"
+gnuplot> set ylabel "Y"
+gnuplot> set zlabel "Z"
+gnuplot> replot
diff --git a/info/latex4wp/gnuplot.pdf b/info/latex4wp/gnuplot.pdf
new file mode 100644
index 0000000000..3695056958
--- /dev/null
+++ b/info/latex4wp/gnuplot.pdf
Binary files differ
diff --git a/info/latex4wp/inkscape-tb.png b/info/latex4wp/inkscape-tb.png
new file mode 100644
index 0000000000..9374455bb4
--- /dev/null
+++ b/info/latex4wp/inkscape-tb.png
Binary files differ
diff --git a/info/latex4wp/inkscape.png b/info/latex4wp/inkscape.png
new file mode 100644
index 0000000000..e2262d439e
--- /dev/null
+++ b/info/latex4wp/inkscape.png
Binary files differ
diff --git a/info/latex4wp/latex4wp.pdf b/info/latex4wp/latex4wp.pdf
new file mode 100644
index 0000000000..6927036054
--- /dev/null
+++ b/info/latex4wp/latex4wp.pdf
Binary files differ
diff --git a/info/latex4wp/latex4wp.tex b/info/latex4wp/latex4wp.tex
new file mode 100644
index 0000000000..503962e14f
--- /dev/null
+++ b/info/latex4wp/latex4wp.tex
@@ -0,0 +1,3339 @@
+% latex4wp.tex -*- LaTeX -*-
+%
+% LaTeX for Word Processor Users
+% by Guido Gonzato, guido.gonzato (at) gmail.com
+%
+% This document was written with the Jed editor,
+% http://www.jedsoft.org/jed, and the new LaTeX mode
+% available from CTAN mirrors, e.g.
+% http://www.ctan.org/tex-archive/support/jed
+%
+% Last updated: January 7, 2015
+
+% debug
+% \overfullrule=15pt
+
+\documentclass[a4paper,11pt]{article}
+\usepackage[margin=3cm]{geometry}
+\usepackage{color} % coloured stuff
+\usepackage{ifpdf} % ps/pdf output
+\ifpdf
+ \usepackage[pdftex]{graphicx}
+ \pdfcompresslevel=9
+\else
+ \usepackage{graphicx}
+\fi
+\usepackage{alltt} % like verbatim, but obeys LaTeX commands
+\usepackage{dcolumn} % aligning numbers to digital position
+\usepackage{url} % urls and links
+\usepackage{colortbl} % colour tables
+\usepackage{pifont} % dinglist
+\usepackage{fancyvrb} % fancy verbatim
+\usepackage{boxedminipage} % what it says
+\usepackage{framed} % frames around stuff
+\usepackage{rotating} % rotate stuff
+\usepackage[colorlinks,
+ urlcolor=blue,
+ filecolor=magenta,
+ linkcolor=darkred,
+ hyperfootnotes=false]{hyperref} % browseable links
+% \usepackage{fancyhdr} % fancy headers and footers
+\usepackage{marvosym} % Euro sign and other nice characters
+\usepackage[gen]{eurosym} % Euro sign
+\usepackage{mflogo} % Metafont logo
+\usepackage{setspace} % custom line spacing
+\usepackage{tabularx} % extended tabular environment
+\usepackage{exa} % local package for typesetting LaTeX examples
+\usepackage{enumerate} % optional args for enumerate environment
+\usepackage{wrapfig} % wrapping text around figures
+\usepackage[normalem]{ulem} % underline styles - !!! NOT IN MINT
+\usepackage{slashbox} % slashed box in tables - !!! NOT IN MINT
+\usepackage{paralist} % paragraph lists
+\usepackage[version=3]{mhchem} % chemical formulae - !!! NOT IN MINT
+\usepackage{lettrine} % dropped capitals
+
+\urlstyle{same} % urls in default font
+
+% --- Definitions and new commands ---
+
+\def\version {1.0.10}
+\def\bs {\textbackslash}
+\def\unix {\textsc{Unix}}
+% \def\warning {\marginpar{\Huge{\textcolor{red}{\Stopsign}}}}
+\def\note {\marginpar{\Huge{\textcolor{magenta}{\Writinghand}}}}
+\def\PS {\textsc{PostScript}}
+\definecolor {darkred}{rgb}{0.75,0,0}
+
+\hyphenation{lo-cal-tex-mf land-sca-pe}
+
+\newcounter{fnsym}
+\setcounter{fnsym}{1}
+%\newcounter{tmpbaselineskip}
+%\setlength{tmpbaselineskip}{\value{\baselineskip}}
+
+\newenvironment{margins}[2]
+{
+ \begin{list}{} {
+ \setlength{\leftmargin}{#1}
+ \setlength{\rightmargin}{#2}
+ } \item }
+{\end{list}}
+
+\newenvironment{warn}
+{ % beg def
+ \medskip
+ \begin{minipage}[t]{0.1\linewidth}
+ \vspace{0pt}
+ \textcolor{magenta}{\Huge{\Pointinghand}}
+ \end{minipage}%
+ \begin{minipage}[t]{0.88\textwidth}
+ \vspace{0pt}
+ \begin{small}
+ \begin{spacing}{0.97}
+}
+{ % end def
+ \end{spacing}
+ \end{small}
+ \end{minipage}
+ \medskip
+}
+
+\newcommand{\package}[1]
+{\textsf{#1}}
+
+\newcommand{\parm}[1]
+{\texttt{#1}}
+
+\newcommand{\cmdparm}[1]
+{\textit{#1}}
+
+\newcommand{\env}[1]
+{\texttt{#1}}
+
+\newcommand{\cmd}[1]
+{\texttt{\bs{}#1}}
+
+\newcommand{\cmdline}[1]
+{\texttt{#1}}
+
+\newcommand{\menu}[1]
+{\textsf{#1}}
+
+\newcommand{\entry}[2]
+{\textsf{#1/#2}}
+
+\newcommand{\app}[1]
+{\texttt{#1}}
+
+\newcommand{\file}[1]
+{\texttt{#1}}
+
+\newcommand{\style}[1]
+{\texttt{#1}}
+
+\newcommand{\ltx}[1]
+{\texttt{#1}}
+
+% --- end of definitions and new commands ---
+% ok, let's start
+
+\begin{document}
+
+\pagenumbering{roman}
+\setlength{\parindent}{0pt}
+\setlength{\parskip}{3pt}
+
+\title{\LaTeX{} for Word Processor Users\\version \version}
+
+\author{Guido Gonzato, Ph.D.\\
+\texttt{guido.gonzato@gmail.com}}
+
+% I want to use the dagger sign as footnote symbol
+\renewcommand{\thefootnote}{\fnsymbol{footnote}}
+\setcounter{footnote}{2}
+
+\date{\today}
+
+% let's put things back to normal
+\renewcommand{\thefootnote}{\arabic{footnote}}
+\setcounter{footnote}{1}
+
+\maketitle
+
+\begin{abstract}
+
+ Text processing with \LaTeX{} offers several advantages over word
+ processing. However, beginners may find it hard to figure out how to
+ perform common tasks and obtain certain features. This manual
+ attempts to ease the transition by drawing comparisons between word
+ processing and \LaTeX{} typesetting. The main word processor
+ capabilities are listed, along with their equivalent \LaTeX{}
+ commands. Many examples are provided.
+
+\end{abstract}
+
+\begin{footnotesize}
+ \tableofcontents
+ \listoftables
+ \listoffigures
+\end{footnotesize}
+
+% INTRODUCTION
+
+% \pagestyle{fancy}
+\pagenumbering{arabic}
+
+\section{Introduction}
+
+First of all, let me state that this is \emph{not} a \LaTeX{} primer!
+If you're reading this document, I assume that you have at least a
+basic understanding of \LaTeX{} and of its basic commands. In this
+guide, I'll explain how to replace a word processor effectively using
+\LaTeX.
+
+Word processors are the `killer app' in modern office automation.
+They're perceived to be easier than \LaTeX{} as they have a friendly
+WYSIWYG interface, and the average secretary will learn to use them in
+a relatively short time. The problem is, these beasts keep growing
+slow, bloated,\footnote{once upon a time, I wrote my thesis on a 128k
+RAM, Z80-based home computer. The word processor WordStar and my
+thesis fit on a single CP/M-bootable 720K floppy, with lots of room to
+spare!} buggy, crash-prone, expensive, virus ridden, and incompatible
+with each other. Not to talk about their default output quality.
+
+\LaTeX{} is an excellent alternative (in some cases, it is the
+\emph{only} viable alternative); but it's not much intuitive for those
+accustomed to WYSIWYG.
+
+To sum up, sometimes you may want to use word processor-like
+features---but using \LaTeX. It would be nice to know how to obtain
+some effects with \LaTeX{} when you know how to get them with your
+once-favourite \texttt{:-)} word processor.
+
+That's why I wrote this quick reference. As I said, it assumes some
+basic \LaTeX{} knowledge; if it's not the case, I suggest that you go
+to \url{http://www.ctan.org/starter.html} and download
+\href{http://www.ctan.org/tex-archive/info/lshort/}{The (Not So) Short
+Introduction to \LaTeX2e{}}. Another good primer is
+\url{http://en.wikibooks.org/wiki/LaTeX/}.
+
+In the following sections, we shall navigate through the menus and
+menu items of an imaginary word processor, finding out the
+corresponding \LaTeX{} way of doing the same work.
+
+% -----
+
+% WP WITH LATEX
+
+\subsection{Preliminaries}
+
+Many word processor features are implemented by the editor; others by
+standard \LaTeX{} commands; others still are obtained using
+\emph{packages}. These are sets of macros that extend \LaTeX{}
+providing new commands and environments. There are lots of packages
+around: the only problem is knowing where they are, what they do, and
+how to install them. More about packages in
+Section~\ref{sec:packages}.
+
+Packages and other \TeX{}-related material are available at many sites
+that constitute the CTAN: the Comprehensive TeX Archive Network. I
+already mentioned \url{http://www.ctan.org}; this site has a wide list
+of mirrors. From now on, \href{http://www.ctan.org}{CTAN:} means `your
+favourite CTAN mirror here, starting from the \TeX{} directory'. For
+instance, you can get \LaTeX{} for your platform from
+\href{http://www.tex.ac.uk/tex-archive/systems}{CTAN://systems} (e.g.,
+\url{http://www.tex.ac.uk/tex-archive/systems/}).
+
+To write your documents, you will need a good text editor. A better
+choice for beginners is a \emph{\LaTeX{} IDE}: an editor dedicated
+to writing \LaTeX{} source, with preview and many facilities.
+
+I suggest that you install one of the programs listed below; all of
+them are Free/Open Source software.
+
+\begin{itemize}
+
+ \item Texmaker (multiplatform):\\
+ \url{http://www.xm1math.net/texmaker/index.html}
+
+ \item TeXstudio (multiplatform):\\
+ \url{http://texstudio.sourceforge.net/}
+
+ \item TeXworks (multiplatform):\\
+ \url{http://tug.org/texworks/}
+
+% \item LyX, an almost-WYSIWYG \LaTeX{} editor (multiplatform):\\
+% \url{http://www.lyx.org/}
+
+ \item TeXShop (Mac OS X):\\
+ \url{http://www.uoregon.edu/~koch/texshop/}
+
+ \item TeXnicCenter (Windows):\\
+ \url{http://www.texniccenter.org/}
+
+\end{itemize}
+
+Information about \LaTeX{} on the Mac can be found at
+\url{http://www.esm.psu.edu/mac-tex/}.
+
+% -----
+
+% EDITOR-SUPPORTED
+
+\subsubsection{Editor-Supported Features}
+
+\LaTeX{} is just a formatter: things like cut and paste, search and
+replace etc. are delegated to the editor. Table~\ref{tab:editing}
+summarises the main commands of popular editors for geeks: GNU
+\app{emacs} and \app{vim} with their native key bindings, and
+\app{jed} configured for Borland IDE key bindings.
+
+\begin{table}[htbp]
+\begin{center}
+\begin{tabular}{|lccc|} \hline
+\textbf{Action} & \textbf{Emacs} & \textbf{Vim} & \textbf{Jed} \\
+\hline
+command mode & \texttt{Alt-X} & \texttt{ESC} & \texttt{Alt-X} \\
+insert mode & n/a & \texttt{i a o O} & n/a \\
+line editor mode & n/a & \texttt{:} & n/a \\
+%\hline
+\multicolumn{4}{|c|}{\textit{\rule{0pt}{0.3cm}file operations}} \\
+%\hline
+open file & \texttt{Ctrl-X Ctrl-F} & \texttt{:e} & \texttt{Ctrl-KE}\\
+insert file & \texttt{Ctrl-Xi} & \texttt{:r} & \texttt{Ctrl-KR}\\
+save file & \texttt{Ctrl-X Ctrl-S} & \texttt{:w} & \texttt{Ctrl-KD}\\
+save as & \texttt{Ctrl-X Ctrl-W name} & \texttt{:w name} & \texttt{Ctrl-KS}\\
+close file & \texttt{Ctrl-XK} & \texttt{:q} & \texttt{Ctrl-KQ}\\
+change buffer & \texttt{Ctrl-XB} & \texttt{bN} & \texttt{Ctrl-KN}\\
+undo & \texttt{Ctrl-XU} & \texttt{u} & \texttt{Ctrl-U}\\
+redo & \texttt{Ctrl-\^} & \texttt{Ctrl-R} & \texttt{Ctrl-G Ctrl-U}\\
+exit & \texttt{Ctrl-X Ctrl-C} & \texttt{:qa!} & \texttt{Ctrl-KX}\\
+%\hline
+\multicolumn{4}{|c|}{\textit{\rule{0pt}{0.3cm}moving around}}\\
+%\hline
+word left & \texttt{Alt-B} & \texttt{b} & \texttt{Ctrl-A}\\
+word right & \texttt{Alt-F} & \texttt{w} & \texttt{Ctrl-F}\\
+start of line & \texttt{Ctrl-A} & \texttt{0} & \texttt{Ctrl-QS}\\
+end of line & \texttt{Ctrl-E} & \texttt{\$} & \texttt{Ctrl-QD}\\
+page up & \texttt{Alt-V} & \texttt{Ctrl-U} & \texttt{Ctrl-R}\\
+page down & \texttt{Ctrl-V} & \texttt{Ctrl-D} & \texttt{Ctrl-C}\\
+start of buffer & \texttt{Alt-<} & \texttt{1G} & \texttt{Ctrl-QR}\\
+end of buffer & \texttt{Alt->} & \texttt{G} & \texttt{Ctrl-QC}\\
+line n. & \texttt{Alt-G n.} & \texttt{n.G} & \texttt{Ctrl-QI}\\
+%\hline
+\multicolumn{4}{|c|}{\textit{\rule{0pt}{0.3cm}deleting}}\\
+%\hline
+character left & \texttt{Ctrl-H} & \texttt{X} & \texttt{BS}\\
+character right & \texttt{Ctrl-D} & \texttt{x} & \texttt{Alt-G}\\
+word left & \texttt{Alt-DEL} & \texttt{db} & \texttt{Alt-BS}\\
+word right & \texttt{Alt-D} & \texttt{dw} &\texttt{Ctrl-T} \\
+end of line & \texttt{Ctrl-K} & \texttt{d\$} & \texttt{Ctrl-QY} \\
+line & \texttt{Ctrl-A Ctrl-K} & \texttt{dd} & \texttt{Ctrl-Y} \\
+%\hline
+\multicolumn{4}{|c|}{\textit{\rule{0pt}{0.3cm}search \& replace}}\\
+%\hline
+search & \texttt{Ctrl-S text} & \texttt{/text} & \texttt{Ctrl-QS}\\
+replace & \texttt{Alt-\%} & \texttt{:s/old/new/g} & \texttt{Ctrl-QA}\\
+%\hline
+\multicolumn{4}{|c|}{\textit{\rule{0pt}{0.3cm}blocks}}\\
+%\hline
+start selection & \texttt{Ctrl-SPACE} & \texttt{v} & \texttt{Ctrl-KB} \\
+cut & \texttt{Ctrl-W} & \texttt{D} & \texttt{Ctrl-KY} \\
+copy & \texttt{Alt-W} & \texttt{Y} & \texttt{Ctrl-KH} \\
+paste & \texttt{Ctrl-Y} & \texttt{P} & \texttt{Ctrl-KC} \\
+\hline
+\end{tabular}
+\caption{Useful key bindings for Emacs, Vim, and Jed in IDE mode.}
+\label{tab:editing}
+\end{center}
+\end{table}
+
+% -----
+
+% ADDING PACKAGES
+
+\subsubsection{Adding Packages}
+\label{sec:packages}
+
+The following information applies to \app{TeX Live}, which ships with
+most GNU/Linux distributions. It may also work on MacTeX, but I have
+no first-hand experience. Instructions for MiK\TeX{} (probably the
+most popular implementation for Windows) will follow below.
+
+A large collection of \LaTeX{} packages is natively supported; for
+instance, Ubuntu provides lots of \app{texlive-*} packages. Please
+note the ambiguity: we're talking of \texttt{.deb} \emph{packages}
+containing \LaTeX{} \emph{packages}.
+
+If you need to install an unsupported package, do the following.
+
+\begin{enumerate}
+
+ \item create this directory structure:
+
+ \begin{verbatim}
+ $ mkdir -p ~/texmf/tex/latex
+ \end{verbatim}
+
+ Under this directory, new packages will be installed.
+
+ \item get the package (typically as a zip-compressed directory) from
+ your favourite CTAN mirror; let's call it \app{foo.zip}
+
+ \item unpack it in the right place:
+
+ \begin{verbatim}
+ $ mkdir ~/texmf/tex/latex/foo
+ $ mv foo.zip ~/texmf/tex/latex/foo
+ $ cd ~/texmf/tex/latex/foo ; unzip foo.zip
+ \end{verbatim}
+
+ \item If no \texttt{.sty} file exists, run the command
+ \texttt{latex foo.ins} or \texttt{latex foo.dtx} to create it;
+
+ \item run the command \cmdline{texhash \~{}/texmf}.
+
+\end{enumerate}
+
+To add a package to MiK\TeX, create the directory
+\path{\latex\newpackage} under \path{C:\localtexmf\tex\} and put the
+relevant files in there. Proceed as above, then run MiKTeX Options and
+click on the `Refresh now' button. Alternatively, issue the command
+\cmdline{initexmf -u}. That's it!
+
+Once a package is installed, you make it available in your documents
+adding a line under the \texttt{documentclass} declaration:
+
+\begin{verbatim}
+\usepackage{foo}
+\end{verbatim}
+
+% -----
+
+\subsubsection{Adding the Info Page}
+\label{sec:infopage}
+
+`Man' and `Info' pages are command-line sources of documentation for
+software, widely employed in \unix{} and Linux systems. If your
+\LaTeX{} distributions lacks the \file{latex2e.info} info page, do the
+following:
+
+\begin{enumerate}
+
+ \item download it from
+ \url{http://tug.ctan.org/info/latex2e-help-texinfo/latex2e.info};
+
+ \item run these commands:
+
+ \begin{verbatim}
+ $ sudo cp latex2e.info /usr/share/info/
+ $ sudo ginstall-info latex2e.info dir
+ \end{verbatim}
+
+\end{enumerate}
+
+Now, \cmdline{info latex} or \cmdline{info latex2e} is available.
+
+% -----
+
+% GOLDEN RULES
+
+\subsection{The Golden Rules}
+
+Before we start, please keep this in mind:
+
+\begin{enumerate}
+
+ \item get used to \emph{structuring} your documents: think in terms of
+ parts, chapters, sections, and so on. This holds true even if you're
+ not writing a scientific paper.
+
+ \item \LaTeX{} explicitly discourages the user from messing about with
+ formatting parameters. Don't worry too much about the \emph{looks}
+ of what you're writing, concentrate on the \emph{contents}.
+
+\end{enumerate}
+
+Applying these simple rules, your printed material will magically look
+professional.
+
+That said, this guide (which breaks the second rule somehow!) will
+help you overcome the second rule. So, you will also be able to
+compose unstructured material such as circulars, notices, poster, etc.
+
+
+\bigskip
+{\color{blue} \dingline{45}}
+
+% -----
+
+% FILE
+
+\section{The \menu{File} Menu}
+
+Obviously, some entries of this menu have nothing to do with \LaTeX{}:
+\entry{File}{Open}, \entry{File}{Save}, \entry{File}{Close} depend on
+the editor.
+
+% -----
+
+% FILE/NEW
+
+\subsection{\entry{File}{New}}
+\label{sec:filenew}
+
+This is the \LaTeX{} equivalent of a blank page:
+
+\begin{Verbatim}[fontsize=\small]
+\documentclass{article}
+\thispagestyle{empty} % no page number
+\begin{document}
+% This is a comment. Write your stuff here.
+\end{document}
+\end{Verbatim}
+
+As documents written in \LaTeX{} are inherently structured, this is a
+more realistic example:
+
+\begin{Verbatim}[fontsize=\small]
+\documentclass[a4paper,12pt]{article}
+\begin{document}
+\title{My Document}
+\author{John Smith}
+\date{London, \today}
+\maketitle
+\begin{abstract}
+This is a very short article.
+\end{abstract}
+\tableofcontents
+\listoftables
+\listoffigures
+\section{First Section}
+\label{sec:start}
+This is the text of the section. See \cite{Gonzato} for details.
+\section{End}
+\label{sec:end}
+This is the end of the document. Please go to Section
+\ref{sec:start} to read it again.
+\begin{thebibliography}{99}
+\bibitem{Gonzato} Gonzato G. \textit{\LaTeX{} for Word Processor
+Users}. CTAN, 2001--2015.
+\end{thebibliography}
+\end{document}
+\end{Verbatim}
+
+More document templates are listed in Appendix~\ref{ap:templates}.
+
+% -----
+
+% FILE/SAVE AS
+
+\subsection{\entry{File}{Save As{\ldots}}}
+
+The following tools are handy if you want to convert \LaTeX{} to other
+formats:
+
+\begin{itemize}
+
+ \item \app{\TeX4ht} is probably the best \LaTeX{} to HTML converter:\\
+ \url{http://tug.org/tex4ht}
+
+ \item \app{latex2html}, another converter to HTML:\\
+ \url{http://saftsack.fs.uni-bayreuth.de/~latex2ht/},\\
+ \href{http://www.ctan.org/tex-archive/support/latex2html}
+ {CTAN://support/latex2html}
+
+ \item \app{latex2rtf}, a converter to Rich Text Format:\\
+ \href{http://www.ctan.org/tex-archive/support/latex2rtf}
+ {CTAN://support/latex2rtf}
+
+ \item \app{detex} (a command line converter) removes all \LaTeX{} tags and
+ outputs plain text:\\
+ \url{http://www.cs.purdue.edu/homes/trinkle/detex/}, \\
+ \href{http://www.ctan.org/tex-archive/support/detex}
+ {CTAN://support/detex/}
+
+
+\end{itemize}
+
+See also Section~\ref{sec:prpreview} for details on PDF creation.
+
+% -----
+
+% FILE/SAVE AS TEMPLATE
+
+\subsection{\entry{File}{Save As Template}}
+
+Saving a \LaTeX{} `template' would mean, as I see it, create a new
+\LaTeX{} package. This is complex matter that goes beyond the scopes
+of this guide.
+
+% -----
+
+% FILE/IMPORT
+
+\subsection{\entry{File}{Import}}
+
+These tools convert from other formats to \LaTeX{}:
+
+\begin{itemize}
+
+ \item \app{rtf2latex}:
+ \href{http://www.ctan.org/tex-archive/support/rtf2latex}
+ {CTAN://support/rtf2latex}
+
+ \item \app{html2latex}:
+ \href{http://www.ctan.org/tex-archive/support/html2latex}
+ {CTAN://support/html2latex}
+
+ \item \app{wvware} is a set of tools that convert from MS Word to
+ several formats including \LaTeX{};
+ \url{http://wvware.sourceforge.net}
+
+ \item the free word processor Abiword, \url{http://www.abiword.org},
+ imports MS Word and can export \LaTeX.
+
+ \item \app{txt2tex}:
+ \href{http://www.ctan.org/tex-archive/support/txt2tex}
+ {CTAN://support/txt2tex} does a fairly good job at converting plain
+ text files into \LaTeX.
+
+\end{itemize}
+
+Other \texttt{*2latex} converters are available at the same address.
+
+Another interesting extension is OOoLatex, a set of macros for
+OpenOffice: \url{http://ooolatex.sourceforge.net/}. Libreoffice users
+have an equivalent extension called TexMaths,
+\url{http://roland65.free.fr/texmaths/}.
+
+
+% -----
+
+% FILE/PAGE SETUP
+
+\subsection{\entry{File}{Page Setup}}
+\label{sec:pagesetup}
+
+The normal method for setting paper size, orientation, and margins, is
+to use parameters in \cmd{documentclass}. Paper size can be
+\parm{a4paper}, \parm{a5paper}, \parm{b5paper}, \parm{letterpaper},
+\parm{legalpaper}, \parm{executivepaper}; orientation is
+\parm{portrait} by default, or optionally \parm{landscape}. For
+example,
+
+\begin{Verbatim}[fontsize=\small]
+\documentclass[a5paper,landscape,12pt]{article}
+\end{Verbatim}
+
+Document-wide margins are set with the \cmd{setlength} command, which
+is used to change the value of variables and counters:
+
+\begin{Verbatim}[fontsize=\small]
+\setlength{\leftmargin}{2cm}
+\setlength{\rightmargin}{2cm}
+\setlength{\oddsidemargin}{2cm}
+\setlength{\evensidemargin}{2cm}
+\setlength{\topmargin}{-1cm}
+\setlength{\textwidth}{18cm}
+\setlength{\textheight}{25cm}
+\end{Verbatim}
+
+The \package{geometry} package allows for complete control of
+parameters such as paper size, margins width, and so on.
+\package{geometry} has far too many options to list them all, and
+you're invited to read its documentation. A fairly complete example of
+its usage is shown below. In this example, some parameters are not
+compatible with each other, and are there for purpose of argument
+only.
+
+\begin{Verbatim}[fontsize=\small]
+\usepackage{geometry} % top of document
+...
+\geometry{paperwidth=25cm}
+\geometry{paperheight=35cm}
+% or: \geometry{papersize={25cm,35cm}}
+\geometry{width=20cm} % total width
+\geometry{heigth=30cm} % total heigth
+% or: \geometry{total={20cm,30cm}}
+\geometry{textwidth=18cm} % width - marginpar
+\geometry{textheight=25cm} % heigth - header - footer
+% or: \geometry{body={18cm,25cm}}
+\geometry{left=3cm} % left margin
+\geometry{right=1.5cm} % right margin
+% or: \geometry{hmargin={3cm,2cm}}
+\geometry{top=2cm} % top margin
+\geometry{bottom=3cm} % bottom margin
+% or: \geometry{vmargin={2cm,3cm}}
+\geometry{marginparwidth=2cm}
+\geometry{head=1cm} % header space
+\end{Verbatim}
+
+Options can also be set this way:
+
+\begin{Verbatim}[fontsize=\small]
+\usepackage[left=3cm, right=2cm]{geometry}
+\end{Verbatim}
+
+% -----
+
+% FILE/PAGE SETUP/HEADERS AND FOOTERS
+
+\subsubsection{\entry{Page Setup}{Headers and Footers}}
+\label{sec:headers_footers}
+
+The \package{fancyhdr} package provides the new command
+\cmd{pagestyle\{fancy\}}. This will create a header reporting the
+current section (\style{chapter} in \style{book.cls}) and subsection,
+and a footer with the page number: pretty fancy indeed. Headers and
+footers can obviously be customised. They are made of three parts: a
+left-aligned part, a centre-aligned part, and a right-aligned part. To
+set those, use the commands like in this example:
+
+\begin{Verbatim}[fontsize=\small]
+\usepackage{fancyhdr}
+...
+\lhead{} % empty
+\chead{Hello, world!}
+\rhead{Page \thepage} % page number
+\lfoot{}
+\cfoot{\textbf{Hello!}}
+\rfoot{}
+\end{Verbatim}
+
+% -----
+
+% FILE/PRINTER SETUP
+
+\subsection{\entry{File}{Printer Setup}}
+
+This is highly OS-dependent, and definitely outside of the scopes of
+\LaTeX{}. Assuming that you're using a \unix-like system, these tips
+may come in handy:
+
+\begin{itemize}
+
+ \item \cmdline{lpr -P printername} prints to the specified printer;
+
+ \item \cmdline{lpr -\# 10} prints 10 copies;
+
+ \item \cmdline{lpr -r} removes the file after printing it
+
+\end{itemize}
+
+See below for more tips.
+
+% -----
+
+% FILE/PRINT PREVIEW
+
+\subsection{\entry{File}{Print Preview}}
+\label{sec:prpreview}
+
+When the \LaTeX{} input file is ready, you have several options:
+
+\begin{itemize}
+
+ \item convert it to \file{.dvi} (\cmdline{latex file.tex}) and previewing
+ it with \app{xdvi}, \app{yap} or other DVI previewer;
+
+ \item convert the \file{.dvi} to \PS{} with \app{dvips}, then use
+ some variant of \app{Ghostview};
+
+ \item producing a \file{.pdf} file with \app{dvipdf} or directly
+ with \app{pdflatex}.
+
+\end{itemize}
+
+In my opinion, producing a \file{.pdf} file is the best option, as it
+makes for widest portability.
+
+While \app{dvipdf} is just a script that converts the \file{.dvi} to
+\file{.ps} then to \file{.pdf}, using \app{pdflatex} is more
+interesting. In fact, some packages like \package{hyperref} and
+\package{url} make the resulting \file{.pdf} file browseable; see
+Section~\ref{sec:hyperlink}. However, \note{} using \app{pdflatex} you
+might experience problems with other packages. More details in
+Section~\ref{sec:figure}.
+
+% -----
+
+% FILE/PRINT
+
+\subsection{\entry{File}{Print}}
+
+Simply use \cmdline{lpr file.ps} from the command line, or via the
+\entry{File}{Print} menu entry of your previewer.
+
+% -----
+
+% FILE/VERSIONS
+
+\subsection{\entry{File}{Versions}}
+
+Although the \package{version} package provides basic facilities for
+versioning \LaTeX{} sources, using external tools is usually a better
+choice.
+
+There are lots of programs for revision control and collaborative
+writing. While old-style geeks may want to use a single-user tool like
+RCS (I do), more powerful and multi-user tools like Subversion, Git,
+Mercurial etc.\ may be preferable. Some of them are integrated with
+the editor.
+
+An introduction to \LaTeX{} and Subversion is here:\\
+\url{http://tug.org/pracjourn/2007-3/kalderon-svnmulti/}.
+
+% -----
+
+% EDIT
+
+\section{The \menu{Edit} Menu}
+
+This menu has more to do with the editor than \LaTeX{} features. To
+begin with, refer to Table~\ref{tab:editing} that shows the key
+bindings for the entries \entry{Edit}{Cut}, \entry{Edit}{Copy},
+\entry{Edit}{Paste}, \entry{Edit}{Find}, and \entry{Edit}{Replace} of
+some common editors.
+
+Selecting text is not only performed for subsequent cut and paste, but
+also for applying styles to the selected text. The equivalent action
+in \LaTeX{} is to enclose the text either between braces, or in an
+environment. For example, to apply the bold attribute to a portion of
+text you will use one of the following:
+
+\begin{example}
+this is \textbf{bold text;}\\
+this is also
+{\bfseries bold text;}\\
+\begin{bfseries}
+this is bold text, too!
+\end{bfseries}
+\end{example}
+
+% -----
+
+% EDIT/AUTOTEXT
+
+\subsection{\entry{Edit}{Autotext}}
+
+We call \emph{autotext} the feature that makes you type, say, `PS' to
+have the word `PostScript' automatically expanded. This is an editor
+feature, but there's a rough \LaTeX{} equivalent:
+
+\begin{Verbatim}[fontsize=\small]
+\def\PS {\textsc{PostScript}}
+\end{Verbatim}
+
+which will insert the equivalent of \verb|\textsc{PostScript}|
+whenever you type \verb|\PS|. Beware, case is important.
+
+% -----
+
+% INSERT
+
+\section{The \menu{Insert} Menu}
+\label{sec:menu_insert}
+
+% -----
+
+% INSERT/BREAKS
+
+\subsection{\entry{Insert}{Breaks}}
+
+\begin{itemize}
+
+ \item a non-breakable space is set with \textasciitilde{} (tilde)
+
+ \item to force a line break, use \cmd{linebreak} or \cmd{newline};
+ see below for details
+
+ \item to start a new paragraph use a blank line, or \cmd{\bs} (possibly
+ followed by an optional space, as in \cmd{\bs[1cm]}), or \cmd{par}
+
+ \item finally, for a page break use \cmd{newpage} or \cmd{clearpage}
+
+\end{itemize}
+
+Unlike \cmd{newline}, \cmd{linebreak} stretches the line to the
+margins:
+
+\begin{example}
+I am stretched!\linebreak
+But I am not.\newline
+Ok, now you get it.
+\end{example}
+
+Besides, \cmd{clearpage} differs from \cmd{newpage} in that it prints
+all pending \emph{floats}, that is figures and tables. Floats will be
+explained in Section~\ref{sec:figure}.
+
+% -----
+
+% INSERT/ENUMERATED LIST
+
+\subsection{\entry{Insert}{Enumerated List}}
+
+Bulleted and enumerated lists correspond to the \env{itemize} and
+\env{enumerate} environments. To customise the bullet in a list
+environment, you can specify it as an argument to \cmd{item}:
+
+\begin{example}
+\begin{itemize}
+ \item[*] with an asterisk;
+ \item[-] with a dash;
+ \item[.] with a dot.
+\end{itemize}
+\end{example}
+
+Another way is to redefine the style of the
+\emph{counters}\footnote{each text element numbered by \LaTeX{}
+(sections, lists, figures, etc.) has a counter associated with it.}
+hat refer to the digits in the first- to fourth-level lists. These
+counters are \cmd{labelitemi}, \cmd{labelitemii}, \cmd{labelitemiii}
+and \cmd{labelitemiv} for itemised lists; \cmd{labelenumi},
+\cmd{labelenumii}, \cmd{labelenumiii} and \cmd{labelenumiv} for
+enumerated lists.
+
+There are several styles: \cmd{arabic} for `normal' numbers,
+\cmd{roman} for lower-case roman numerals (e.g., viii is 8),
+\cmd{Roman} for upper-case roman numerals, \cmd{alph} and \cmd{Alph}
+for lower- and upper-case letters, and \cmd{fnsymbol} that I will not
+explain for now:
+
+\begin{example}
+\begin{itemize}
+\renewcommand{\labelitemi}{*}
+\renewcommand{\labelitemii}{-}
+ \item first level, item 1
+ \item first level, item 2
+ \begin{itemize}
+ \item second level, item 1
+ \item second level, item 2
+ \end{itemize}
+ \item first level, item 3
+\end{itemize}
+\end{example}
+
+To use, say, roman numbers and uppercase letters in enumerated lists,
+do this:
+
+\begin{example}
+\begin{enumerate}
+\renewcommand{\labelenumi}
+ {\Alph{enumi}}
+\renewcommand{\labelenumii}
+ {\roman{enumii}}
+ \item first level, item 1
+ \item first level, item 2
+ \begin{enumerate}
+ \item second level, item 1
+ \item second level, item 2
+ \end{enumerate}
+ \item first level, item 3
+\end{enumerate}
+\end{example}
+
+Alternatively, use the \package{enumerate} package. It redefines the
+\env{enumerate} environment with the ability to specify an optional
+argument. Any occurrence of one of the characters \texttt{A a I i 1}
+will produce the value of the counter, using (respectively)
+\cmd{Alph}, \cmd{alph}, \cmd{Roman}, \cmd{roman}, or \cmd{arabic}. To
+include some text, enclose it in braces:
+
+\begin{example}
+\begin{enumerate}[{Example} I.]
+ \item First example.\label{item:first}
+ \item Second example.
+ \item Last example.
+ Go to Item~\ref{item:first}.
+\end{enumerate}
+\end{example}
+
+To change the number of an enumerated item, just redefine its counter:
+
+\begin{example}
+\begin{enumerate}
+ \setcounter{enumi}{2}
+ \item Example 3.
+ \item Example 4.
+ \setcounter{enumi}{5}
+ \item Example 6.
+\end{enumerate}
+\end{example}
+
+Lists within paragraphs are implemented by the \package{paralist}
+package, which provides the \env{inparaenum} environment:
+
+\begin{example}
+I'll throw in a list of items:
+\begin{inparaenum}
+ \item apples,
+ \item pears, and
+ \item oranges.
+\end{inparaenum}
+The same list can be labelled
+with letters:
+\begin{inparaenum}
+ [\itshape a) \upshape]
+ \item apples, \label{first}
+ \item pears, and
+ \item oranges. The first item is \ref{first}.
+\end{inparaenum}
+\end{example}
+
+As seen above, the characters \texttt{A a I i 1} can be used to modify
+the counter. \package{paralist} can do much more, and I suggest that
+you read its documentation.
+
+% Finally, to change the indentation and distance between items you do:
+
+% There are many counters associated with countable things like
+% \cmd{section}, \cmd{page}, \cmd{table}, and so on: these have the same name
+% of the environment or command that produces the number, but no leading \bs.
+
+% To force a counter to a given number, do something like this:
+
+% \begin{Verbatim}[fontsize=\small]
+% \setcounter{counter_name}{value}
+% \end{Verbatim}
+
+% For instance, to force a page number to 100 you'll do:
+
+% \begin{Verbatim}[fontsize=\small]
+% \setcounter{page}{100}
+% \end{Verbatim}
+
+% -----
+
+% INSERT/SYMBOL
+
+\subsection{\entry{Insert}{Special Character}}
+
+First of all, let's remind that some characters have a special meaning
+in \LaTeX{}. They must be entered either with a leading \bs, or using
+them in math mode, or even writing special commands: see
+Table~\ref{tab:characters}.
+
+\begin{table}
+\begin{center}
+ \begin{tabular}{ll}
+ \hline
+ \textbf{Character} & \textbf{\LaTeX{} Sequence} \\
+ \hline
+ \$ & \verb|\$| or \verb|\textdollar| \\
+ \& & \verb|\&| \\
+ \% & \verb|\%| \\
+ \_ & \verb|\_| or \verb|\textunderscore| \\
+ \{ & \verb|\{| or \verb|\textbraceleft| \\
+ \} & \verb|\}| or \verb|\textbraceright| \\
+ $<$ & \verb|$<$| or \verb|\textless| \\
+ $>$ & \verb|$>$| or \verb|\textgreater| \\
+ \bs & \verb|\textbackslash| \\
+ \textbar & \verb|\textbar| \\
+ \textbullet & \verb|\textbullet| \\
+ \textdaggerdbl & \verb|\textdaggerdbl| \\
+ \textdagger & \verb|\textdagger| \\
+ \textparagraph & \verb|\textparagraph| \\
+ \textsection & \verb|\textsection| \\
+ \textcopyright & \verb|\textcopyright| \\
+ \textasciicircum & \verb|\textasciicircum| \\
+ \textasciitilde & \verb|\textasciitilde| or \verb|\~{}| \\
+ $\sim$ & \verb|$\sim$| \\
+ \textregistered & \verb|\textregistered| \\
+ \texttrademark & \verb|\texttrademark| \\
+ \textordfeminine & \verb|\textordfeminine| \\
+ \textordmasculine & \verb|\textordmasculine| \\
+ \hline
+ \end{tabular}
+ \caption{How to obtain some special characters.}
+ \label{tab:characters}
+\end{center}
+\end{table}
+
+Another way to enter special characters is using their ASCII code and
+the \cmd{char} command. For example, you could insert the characters
+\texttt{\char36 \char38 \char94 \char126} entering \cmd{char36}
+\cmd{char38} \cmd{char94} \cmd{char126}.
+
+There are packages that provide thousands of unusual characters and
+symbols. For instance, \package{pifont} provides the commands
+\cmd{ding}, \cmd{dingfill}, \cmd{dingline}, and \cmd{dinglist}. The
+first command produces the Dingbat character of the specified code.
+The other commands are equivalent to the \cmd{fill}, \cmd{line}, and
+\cmd{list} commands and environment, but use the Dingbat code given as
+parameter:
+
+\begin{example}
+\begin{dinglist}{43}
+ \item one
+ \item two
+ \item three
+\end{dinglist}
+\end{example}
+
+Another nice variant is this:
+
+\begin{example}
+\begin{dingautolist}{172}
+ \item one
+ \item two
+ \item three
+\end{dingautolist}
+\end{example}
+
+There are far too many symbols to mention them all in this guide.
+Rather, I'll point you to `The Comprehensive \LaTeX{} Symbol List' at
+\href{http://www.ctan.org/tex-archive/info/symbols/comprehensive}
+{CTAN://info/symbols/comprehensive}.
+
+% -----
+
+\subsubsection{The \euro{} Sign}
+
+The official Euro sign is provided by the \package{eurosym} package,
+which can be used in two ways:
+
+\begin{verbatim}
+\usepackage[gen]{eurosym}
+\usepackage[official]{eurosym}
+\end{verbatim}
+
+Both provide the \cmd{euro} command, which produces \euro. The actual
+shape of the symbol depends on the declaration: the \verb|[gen]|
+option provides a symbol that works with all font styles; the second
+declaration produces \officialeuro. Please note the difference. The
+latter shape can always be obtained with \cmd{officialeuro}.
+
+Another package that provides the Euro sign is \package{marvosym},
+which also provides many more fine characters. You get \EUR{} with
+\cmd{EUR}.
+
+% -----
+
+% INSERT/FORMULA
+
+\subsection{\entry{Insert}{Formula}}
+
+\LaTeX{} is particularly strong at typesetting math. To insert math
+symbols in the main text, you must enclose them between \texttt{\$}:
+
+\begin{example}
+I like math: $x^n + y^n \neq
+z^n \forall n \neq 2$
+is my favourite theorem.
+\end{example}
+
+The environments \env{displaymath} and \env{equation} typeset formulae
+aside from the text. The latter adds an equation number for later
+reference:
+
+\begin{example}
+Fermat's Last Theorem is
+defined as:
+\begin{equation}
+x^n + y^n \neq z^n
+\forall n \neq 2
+\label{eq:fermat}
+\end{equation}
+Can you prove
+Eq.~\ref{eq:fermat}?
+\end{example}
+
+% -----
+
+% INSERT/FOOTNOTE
+
+\subsection{\entry{Insert}{Footnote}}
+
+The command \verb|\footnote[n]{footnote text}| is all you need; the
+optional parameter \verb|[n]| modifies the footnote number. The
+\verb|\footnote| command should be placed after commas, full stops,
+and other punctuation signs that follow the word.
+
+To use a symbol or arbitrary text instead of a number, redefine the
+counter associated with \cmd{footnote}:
+
+% can't use example, it uses minipages!
+\medskip
+
+\begin{minipage}[c]{0.5\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+\renewcommand{\thefootnote}{read me!}
+This footnote\footnote
+{I mean this one.}
+says it all.
+ \end{Verbatim}
+\end{minipage}%
+\begin{boxedminipage}[c]{0.5\textwidth}
+ \renewcommand{\thempfootnote}{read me!}
+ This footnote\footnote
+ {I mean this one.}
+ says it all.
+\end{boxedminipage}
+
+\medskip
+
+Using this method, you can get footnote numbers in roman numerals, or
+replaced by nice symbols:
+
+\medskip
+
+\begin{minipage}[c]{0.5\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+\renewcommand{\thefootnote}
+{\Roman{footnote}}
+This\footnote{The first.}
+is the first footnote,
+and this\footnote{The second.}
+is the second.
+\renewcommand{\thefootnote}
+{\fnsymbol{footnote}}
+The end.\footnote[8]{At last!}
+ \end{Verbatim}
+\end{minipage}%
+\begin{boxedminipage}[c]{0.5\textwidth}
+ \renewcommand{\thempfootnote}
+ {\Roman{footnote}}
+ This\footnote{The first.}
+ is the first footnote,
+ and this\footnote{The second.}
+ is the second.
+ \renewcommand{\thempfootnote}
+ {\fnsymbol{footnote}}
+ The end.\footnote[8]{At last!}
+\end{boxedminipage}
+
+\medskip
+
+Note the \verb|\fnsymbol{footnote}| thing. It uses 9 symbols
+associated with the values 1{\ldots}9 of the \texttt{footnote}
+counter: \fnsymbol{fnsym} \stepcounter{fnsym} \fnsymbol{fnsym}
+\stepcounter{fnsym} \fnsymbol{fnsym} \stepcounter{fnsym}
+\fnsymbol{fnsym} \stepcounter{fnsym} \fnsymbol{fnsym}
+\stepcounter{fnsym} \fnsymbol{fnsym} \stepcounter{fnsym}
+\fnsymbol{fnsym} \stepcounter{fnsym} \fnsymbol{fnsym}
+\stepcounter{fnsym} \fnsymbol{fnsym}.
+
+% gosh. How do you write the `for ()' loop in TeX?
+
+To make several references to the same footnote, don't write its
+number explicitly. Rather, do this:
+
+\medskip
+
+\begin{minipage}[c]{0.5\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+This\footnote{the first.}
+\newcounter{\myfootnote}
+\setcounter{\myfootnote}
+ {\value{footnote}}
+and that\footnote{the second.}
+are footnotes: please read note
+\footnotemark
+[\value{\myfootnote}] again.
+ \end{Verbatim}
+\end{minipage}%
+\begin{boxedminipage}[c]{0.5\textwidth}
+\renewcommand{\thempfootnote}{\arabic{mpfootnote}}
+This\footnote{the first.} \newcounter{myfootnote}%
+\setcounter{myfootnote}{\value{mpfootnote}}%
+and this\footnote{the second.} are footnotes: please read note%
+\footnotemark[\value{myfootnote}] again.
+% This footnote\footnote{I mean this one.} says it all. Please read
+% note\footnotemark[\value{mpfootnote}] again.
+\end{boxedminipage}
+
+\medskip
+
+Warning: minipages use their own counters, \texttt{mpfootnote} and
+\texttt{thempfootnote}.
+
+% -----
+
+\subsubsection{Footnotes at End of Document}
+
+The \package{endnotes} package lets you move all footnotes at the end
+of the document. You'll have to add this line to the preamble:
+
+\begin{Verbatim}[fontsize=\small]
+\let\footnote=\endnote
+\end{Verbatim}
+
+and these lines as the last thing in your document:
+
+\begin{Verbatim}[fontsize=\small]
+\newpage
+\begingroup
+\parindent 0pt
+\parskip 2ex
+\def\enotesize{\normalsize}
+\theendnotes
+\endgroup
+\end{Verbatim}
+
+Other commands are available, please read the \file{endnotes.sty}
+source.
+
+% -----
+
+% INSERT/INDICES
+
+\subsection{\entry{Insert}{Indices}}
+\label{sec:tocs}
+
+Generating and inserting a table of contents, list of tables, and list
+of figures is a trivial task in \LaTeX. All you have to do is insert
+these lines before the first \cmd{section} or \cmd{chapter} of your
+document:
+
+\begin{Verbatim}[fontsize=\small]
+\tableofcontents
+\listoffigures
+\listoftables
+\end{Verbatim}
+
+% TO DO: \renewcommand{\contentsname}{Table of Contents}
+
+% TO DO: how to customise the table of contents.
+
+% The table of contents can be customised.
+
+% \setcounter{tocdepth}{3}
+
+% http://stackoverflow.com/questions/544051/how-does-one-change-the-paragraph-formatting-in-latex
+
+
+% -----
+
+% INSERT/SPACE
+
+\subsection{\entry{Insert}{Vertical and Horizontal Space}}
+\label{sec:space}
+
+This entry doesn't actually exist in any word processor I am aware of.
+This is in fact a limitation that \LaTeX{} fills in a very elegant
+way.
+
+\emph{Space filling} is used to center text horizontally, vertically,
+or both; this is a difficult task to perform with any word processor,
+and requires a lot of trial end error. Use a combination of \cmd{null}
+or \verb|~| to set fixed marks, followed by \cmd{vfill} and
+\cmd{hfill} like in this example:
+
+\begin{example}
+one \hfill two\\
+\vfill
+~ \hfill three \hfill ~\\
+\vfill
+four \hfill five
+\null
+\end{example}
+
+Normally, \LaTeX{} won't let you insert blank spaces at your will: two
+or more are considered a single space. However, if you do want to make
+your document look messy, use \verb|~| to make a non-breakable space.
+
+Also, use the command \cmd{hspace} like in this example:
+
+\begin{example}
+This is a \hspace{2cm}
+2-cm-wide hole.
+\end{example}
+
+% -----
+
+% INSERT/TABS
+
+\subsection{\entry{Insert}{Tabs}}
+
+The \env{tabbing} environment provides a rough equivalent to the
+action of the TAB key, and it's used to align text in columns. These
+are the most commonly used commands:
+
+\begin{center}
+ \begin{tabular}{ll}
+ \hline
+ \textbf{Command} & \textbf{Action} \\
+ \hline
+ \verb|\=| & Sets a tab stop \\
+ \verb|\>| & Advances to the next tab stop \\
+ \verb|\+| & Sets the left margin one tab stop to the right \\
+ \verb|\-| & Sets the left margin one tab stop to the left \\
+ \verb|\\| & Ends a line \\
+ \verb|\pushtabs| & Saves all tab stop positions \\
+ \verb|\poptabs| & Restores previously saved tab stop positions \\
+ \hline
+ \end{tabular}
+\end{center}
+
+This example shows some of the available commands:
+
+\begin{example}
+\begin{tabbing}
+% let's set the tab positions
+~ \hspace{1cm} \= ~ \hspace{2cm} \=
+~ \hspace{3cm} \= \kill % discard text
+Zero \> One \> Two \> Three \\
+Zero \> One \> \> Three \+ \\ % go right
+Zero \> Two \> Three \- \\ % go left
+Zero \> One \> Two \\
+\pushtabs % save tab positions
+new tab 1{\ldots} \= new tab 2 \\
+new \> tab \\
+\poptabs % restore tab positions
+Zero \> One \> Two \> Three
+\end{tabbing}
+\end{example}
+
+See also the \env{tabular} and \env{table} environments.
+
+% -----
+
+% INSERT/CROSS REFERENCE
+
+\subsection{\entry{Insert}{Cross Reference}}
+\label{sec:xrefs}
+
+The commands \cmd{label}, \cmd{ref}, and \cmd{pageref} are all you
+need to insert labels in the text and do cross referencing. The
+standard format of labels is the \texttt{prefix:suffix} form, where
+\texttt{prefix} is one of the following: \texttt{cha} for chapters,
+\texttt{eq} for equations, \texttt{fig} for figures, \texttt{sec} for
+(sub)sections, and \texttt{tab} for tables.
+
+References to a page (section, table, figure, etc.) number can be
+obtained using \cmd{label} and \cmd{ref} as in this example:
+
+\begin{example}
+\paragraph{Example.}
+\label{par:example}
+This paragraph appears
+in Section~\ref{par:example}
+on page~\pageref{par:example}.
+\end{example}
+
+Of course, you may use your own prefixes. For example, take this
+enumerated list:
+
+\begin{example}
+\begin{enumerate}
+ \item{first step: skip to
+ \ref{item:end} \label{item:start}}
+ \item{another step (unreferenced)}
+ \item{end: go back to
+ \ref{item:start} \label{item:end}}
+\end{enumerate}
+\end{example}
+
+% -----
+
+% INSERT/MARGIN NOTES
+
+\subsection{\entry{Insert}{Margin Notes}}
+
+Very simple: use \verb|\marginpar{text}|.
+
+% -----
+
+% INSERT/FRAME
+
+\subsection{\entry{Insert}{Text Frame}}
+
+A text frame is used to define a part of text that does not break
+across pages. To place a text frame on a fixed position on the page,
+use the \package{textpos} package, as shown in the example listed in
+fig.~\ref{fig:poster} (see Appendix~\ref{ap:templates}).
+
+\setlength{\fboxsep}{5mm}
+
+\begin{center}
+ \begin{minipage}[c]{0.4\linewidth}
+ If you don't need to specify a fixed position, then use the
+ \env{minipage} (miniature page) environment. This text is enclosed
+ in a minipage{\ldots}
+ \end{minipage}
+ \begin{boxedminipage}[c]{0.4\linewidth}
+ {\ldots}and this is some other text enclosed in a
+ \env{boxedminipage} environment, provided by the package of same
+ name.
+\end{boxedminipage}
+\end{center}
+
+\setlength{\fboxsep}{3pt} % default
+
+I remind you what a \env{minipage} declaration looks like:
+
+\begin{verbatim}
+\begin{minipage}[position]{width}
+...
+\end{minipage}
+\end{verbatim}
+
+In a \env{boxedminipage}, the space between the frame and the text is
+set with this command:
+
+\begin{verbatim}
+\setlength{\fboxsep}{5mm}
+\end{verbatim}
+
+% -----
+
+% INSERT/FIGURE
+
+\subsection{\entry{Insert}{Figure}}
+\label{sec:figure}
+
+(The reference guide for graphic inclusion in \LaTeX{} is `Using
+Imported Graphics in \LaTeX2e', a.k.a. \texttt{epslatex.ps}.)
+
+A `figure' can be not only a picture, but also a portion of text, a
+table, etc.\ that you put in a \env{figure} environment. This is an
+example:
+
+\begin{figure}[htbp]
+ \begin{minipage}[c]{0.6\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+\begin{figure}[htbp]
+% [htbp] specifies the
+% preferred placement: here, top,
+% bottom, or separate page.
+ \begin{center}
+ \texttt{=8-)}
+ \end{center}
+ \caption{A smiley representing
+ the author of this guide.}
+ \label{fig:mysmiley}
+\end{figure}
+ \end{Verbatim}
+ \end{minipage}%
+ \begin{boxedminipage}[c]{0.4\textwidth}
+ \begin{center}
+ \texttt{=8-)}
+ \end{center}
+ \caption{A smiley representing the author of this guide.}
+ \label{fig:mysmiley}
+ \end{boxedminipage}
+\end{figure}
+
+Please \note note that figures are not guaranteed to appear exactly
+where you write the code! In fact, the main difference with word
+processors is that figures don't have a fixed placement; they `float'
+to the optimal position that \LaTeX{} finds for them. So, the text
+shouldn't refer to a figure like `the figure below' or `the figure
+above'; use `\verb|see fig.~\ref{fig:label}|' instead.
+
+Owing to this property, figures and tables are called \emph{floats}.
+If you do need to position a float exactly, use the \package{here}
+package that provides an optional placement argument \texttt{H}
+(meaning, ``right HERE!'').
+
+Given a picture in Encapsulated \PS{} (\texttt{.eps}) format, you
+insert it in a \LaTeX{} source file using the \package{graphicx}
+package and commands like those shown in fig.~\ref{fig:gnuplot}.
+
+\medskip
+
+\begin{figure}[htbp]
+ \begin{minipage}[c]{0.5\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+\begin{figure}
+\begin{center}
+\fbox{\includegraphics
+[width=0.5\textwidth, angle=-90]
+{gnuplot.ps}}
+\caption{A Gnuplot graph.}
+\label{fig:gnuplot}
+\end{center}
+\end{figure}
+ \end{Verbatim}
+ \end{minipage}%
+ \begin{minipage}[c]{0.5\textwidth}
+ \begin{center}
+ % I cheat! PDF only.
+ \fbox{\includegraphics[width=0.6\textwidth, angle=-90]{gnuplot.pdf}}
+ \caption{A Gnuplot graph.}
+ \label{fig:gnuplot}
+ \end{center}
+ \end{minipage}
+\end{figure}
+
+When you typeset your document with \cmd{latex} then \app{dvips},
+graphic inclusion only works with \texttt{EPS} files; \app{pdflatex}
+accepts JPG, PNG, and of course PDF files. The latter choice might be
+preferable for most users.
+
+There are several packages that convert common graphic formats like
+\file{.jpg}, \file{.gif}, \file{.png} etc. to \file{.eps} and/or
+\file{.pdf}; for example, ImageMagik (\url{http://www.imagemagik.org})
+and The GIMP (\url{http://www.gimp.org}). However, these applications
+produce huge \PS{} files.
+
+Best results are obtained using applications that wrap the bitmap,
+turning it into a compact \PS{} file. You'll want to use \app{jpeg2ps}
+(\url{http://www.pdflib.com/jpeg2ps/index.html}) or \app{bmeps}
+(\href{http://www.ctan.org/tex-archive/support/bmeps}
+{CTAN://support/bmeps}). The former is often the best choice for
+wrapping \file{.jpg} files, but the latter handles more graphics
+formats.
+
+If you wish to make both \file{.pdf} and \file{.ps} from the same
+source file, include these commands:
+
+\begin{Verbatim}[fontsize=\small]
+\usepackage{ifpdf}
+...
+% include the right options
+\ifpdf
+ \usepackage[pdftex]{graphicx}
+ \pdfcompresslevel=9
+\else
+ \usepackage{graphicx}
+\fi
+...
+% include the right graphic file
+\ifpdf
+ \includegraphics{file.png}
+\else
+ \includegraphics{file.eps}
+\fi
+\end{Verbatim}
+
+\begin{warn}
+
+ If you have more than 18 figures without text between them, you'll
+ get the `Too many unprocessed floats' \LaTeX{} error. The quickest
+ way to solve this problem is to put \cmd{clearpage} after three or
+ four figures.
+
+\end{warn}
+
+% -----
+
+\subsubsection{Wrapping Floats}
+
+For a magazine-like layout, use the \package{wrapfig} package:
+
+\begin{example}
+If you meet this guy, give him some money.
+
+\begin{wrapfigure}[4]{l}[5pt]{2cm}
+{\Huge
+ \texttt{=8-)}
+}
+\end{wrapfigure}
+
+The reason may not be apparent to you,
+but I can assure that your money
+will end up in good hands.
+I say again, if you meet this guy,
+give him some money: he knows how to
+use it properly. OK?
+\end{example}
+
+The parameters are the number of lines to be narrowed, the figure
+placement, the overhang, and the figure width.
+
+% -----
+
+% INSERT/SHAPES
+
+\subsection{\entry{Insert}{Shapes}}
+
+\LaTeX{} provides a \env{picture} environment whithin which you use
+commands like \cmd{circle}, \cmd{oval} and so on. In my opinion,
+drawing pictures without a graphical environment is just too hard, and
+\env{picture} has several limitations too. It's much better to use a
+couple of great programs, both free and open source: the vector
+drawing program Inkscape, \url{https://inkscape.org/}, along with
+Pstoedit, \url{http://www.pstoedit.net/}.
+
+Start Inkscape and draw any shape you wish using its tools. To insert
+text rendered by \LaTeX, select \menu{Extensions/Render/LaTeX
+formula...}, insert your text as in fig.~\ref{fig:ink1}, then click on
+Apply.
+
+\begin{figure}[htbp]
+ \centering
+ \includegraphics[width=0.6\textwidth]{inkscape-tb.png}
+ \caption{Inserting a \LaTeX{} formula.}
+ \label{fig:ink1}
+\end{figure}
+
+Your \LaTeX-rendered text will be included as a graphics object, and
+you'll be able to edit it as you wish. The resulting picture can be
+exported to several formats supported by \LaTeX, such as PDF, PNG, and
+many others. More information here:
+\url{http://www.ctan.org/tex-archive/info/svg-inkscape}.
+
+\begin{figure}[htbp]
+ \centering
+ \includegraphics[width=0.6\textwidth]{inkscape.png}
+ \caption{A \LaTeX{} object can be edited as desired.}
+ \label{fig:ink2}
+\end{figure}
+
+If you wish to do real magic, then check out the following
+packages/programs:
+
+\begin{itemize}
+
+ \item \package{pgf} is a \TeX{} macro package for generating
+ graphics:\\
+ \url{http://sourceforge.net/projects/pgf/}
+
+ \item \package{GLE} (Graphics Layout Engine) is a graphics
+ scripting language designed for creating publication quality graphs,
+ plots, diagrams, figures and slides:\\
+ \url{www.gle-graphics.org}
+
+ \item Asymptote is a powerful descriptive vector graphics language
+ that provides a natural coordinate-based framework for technical
+ drawing:\\
+ \url{http://asymptote.sourceforge.net/}
+
+ \item ePiX, a collection of batch utilities for GNU/Linux and
+ similar platforms, creates mathematically accurate figures, plots,
+ and movies using easy-to-learn syntax:\\
+ \url{http://mathcs.holycross.edu/~ahwang/current/ePiX.html};
+
+ \item \package{pstricks} is a set of macros that allow the inclusion
+ of PostScript drawings in \LaTeX{} documents:\\
+ \url{http://tug.org/PSTricks/main.cgi/}
+
+\end{itemize}
+
+These packages let you make publication-quality \PS{} drawings in
+\LaTeX. Many more are available; search the web for ``LaTeX vector
+graphics''.
+
+Many more kinds of `shapes' can also be inserted. To whet your
+appetite, please visit the \TeX{} Showcase page,
+\url{http://www.tug.org/texshowcase/}.
+
+% -----
+
+% INSERT/LINE
+
+\subsection{\entry{Insert}{Line}}
+
+Draw lines of any length and thickness with \cmd{rule}:
+
+\begin{example}
+This is a page-wide
+rule:\\
+\rule{\linewidth}{1pt}
+but this one is shorter
+and thicker:\\
+\rule{2cm}{2mm}
+\end{example}
+
+Another interesting `line' is that made of dots (\cmd{dotfill}), often
+used to relate things. This is how it's done:
+
+\begin{example}
+Total price \dotfill \euro~10
+\end{example}
+
+% -----
+
+% INSERT/HYPERLINK
+
+\subsection{\entry{Insert}{Hyperlink}}
+\label{sec:hyperlink}
+
+The \package{hyperref} package lets you write URLs and other external
+references. When used together with \app{dvipdf} or \app{pdflatex},
+\package{hyperref} lets you make browseable \file{.pdf} documents! For
+instance, this document uses this declaration:
+
+\begin{Verbatim}[fontsize=\small]
+\usepackage[colorlinks,
+ urlcolor=blue,
+ filecolor=magenta,
+ linkcolor=darkred,
+ hyperfootnotes=false]{hyperref}
+\end{Verbatim}
+
+Let's see an example:
+
+\begin{example}
+The \hypertarget{ctan}{CTAN} main site
+is \url{http://www.ctan.org}, a.k.a
+\href{http://www.ctan.org}{CTAN://}.
+
+Listen to \href{run:midifile.mid}
+{this MIDI file}.
+
+Click \hyperlink{ctan}{here} to go
+back to the top.
+\end{example}
+
+As you can see, the \cmd{url} command typesets its contents using a
+monospace font. To use the same font as the remaining text, use the
+command:
+
+\begin{Verbatim}
+\urlstyle{same}
+\end{Verbatim}
+
+after the \cmd{hyperref} declaration.
+
+The \cmd{hypertarget} and \cmd{hyperlink} commands provide internal
+links, just like HTML; \cmd{href} creates links to URLs or external
+files. Note the \texttt{run:} parameter: you can run external programs
+like multimedia players, office applications, whatever. As far as I
+know, this feature only works in Adobe Reader, Okular, and Evince.
+
+On Linux and possibly other \unix{} variants, you'll have to instruct
+your favourite PDF reader what to run when an external file is
+referenced. Insert lines like the following in your \file{.mailcap} or
+\file{/etc/mailcap}:
+
+\begin{verbatim}
+audio/midi;/usr/bin/timidity %s
+audio/*; xmms %s
+video/*; xine -pfhq %s
+\end{verbatim}
+
+Please read \package{hyperref}'s documentation for further examples
+and possibilities.
+
+% -----
+
+% INSERT/COMMENT
+
+\subsection{\entry{Insert}{Comment}}
+
+This is done inserting \% before each line, or by using the package
+\package{comment} that provides the environment of the same name.
+
+% -----
+
+% FORMAT
+
+\section{The \menu{Format} Menu}
+
+In general, the main format properties of a document are set with
+parame\-ters in \cmd{document\-class}: default font size (10, 11, or
+12pt), paper (\texttt{a4paper}, \texttt{a5paper}, \texttt{b5paper},
+\texttt{letterpaper}, \texttt{legalpaper}, \texttt{executivepaper}),
+and orientation (\texttt{portrait}, \texttt{landscape}). For example,
+
+\begin{Verbatim}[fontsize=\small]
+\documentclass[a5paper,landscape,12pt]{article}
+\end{Verbatim}
+
+Alternative font sizes can be specified as explained in
+Section~\ref{sec:extsizes}.
+
+% -----
+
+% FORMAT/LINE SPACING
+
+\subsection{\entry{Format}{Line Spacing}}
+
+The package \package{setspace} provide the environments
+\env{singlespace}, \env{onehalfspace}, and \env{double\-space}. In
+addition, the environment/command \cmd{spacing}\cmdparm{\{amount\}}
+will set the spacing to the specified amount:
+
+\begin{example}
+\begin{spacing}{2.5}
+These two lines \\
+are crazily spaced!
+\end{spacing}
+\begin{spacing}{1}
+Much better, these lines\\
+have a pretty space.
+\end{spacing}
+\end{example}
+
+To apply line spacing to the whole document, use the
+\cmd{linespread\{factor\}} command in the preamble. Default value of
+\texttt{factor} is 1; larger values give larger line spacing (1.6 is
+roughly double line spacing).
+
+% -----
+
+% FORMAT/CHARACTER
+
+\subsection{\entry{Format}{Character}}
+
+Standard character properties are listed in
+Table~\ref{tab:properties}, font sizes in Table~\ref{tab:font_sizes}.
+Please note that actual font size depends on the default size defined
+in \ltx{docu\-ment\-class} (10, 11, or 12 pt); see
+Table~\ref{tab:font_sizes2}.
+
+\begin{table}[htbp]
+\begin{center}
+\begin{tabular}{lll} \hline
+\textbf{Text attribute} & \textbf{Environment form} & \textbf{Example} \\
+\hline
+\cmd{textnormal} & \verb|textnormal| & main document font \\
+\cmd{textrm} & \verb|rmfamily| & \textrm{roman} \\
+\cmd{textit} & \verb|itshape| & \textit{italics} \\
+\cmd{emph} & n/a & \emph{emphasis} \\
+\cmd{textmd} & \verb|mdseries| & \textmd{medium weight (default)} \\
+\cmd{textbf} & \verb|bfseries| & \textbf{boldface} \\
+\cmd{textup} & \verb|upshape| & \textup{upright (default)} \\
+\cmd{textsl} & \verb|slshape| & \textsl{slanted} \\
+\cmd{textsf} & \verb|sffamily| & \textsf{sans serif} \\
+\cmd{textsc} & \verb|scshape| & \textsc{small caps} \\
+\cmd{texttt} & \verb|ttfamily| & \texttt{typewriter} \\
+\cmd{underline} & \verb|underline| & \underline{underline} \\
+\cmd{textsuperscript} & n/a & this is \textsuperscript{superscript} \\
+\cmd{mathrm} & n/a & $\mathrm{x^n + y^n \neq z^n \forall n \neq 2}$ \\
+\cmd{mathbf} & n/a & $\mathbf{x^n + y^n \neq z^n \forall n \neq 2}$ \\
+\cmd{mathsf} & n/a & $\mathsf{x^n + y^n \neq z^n \forall n \neq 2}$ \\
+\cmd{mathtt} & n/a & $\mathtt{x^n + y^n \neq z^n \forall n \neq 2}$ \\
+\cmd{mathit} & n/a & $\mathit{x^n + y^n \neq z^n \forall n \neq 2}$ \\
+\cmd{mathnormal} & n/a & $\mathnormal{x^n + y^n \neq z^n \forall n \neq 2}$ \\
+\cmd{mathcal} & n/a & $\mathcal{x^n + y^n \neq z^n \forall n \neq 2}$ \\
+\hline
+\end{tabular}
+\caption{Font attributes.}
+\label{tab:properties}
+\end{center}
+\end{table}
+
+Please note the difference between italics and emphasised text.
+\textit{For example, this portion of text is typeset in italics, and
+\emph{these words} are emphasised in upright}. As you can see,
+\cmd{emph} is a \emph{logical} rather than typographic command.
+
+Also, please note that subscript is normally used in math mode only.
+The trick to use it in normal text is:
+
+\begin{example}
+this is
+$_{\mbox{\footnotesize{subscript}}}$
+\end{example}
+
+\begin{table}[ht]
+\begin{center}
+\begin{tabular}{ll} \hline
+\textbf{Font size} & \textbf{Example} \\
+\hline
+\verb|tiny| & \tiny{sample text} \\
+\verb|scriptsize| & \scriptsize{sample text} \\
+\verb|footnotesize| & \footnotesize{sample text} \\
+\verb|small| & \small{sample text} \\
+\verb|normalsize| & \normalsize{sample text} \\
+\verb|large| & \large{sample text} \\
+\verb|Large| & \Large{sample text} \\
+\verb|LARGE| & \LARGE{sample text} \\
+\verb|huge| & \huge{sample text} \\
+\verb|Huge| & \Huge{sample text} \\
+\hline
+\end{tabular}
+\caption{Font sizes}
+\label{tab:font_sizes}
+\end{center}
+\end{table}
+
+\begin{table}[ht]
+\begin{center}
+ \begin{tabular}{llll}
+ \hline
+ Default font size & 10pt & 11pt & 12pt \\
+ \hline
+ \ltx{tiny} & 5 & 6 & 6 \\
+ \ltx{scriptsize} & 7 & 8 & 8 \\
+ \ltx{footnotesize} & 8 & 9 & 10 \\
+ \ltx{small} & 9 & 10 & 10.95 \\
+ \ltx{normalsize} & 10 & 10.95 & 12 \\
+ \ltx{large} & 12 & 12 & 14.4 \\
+ \ltx{Large} & 14.4 & 14.4 & 17.28 \\
+ \ltx{LARGE} & 17.2 & 17.28 & 20.74 \\
+ \ltx{huge} & 20.7 & 20.74 & 24.88 \\
+ \ltx{Huge} & 24.8 & 24.88 & 24.88 \\
+ \hline
+ \end{tabular}
+ \caption{Actual font size in pt}
+ \label{tab:font_sizes2}
+\end{center}
+\end{table}
+
+% -----
+
+\subsubsection{Superscript and Subscript in Chemical Formulae}
+
+Most chemical formulae could be entered as math formulae, using
+\verb|^| and \verb|_| to obtain superscript and subscript. The
+\env{mhchem} package provides a simpler command, though. Digits are
+printed as subscripts by default, as superscript when preceded by
+\verb|^|. Formulae must be enclosed in the \cmd{ce} command:
+
+\begin{example}
+\ce{H2O + CO2 -> H2CO3}\\
+\ce{CaCO3 -> Ca^2+ + CO3^2-}\\
+\ce{CO3^2- + H2CO3 -> 2 HCO3^-}\\
+\ce{CaCO3 + H2CO3 -> Ca^2+ + 2HCO3^-}
+\end{example}
+
+% -----
+
+\subsubsection{Underline styles}
+
+Normally, \uline{underline} is not used. It's just a relic of the old
+teletype era, and it doesn't look really good. If you still want to
+use underline, the \package{ulem} package provides some fancy styles:
+
+\begin{example}
+\uline{important}
+\uuline{urgent}
+\uwave{boat}
+\sout{wrong}
+\xout{removed}
+\end{example}
+
+Beware: \package{ulem} redefines the \cmd{emph} command, which will be
+replaced by underline. To avoid this behaviour, use this declaration:
+
+\begin{verbatim}
+\usepackage[normalem]{ulem}
+\end{verbatim}
+
+
+% -----
+
+% FORMAT/CHARACTER SIZE
+
+\subsubsection{\entry{Format}{Character Size}}
+\label{sec:extsizes}
+
+If the standard font sizes aren't enough for you, the package
+\package{extsizes} may be handy. It provides `extended' versions of
+the standard document classes, with support for sizes 8--12, 14, 17,
+and 20 pt.
+
+For example, let's suppose you want to typeset an article using a 17
+pt font. You'll use this document preamble:
+
+\begin{Verbatim}[fontsize=\small]
+\documentclass[17pt]{extarticle}
+\end{Verbatim}
+
+Another way to get big fonts is to use the package \package{type1cm},
+which provides commands like the following:
+
+\begin{Verbatim}[fontsize=\small]
+\fontsize{72pt}{72pt}\selectfont
+No Smoking
+\end{Verbatim}
+
+(The example above is way too large to fit on this page{\ldots})
+
+Parameters are font size and baseline. Yet another approach is this:
+
+\begin{example}
+\resizebox{!}{1cm}{1-cm tall}
+\end{example}
+
+\lettrine{D}{ropped} capitals at the start of a paragraph can be
+obtained using the \package{lettrine} package, which provides a fully
+customisable \cmd{lettrine} command. This paragraph uses the default
+behaviour:
+
+\begin{verbatim}
+\lettrine{D}{ropped} capitals at the start...
+\end{verbatim}
+
+% -----
+
+
+% FORMAT/FONT
+
+\subsubsection{\entry{Format}{Character Font}}
+
+\LaTeX{} uses its own fonts (Computer Modern), automatically generated
+when needed by the \MF{} subsystem. This ensures portability and
+yields very good results. However, many of us are accustomed to other
+fonts: Times, Helvetica, Sans Serif{\ldots}
+
+Fortunately, \LaTeX{} can use \PS{} fonts. Try using one of the
+following packages: \package{avant}, \package{avangar},
+\package{bookman}, \package{chancery}, \package{charter},
+\package{courier}, \package{helvet}, \package{helvetic},
+\package{ncntrsbk}, \package{newcent}, \package{palatcm},
+\package{palatino}, \package{pifont}, \package{times},
+\package{utopia}, \package{zapfchan}. Insert \verb|\usepackage{times}|
+and enjoy the results. The only caveat is that \LaTeX{} handles maths
+at its best only with Computer Modern fonts: using \PS{} fonts might
+render your formulas slightly less appealing.
+
+The packages above set the font for the whole document. To use a \PS{}
+font for a region of text only, specify the font family as in the
+example below. Common font families are listed in
+Table~\ref{tab:font_families}.
+
+\begin{warn}
+ Beware, some font shapes may be unavailable on some systems!
+\end{warn}
+
+\begin{example}
+This is Computer Modern Roman,
+{\fontfamily{phv}\selectfont
+this is Helvetica!}
+\end{example}
+
+\begin{table}
+\begin{center}
+ \begin{tabular}{ll}
+ \hline
+ \textmd{Family} & \textmd{Name}\\
+ \hline
+ \texttt{cmr} & Computer Modern Roman\\
+ \texttt{cmss} &
+ {\fontfamily{cmss}\selectfont Computer Modern Sans Serif}\\
+ \texttt{cmtt} &
+ {\fontfamily{cmtt}\selectfont Computer Modern Typewriter}\\
+ \texttt{pag} &
+ {\fontfamily{pag}\selectfont Avantgarde}\\
+ \texttt{pbk} &
+ {\fontfamily{pbk}\selectfont Bookman}\\
+ \texttt{phv} &
+ {\fontfamily{phv}\selectfont Helvetica}\\
+ \texttt{pnc} &
+ {\fontfamily{pnc}\selectfont New Century Schoolbook}\\
+ \texttt{ppl} &
+ {\fontfamily{ppl}\selectfont Palatino}\\
+ \texttt{ptm} &
+ {\fontfamily{ptm}\selectfont Times}\\
+ \texttt{pcr} &
+ {\fontfamily{pcr}\selectfont Courier}\\
+ \hline
+ \end{tabular}
+ \caption{Common font families.}
+ \label{tab:font_families}
+\end{center}
+\end{table}
+
+\medskip
+
+Yet another possibility is replacing a standard \LaTeX{} font with a
+\PS{} one: for example, you may want to use Avantgarde whenever
+Computer Modern Sans Serif would appear. These commands can be renewed
+as in the example below:
+
+\begin{itemize}
+
+ \item \verb|\rmdefault| (roman)
+ \item \verb|\sfdefault| (sans serif)
+ \item \verb|\ttdefault| (typewriter)
+ \item \verb|\bfdefault| (boldface)
+ \item \verb|\mddefault| (medium)
+ \item \verb|\itdefault| (italics)
+ \item \verb|\sldefault| (slanted)
+ \item \verb|\scdefault| (small caps)
+ \item \verb|\updefault| (upright)
+
+\end{itemize}
+
+\begin{Verbatim}[fontsize=\small]
+ % Avantgarde replaces sans serif
+\renewcommand{\sfdefault}{pag}
+\end{Verbatim}
+
+% -----
+
+% FORMAT/COLOUR
+
+\subsubsection{\entry{Format}{Character Colour}}
+\label{sec:charcol}
+
+You can colour words using the package \package{color} and appropriate
+commands. Predefined colours are black, white, red, green, blue, cyan,
+magenta, and yellow; you can also define your own.
+
+\begin{example}
+\textcolor{red}{This is red.}\\
+\color{blue}
+This text is blue!\\
+So is this. Let's change.\\
+\definecolor{mygreen}
+{rgb}{0.1,1,0.1}
+\color{mygreen}
+This is my shade of green!\\
+\color{black}
+\colorbox{cyan}{A cyan box}\\
+\fcolorbox{blue}{green}
+{A green box in a blue frame}
+\end{example}
+
+Moreover, the command \cmd{pagecolor} lets you specify{\ldots} guess
+what?
+
+% -----
+
+% FORMAT/PARAGRAPH
+
+\subsection{\entry{Format}{Paragraph}}
+
+Let's remind what a paragraph is according to \LaTeX: a portion of
+text that either ends with \verb|\\|, or is followed by a blank line.
+
+\emph{Environments} are \LaTeX{}'s way of specifying properties like
+text alignment or font selection for a given portion of text. It's
+like selecting text with the mouse, then choosing the property you
+wish from a menu or clicking on a button. Another way is to enclose
+the text between brackets.
+
+Environments have this general form:
+
+\begin{Verbatim}[fontsize=\small]
+\begin{environment}
+...text goes here...
+\end{environment}
+\end{Verbatim}
+
+For example, if you want to center a paragraph you'll use the
+\env{center} environment:
+
+\begin{example}
+\begin{center}
+this text is centered
+\end{center}
+\end{example}
+
+Standard environments are listed in Table~\ref{tab:environments}. In the
+following sections, I'll show you what to use and when.
+
+\begin{table}[p]
+\begin{center}
+\begin{tabular}{ll} \hline
+\textbf{Environment} & \textbf{Purpose} \\
+\hline
+\ltx{abstract} & abstract\\
+\ltx{array} & Math arrays\\
+\ltx{center} & Centered lines\\
+\ltx{description} & Labelled lists\\
+\ltx{displaymath} & Formulas on their own line\\
+\ltx{document} & Encloses the whole document\\
+\ltx{enumerate} & Numbered lists\\
+\ltx{eqnarray} & Sequence of aligned equations\\
+\ltx{equation} & Displayed equation\\
+\ltx{figure} & Floating figures\\
+\ltx{flushleft} & Flushed left lines\\
+\ltx{flushright} & Flushed right lines\\
+\ltx{itemize} & Bulleted lists\\
+\ltx{letter} & Letters\\
+\ltx{list} & Generic list environment\\
+\ltx{math} & In-line math\\
+\ltx{minipage} & Miniature page\\
+\ltx{picture} & Picture with text, arrows, lines and circles\\
+\ltx{quotation} & Indented environment with paragraph indentation\\
+\ltx{quote} & Indented environment with no paragraph indentation\\
+\ltx{tabbing} & Align text arbitrarily\\
+\ltx{table} & Floating tables\\
+\ltx{tabular} & Align text in columns\\
+\ltx{thebibliography} & Bibliography or reference list\\
+\ltx{theorem} & Theorems, lemmas, etc\\
+\ltx{titlepage} & For hand crafted title pages\\
+\ltx{verbatim} & Simulating typed input\\
+\ltx{verse} & For poetry and other things\\
+\hline
+\end{tabular}
+\caption{Standard \LaTeX{} environments.}
+\label{tab:environments}
+\end{center}
+\end{table}
+
+% -----
+
+% FORMAT/PARAGRAPH HORIZONTAL ALIGNMENT
+
+\subsubsection{\entry{Paragraph}{Horizontal Alignment}}
+
+By default, the text is justified. To get left--aligned,
+right--aligned or centered text, use the \env{flushleft},
+\env{flushright} and \env{center} environments. The commands
+\cmd{raggedright}, \cmd{ragged\-left}, and \cmd{centering} are
+equivalent to their correspondent environments, but they do not start
+a new paragraph.
+
+% -----
+
+% FORMAT/PARAGRAPH VERTICAL ALIGNMENT
+
+\subsubsection{\entry{Paragraph}{Vertical Alignment}}
+
+The way paragraphs are separated is often puzzling to word processor
+users. \emph{Empty lines and multiple spaces are treated like a
+single empty line or space}. This means that you can't get more space
+between paragraphs inserting more empty lines. The commands
+\cmd{smallskip}, \cmd{medskip}, and \cmd{bigskip} provide some space
+between paragraphs.
+
+If you need more space, use the command
+\cmd{vskip}\{\textit{parameter}\} as in this example:
+
+% \begin{margins}{-1cm}{-0.5cm}
+\begin{example}
+These paragraphs will be
+separated by 1.3 cm:\\
+\vskip 1.3cm
+there is a 1.3 cm gap above me.
+\end{example}
+
+Note that \cmd{vskip} only works between paragraphs. What if you
+wanted to start a page after an additional margin of, say, 1.5 cm?
+You'll have to use \cmd{null}, which sets a `mark' in the text:
+
+\begin{example}
+\null
+\vskip 1.3 cm
+This text comes after 1.3 cm...
+\end{example}
+
+Finally, the command \cmd{vfill} is used to add empty lines between
+two paragraphs so that the second paragraph goes exactly to the bottom
+of the page. For example,
+
+% \begin{example} will not work here
+\medskip
+
+\begin{minipage}[c]{0.49\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+ This appears at the top of
+ the page{\ldots}
+ \vfill
+ {\ldots}and this at the bottom.
+ \end{Verbatim}
+\end{minipage}
+\begin{boxedminipage}[c]{0.49\textwidth}
+ This appears at the top of
+ the page{\ldots}
+ \vskip 1.3 cm
+ {\ldots}and this at the bottom.
+\end{boxedminipage}
+
+% -----
+
+% FORMAT/PARAGRAPH MARGINS
+
+\subsubsection{\entry{Paragraph}{Margins}}
+
+Normally, the margins are set for the whole document as seen in
+Section~\ref{sec:pagesetup}. Redefining them for a section of text
+will not work: if you want to set a paragraph's margins, you'll have
+to create a new environment like in the following example:
+
+\begin{Verbatim}[fontsize=\small]
+\newenvironment{margins}[2]
+{
+ \begin{list}{} {
+ \setlength{\leftmargin}{#1}
+ \setlength{\rightmargin}{#2}
+ } \item }
+{\end{list}}
+\end{Verbatim}
+
+Then you will use the new environment:
+
+\begin{example}
+As you can see, this paragraph
+has normal margins.
+\begin{margins}{0.5cm}{1cm}
+ But please note that this
+ paragraph has custom margins.
+\end{margins}
+\end{example}
+
+% -----
+
+% FORMAT/PARAGRAPH INDENTATION
+
+\subsubsection{\entry{Paragraph}{Indentation}}
+
+To set the amount of indentation of the first line of a paragraph, we
+redefine the value of the \cmd{parindent} counter. In the following
+example, we set a 1-cm indentation:
+
+\begin{Verbatim}[fontsize=\small]
+\setlength{\parindent}{1cm}
+\end{Verbatim}
+
+The commands \cmd{indent} and \cmd{noindent} allow/disallow
+indentation on the following paragraph. Finally, the distance between
+paragraphs is set by the \cmd{parskip} counter:
+
+\begin{Verbatim}[fontsize=\small]
+\setlength{\parskip}{3pt}
+\end{Verbatim}
+
+% -----
+
+% FORMAT/BORDER
+
+\subsubsection{\entry{Paragraph}{Border and Shade}}
+
+To get framed (bordered) paragraphs or words, you have the choice of
+using the \package{framed} package or the \cmd{parbox} command. The
+package \package{calc} is required in the latter case.
+
+This is the simplest method, using \package{framed}:
+
+% \begin{example} will not work here
+\medskip
+
+\begin{minipage}[c]{0.5\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+ \setlength{\FrameRule}{2pt}
+ \setlength{\FrameSep}{5pt}
+ \begin{framed}
+ this is a framed paragraph!
+ \end{framed}
+ \definecolor{shadecolor}{rgb}
+ {0.9,0.8,1}
+ \begin{shaded}
+ this is a shaded paragraph,
+ do you like it?
+ \end{shaded}
+ \end{Verbatim}
+\end{minipage}%
+\begin{minipage}[c]{0.5\textwidth}
+\setlength{\FrameRule}{2pt}
+\setlength{\FrameSep}{5pt}
+\begin{framed}
+ this is a framed paragraph!
+\end{framed}
+\definecolor{shadecolor}{rgb}
+ {0.9,1,1}
+ \begin{shaded}
+ this is a shaded paragraph,
+ do you like it?
+ \end{shaded}
+\end{minipage}
+
+\medskip
+
+Equivalently, use the \package{boxedminipage} package and the equally
+named environment. For those who want to know more: the commands
+
+\begin{Verbatim}[fontsize=\small]
+\framebox{
+ \begin{minipage}[c]{\linewidth}
+ text to be framed
+ \end{minipage}
+}
+\end{Verbatim}
+
+are functionally equivalent to the \env{boxedminipage} environment.
+
+% This example uses \cmd{parbox}:
+
+% \begin{example}
+% \noindent
+% \fbox{
+% \parbox{\linewidth
+% -2 \fboxsep -2 \fboxrule}
+% {again, a framed paragraph!}
+% }
+% \end{example}
+
+\cmd{width} sets the width of the minipage equal to that of the
+remaining text. Obviously, you can specify the width as you like.
+
+Finally, to frame something adapting the frame to the width of the
+text:
+
+\begin{example}
+this is a
+\framebox[\width]{framed}
+word
+\end{example}
+
+Modifying the parameter, you can adjust the frame width:
+
+\begin{example}
+this is another
+\framebox[2\width][r]{framed}
+word
+\end{example}
+
+Note that the second optional parameter specifies the alignment (to
+the right in this example).
+
+% -----
+
+% FORMAT/COLOUR
+
+\subsubsection{\entry{Paragraph}{Colour}}
+
+Now that you have a bordered paragraph, you'll want to set its colour
+too. Do this:
+
+\begin{example}
+\colorbox{yellow}{
+ \begin{minipage}
+ {0.8\linewidth}
+ I am a minipage, my colour
+ is yellow!
+ \end{minipage}
+}
+\end{example}
+
+Just as an example, we set the minipage colour for only the 80\% of
+its width. More about colours in Section~\ref{sec:charcol}.
+
+% -----
+
+% FORMAT/COLUMNS
+
+\subsubsection{\entry{Format}{Columns}}
+
+The commands \cmd{twocolumn} and \cmd{onecolumn} start a new page and
+set the number of columns; they can also be used as parameters in
+\cmd{documentclass}. If this is not enough for you, the package
+\package{multicols} provides an environment of the same name. I could
+have set this section in two columns with these commands:
+
+\begin{Verbatim}[fontsize=\small]
+\columnseprule=1pt
+\begin{multicols}{2}[\subsection{\entry{Format}{Columns}}]
+The commands \cmd{twocolumn} ...
+\end{multicols}
+\end{Verbatim}
+
+The space between columns is controlled by the parameter
+\cmd{columnsep}, and the thickness of the rule between columns by
+\cmd{columnseprule}. The text given as optional parameter in brackets
+is excluded from the environment.
+
+% -----
+
+% TABLE
+
+\section{The \menu{Table} Menu}
+
+Quite a complex subject{\ldots} A \emph{table} is a float (as
+explained in Section~\ref{sec:figure}) that must fit on one page. It
+usually contains a \env{tabular} environment, even though other
+possibilities exist. By default, a table adjusts its width to match
+the width of its contents.
+
+Let me stress that the \env{table} environment is a float, but
+\env{tabular} is not. Keep this in mind if you want to write informal
+tabular material, i.e. without label and caption.
+
+This is the general format of a table:
+
+\begin{Verbatim}[fontsize=\footnotesize]
+\begin{table}[htbp] % placement: here, top, bottom, separate page
+% \begin{small} % sets the table font
+\begin{center} % optional
+% 4-column table; alignment is left, centered, right, fixed width
+\begin{tabular}{|l|c|rp{4cm}|}
+\hline % horizontal line
+\textbf{Left} & \textbf{Centre} & \textbf{Right} & \textbf{4 cm}\\
+\hline
+row 1, col 1 & row 1, col 2 & row 1, col 3 & row 1, col 4\\
+\cline{1-2} % horizontal line spanning columns 1-2
+row 2, col 1 & row 2, col 2 & row 2, col 3 & row 2, col 4\\
+\cline{1-2}
+\multicolumn{2}{|c|}{spanning two columns} & row 3, col 3 &
+row 3, col 4\\
+\cline{1-3}
+row 4, col 1 & row 4, col 2 & row 4, col 3 & ~ \hfill right\\
+% force a space with "\ "
+row 5, col 1 & row 5, col 2 & row 5, col 3 & left \hfill ~\\
+row 5, col 1 & row 5, col 2 & row 5, col 3 &
+~ \hfill centre \hfill ~\\
+\hline
+\end{tabular}
+\caption{A sample table.}
+% labels are used for cross references;
+% for example, "see Table~\ref{tab:sampletab}"
+\label{tab:sampletab}
+\end{center}
+% \end{small}
+\end{table}
+\end{Verbatim}
+
+Table~\ref{tab:sampletab} shows the result.
+
+\begin{table}[htbp] % placement: here, top, bottom, separate page
+% \begin{tiny}
+\begin{center} % optional
+% 4-column table; alignment is left, centered, right, fixed width
+\begin{tabular}{|l|c|rp{4cm}|}
+\hline % horizontal line
+\textbf{Left} & \textbf{Centre} & \textbf{Right} & \textbf{4 cm}\\
+\hline
+row 1, col 1 & row 1, col 2 & row 1, col 3 & row 1, col 4\\
+\cline{1-2} % horizontal line spanning columns 1-2
+row 2, col 1 & row 2, col 2 & row 2, col 3 & row 2, col 4\\
+\cline{1-2}
+\multicolumn{2}{|c|}{spanning two columns} & row 3, col 3 &
+row 3, col 4\\
+\cline{1-3}
+row 4, col 1 & row 4, col 2 & row 4, col 3 & ~ \hfill right\\
+% force a space with "\ "
+row 5, col 1 & row 5, col 2 & row 5, col 3 & left \hfill ~\\
+row 5, col 1 & row 5, col 2 & row 5, col 3 &
+~ \hfill centre \hfill ~\\
+\hline
+\end{tabular}
+\caption{A sample table.}
+% labels are used for cross references;
+% for example, "see Table~\ref{tab:sampletab}"
+\label{tab:sampletab}
+\end{center}
+% \end{small}
+\end{table}
+
+Sometimes, a table is too wide and won't fit on the page. In that
+case, the \package{rotating} package provides the new environment
+\env{sidewaystable}. Also, \package{rotating} makes it possible to
+rotate the contents of a cell by a specified angle. Finally, the
+\package{tabularx} package lets one specify tables of fixed width: the
+\texttt{X} column specifier indicates that a column can be spread as
+needed.
+
+Here's an example:
+
+% \begin{example} will not work here
+\medskip
+
+\begin{minipage}[c]{0.7\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+ \begin{sidewaystable}
+ \begin{tabularx}{7.5cm}{|l|X|X|}
+ \hline
+ \textbf{normal} & \textbf{tilted} &
+ \textbf{wider}\\
+ \hline
+ normal & \rotatebox{30}{I'm tilted!} &
+ I'm wider\\
+ \hline
+ \end{tabularx}
+ \end{sidewaystable}
+\end{Verbatim}
+\end{minipage}%
+\begin{minipage}[c]{0.3\textwidth}
+% here we cheat. Tabularx won't work inside a minipage,
+% so let's load the picture.
+\ifpdf
+ \includegraphics{tbx.pdf}
+\else
+ \includegraphics{tbx.eps}
+\fi
+
+\end{minipage}
+
+\medskip
+
+The \note standard \env{tabular} environment cannot span more than one
+page! There are some packages that overcome this limitation: you will
+want to try out \package{longtable}, \package{supertabular}, and
+\package{xtab}.
+
+To enable colours in tables, you use the \package{colortbl} package:
+
+\begin{example}
+Colour by row:\\\vskip 2mm
+\begin{tabular}{|l|c|r|}
+ \hline
+ \rowcolor{cyan}
+ one & two & three\\
+ \rowcolor{green}
+ one & two & three\\
+ \rowcolor{yellow}
+ one & two & three\\
+ \hline
+\end{tabular}
+\end{example}
+
+\begin{example}
+Colour by column:\\\vskip 2mm
+\begin{tabular}
+ {|>{\columncolor{cyan}}l|
+ >{\color{red}
+ \columncolor{green}}c|
+ >{\columncolor{yellow}}r|}
+ \hline
+ one & two & three\\
+ one & two & three\\
+ one & two & three\\
+ \hline
+\end{tabular}
+\end{example}
+
+To conclude the subject, a neat little trick. If you think that
+writing \LaTeX{} tables is too complicated, you could be relieved by
+OpenOffice Calc and Calc2LaTeX. The former is the well-known free
+spreadsheet, while the latter is a plugin that that lets you turn a
+cell range into a \LaTeX{} table. Links:
+\url{http://www.openoffice.org/},
+\url{http://calc2latex.sourceforge.net/}.
+
+
+% -----
+
+\subsection{\entry{Table}{Line Spacing}}
+
+A line adjusts itself to the height of the text it contains. To add
+some space \emph{before} a line, the trick is to start it with a
+\texttt{\textbackslash{}rule} of 0 length and specified height. To add
+space \emph{after} a line, use
+\texttt{\textbackslash{}\textbackslash{}} followed by optional space.
+Here is an example:
+
+\begin{example}
+\begin{tabular}{lll}
+one & two & three\\
+0.3 centimeters & \textbf{after} &
+ this line\\[0.3cm]
+one & two & three\\
+one & two & three\\
+\rule{0pt}{1.2cm}1.2 centimeters &
+ \textbf{before} & this line\\
+\end{tabular}
+\end{example}
+
+% -----
+
+\subsection{\entry{Table}{Rule Width}}
+
+% TO DO: \setlength{\arrayrulewidth}{<width>}
+
+\begin{example}
+\begin{tabular}{|lll|}
+\hline
+%\setlength{\arrayrulewidth}{5pt}
+one & two & three\\
+\hline
+four & five & six\\
+%\setlength{\arrayrulewidth}{1pt}
+\hline
+\end{tabular}
+\end{example}
+
+% -----
+
+\subsection{\entry{Table}{Aligning Numbers}}
+
+A special case of a tabular environment is when we want to align
+numbers with respect to the decimal positions.
+
+The simplest method is using the \ltx{@} column specifier, which in
+practice is useful in tables containing only numbers. The column
+separator \texttt{\&} is replaced by the decimal dot:
+
+\begin{example}
+\begin{tabular}{r@{.}l}
+ 3&14159\\
+ 1&61803\\
+ 1&41421\\
+ 100&00000
+\end{tabular}
+\end{example}
+
+Alternatively, use the \package{dcolumn} package, which adds the
+\texttt{D} column specifier. \texttt{D} has three arguments: the
+separator to use in the \LaTeX{} source and in output (usually the
+same, `.'), and the number of digits to the right of the decimal place
+indicator. Optionally, the third argument can specify the number of
+digits to the left and to the right of the decimal place indicator,
+separated by a dot. Lastly, if the third argument is -1, the material
+of the column is centered around the separator.
+
+All material in the table is typeset in math mode. To insert headings,
+you'll have to put the text in an \cmd{mbox}.
+
+% \begin{example} will not work here
+\medskip
+
+\begin{minipage}[c]{0.5\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+ \begin{tabular}{|D{.}{,}{4.2}|%
+ D{.}{.}{5}|D{.}{.}{-1}|}
+ \hline
+ \mbox{One} & \mbox{Two} &
+ \mbox{Three}\\
+ 10.33 & 10.33 & 10.33\\
+ 1000 & 1000 & 1000\\
+ 5.1 & 5.1 & 5.1\\
+ 3.14 & 3.14159 & 3.14159\\
+ \hline
+ \end{tabular}
+ \end{Verbatim}
+\end{minipage}%
+\begin{minipage}[c]{0.5\textwidth}
+\begin{tabular}{|D{.}{,}{4.2}|%
+D{.}{.}{5}|D{.}{.}{-1}|}
+\hline
+\mbox{One} & \mbox{Two} &
+\mbox{Three}\\
+10.33 & 10.33 & 10.33\\
+1000 & 1000 & 1000\\
+5.1 & 5.1 & 5.1\\
+3.14 & 3.14159 & 3.14159\\
+\hline
+\end{tabular}
+\end{minipage}
+
+% -----
+
+\subsection{Using \package{slashbox}}
+
+This package add the \cmd{backslashbox} command:
+
+\medskip
+
+\begin{minipage}[c]{0.5\textwidth}
+ \begin{Verbatim}[fontsize=\small]
+\begin{tabular}{|l|l|l|}
+ \hline
+ \backslashbox[2cm]{Lesson}{Date} &
+ Monday & Tuesday\\
+ \hline
+ Stratigraphy & room A & room A\\
+ Chemistry & room B & Lab $\alpha$\\
+ Physics & room C & Lab $\beta$\\
+ \hline
+\end{tabular}
+\end{Verbatim}
+\end{minipage}%
+\begin{minipage}[c]{0.5\textwidth}
+\begin{tabular}{|l|l|l|}
+ \hline
+ \backslashbox[2cm]{Lesson}{Date} &
+ Monday & Tuesday\\
+ \hline
+ Stratigraphy & room A & room A\\
+ Chemistry & room B & Lab $\alpha$\\
+ Physics & room C & Lab $\beta$\\
+ \hline
+\end{tabular}
+\end{minipage}
+
+\medskip
+
+% \emph{TODO: mention \cmd{newcolumntype} and \package{floatflt}}
+
+% -----
+
+\subsection{Importing Data in \LaTeX{} Tables}
+
+For many people, data files are the bread and butter of everyday's
+work. Most data files are simply ASCII text with columns of numbers,
+but some people use spreadsheets. Nearly all spreadsheet applications
+can export sheets in the ASCII-based \file{.csv} file format; values
+are usually separated by the `;' character.
+
+Converting a data file into a \LaTeX{} table is quite a tedious
+process. The following script for \unix{} will convert a datafile with
+an arbitrary number of columns to a table. It will also work on
+\file{.csv} files.
+
+\begin{Verbatim}[fontsize=\small]
+#!/bin/sh
+
+# dat2tex.sh: converts tabular data to a tabular environment
+
+if [ $# != 1 ]; then
+ echo "Usage: $0 <datafile>"
+ exit 1
+fi
+
+# is this a csv file?
+grep ";" $1 > /dev/null
+if [ $? = 0 ]; then
+ AWK="awk -F;"
+else
+ AWK=awk
+fi
+
+# ok awk, make my day
+$AWK '{if (1 == FNR) { \
+ printf "\\begin{tabular}{"; \
+ for (i = 1; i <= NF; i++) {printf "l"}; \
+ printf "}\n"
+ }
+ for (i = 1; i < NF; i++) \
+ {printf $i" & "} printf $NF"\\\\ \n"} \
+ END {printf "\\end{tabular}\n"}' $1
+
+# end of dat2tex
+\end{Verbatim}
+
+% -----
+
+% TOOLS
+
+\section{The \menu{Tools} Menu}
+
+% -----
+
+% TOOLS/MAIL MERGES
+
+\subsection{\entry{Tools}{Mail Merges}}
+
+This useful and time-saving tool is implemented in \LaTeX{} by the
+\package{textmerg} package. Let's consider a simple document, in which
+the name, surname, and title of people we're writing to may vary. The
+remaining text does not change.
+
+We'll define three \emph{fields}, which are the variable part of the
+text: \cmd{Name}, \cmd{Surname}, and \cmd{Title}. Their values will be
+gathered from an external file, \file{data.dat}.
+
+\begin{Verbatim}[fontsize=\small]
+\documentclass{article}
+\usepackage{textmerg}
+\begin{document}
+% let's declare the variable fields:
+% \Void is for empty lines
+\Fields{\Name\Surname\Title-\Void}
+\Merge{data.dat}{%
+Dear \Title{} \Surname,\\
+may I call you \Name?\\
+Yours,\\
+\hspace{3cm}Guido\clearpage}
+\end{document}
+\end{Verbatim}
+
+The fourth field, \cmd{Void}, isn't really necessary and it's there
+for illustration. It's preceded by a minus sign, which indicates that
+it can be empty in the data file. Simply put, we want to separate the
+records using empty lines.
+
+The file \file{data.dat} reads:
+
+\begin{Verbatim}[fontsize=\small]
+Guido
+Gonzato
+Dr.
+
+Francesco
+Mulargia
+Prof.
+
+Marie
+Curie
+Mme
+
+\end{Verbatim}
+
+That's it: the resulting output will contain the merged text, one page
+for each recipient.
+
+% -----
+
+% TOOLS/LABELS
+
+\subsection{\entry{Tools}{Labels}}
+
+If making mail merges was easy, making labels is even trivial. Let's
+suppose you want to make 20 equal labels on a 3$\times$8 peel--off
+label sheet. The package to use, predictably, is called
+\package{labels}. In this example, we'll make 10 plain labels and 10
+boxed labels:
+
+\begin{Verbatim}[fontsize=\small]
+\documentclass[a4paper,12pt]{article}
+\usepackage{labels}
+\LabelCols=3 % n. of columns of labels
+\LabelRows=8 % n. of rows of labels
+\LeftBorder=8mm % borders of each label
+\RightBorder=8mm
+\TopBorder=5mm
+\BottomBorder=5mm
+\LabelGridtrue % show the grid
+\numberoflabels=10 % number of labels of each type to print
+% the text of the label is specified by
+% the \addresslabel[]{} macro:
+\begin{document}
+ \addresslabel[\large] % optional arguments
+ {\textbf{Guido Gonzato}, Ph.D.\\
+ \textsl{Linux system manager}}
+ % now on to the boxed labels
+ \boxedaddresslabel[\fboxsep=4mm\fboxrule=1mm]
+ {\textbf{Guido Gonzato}, Ph.D.\\
+ \textsl{Linux system manager}}
+\end{document}
+\end{Verbatim}
+
+% You'll also have to choose the correct paper size and adjust the page
+% margins (use \package{geometry}; omitted in this example).
+
+To make labels containing different addresses, you may use either an
+external file or insert the addresses in the main file:
+
+\begin{Verbatim}[fontsize=\small]
+\documentclass[a4paper,12pt]{article}
+\usepackage{labels}
+\LabelCols=3
+\LabelRows=8
+\LeftBorder=3mm
+\RightBorder=3mm
+\TopBorder=8mm
+\BottomBorder=8mm
+\LabelGridtrue
+\begin{document}
+% use either this environment:
+\begin{labels}
+ 1$^{st}$ name
+ 1$^{st}$ address
+ 1$^{st}$ city, state, zipcode
+
+ 2$^{nd}$ name
+ 2$^{nd}$ address
+ 2$^{nd}$ city, state, zipcode
+
+ 3$^{rd}$ name
+ 3$^{rd}$ address
+ 3$^{rd}$ city, state, zipcode
+\end{labels}
+% or an external file containing exactly the same text:
+% \labelfile{addresses.dat}
+\end{document}
+\end{Verbatim}
+
+It is left to you to combine \package{textmerg} and \package{labels}!
+
+% -----
+
+% TOOLS/LANGUAGE
+
+\subsection{\entry{Tools}{Default Language}}
+
+\LaTeX{} default language is English, but other languages are
+supported. By language support I mean the translation of terms like
+`Chapter' or `Index', correct hyphenation, and the possibility of
+inserting characters like `\c c' or `\'e' directly via your keyboard.
+(The normal way being typing \texttt{\bs{}c c} and \texttt{\bs{}'e}.)
+
+Your \LaTeX{} distribution contains a file called \file{language.dat}
+(usually \path{$TEXMF/tex/generic/config/language.dat} that contains a
+list of languages. Editing this file you choose the languages for
+which you want hyphenation patterns.
+
+If you are not a native English speaker, you'll want to use the
+package \package{babel} as in the following example:
+
+\begin{Verbatim}[fontsize=\small]
+\usepackage[italian,english]{babel}
+\end{Verbatim}
+
+\begin{warn}
+
+ \package{babel} alters the way some characters behave in a
+ language-dependent way. If you experience odd problems, insert the
+ offending characters using the \cmd{charXX} syntax.
+
+\end{warn}
+
+In addition, to type accented letters and in general non-standard
+ASCII characters\footnote{in computer jargon, `standard ASCII
+characters' are the characters whose code is included between 32
+(space) and 126 (tilde).} you may want to use the packages
+\package{inputenc} and \package{fontenc}. In most cases, UTF-8 is the
+right choice: remember to enable it in your editor too!
+
+\begin{Verbatim}[fontsize=\small]
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\end{Verbatim}
+
+A different way of inserting accented letters is configuring your
+editor to type those for you. For example, I set up my editor of
+choice (\app{jed}) to have it insert \texttt{\bs{}'e} whenever I type
+`\'e'. I included this in my \file{.jedrc}:
+
+{\small
+\begin{alltt}
+define latex_mode_hook ()
+\{
+ set_abbrev_mode (1);
+ if ( () = abbrev_table_p ("LaTeX") )
+ use_abbrev_table ("LaTeX");
+#ifdef WIN32
+ % prevent clash with movement keys
+ undefinekey ("\`a\`a", "LaTeX-Mode");
+ definekey (" \bs\bs`a", "\`a\`a", "LaTeX-Mode");
+#else
+ local_setkey (" \bs\bs`a", "\`a");
+#endif
+ local_setkey (" \bs\bs'e", "\'e");
+ local_setkey (" \bs\bs`e", "\`e");
+ local_setkey (" \bs\bs`\bs\bs{}i\{\}", "\`\i");
+ local_setkey (" \bs\bs`o", "\`o");
+ local_setkey (" \bs\bs`u", "\`u");
+\}
+\end{alltt}
+}
+
+Please consult your editor's documentation.
+
+% -----
+
+% TOOLS/HYPHEN
+
+\subsection{\entry{Tools}{Hyphenation}}
+
+Although \LaTeX{} usually does a good job at hyphenating words,
+sometimes manual intervention may yield better results. Manual hyphens
+are specified inserting \verb|\-| where we want the word to be broken.
+A better way is to declare hyphenation rules:
+
+\begin{Verbatim}[fontsize=\small]
+\hyphenation{ge-o-phy-sics ge-o-lo-gy earth}
+\end{Verbatim}
+
+The above declaration instructs \LaTeX{} not to hyphen the word
+`earth'. Another way to prevent a word to be hyphenated is to put it
+in \cmd{mbox}:
+
+\begin{Verbatim}[fontsize=\small]
+Do not hyphen \mbox{internationalisation}, please. I'm a masochistic.
+\end{Verbatim}
+
+% -----
+
+% TOOLS/SPELL CHECK
+
+\subsection{\entry{Tools}{Spell Check}}
+
+\LaTeX{} is not aware of spell spelling. This task is done using
+external tools like \app{ispell}, \app{aspell} or others. Under \unix,
+you can use \app{ispell} this way:
+
+\begin{Verbatim}[fontsize=\small]
+shell> ispell -t mydocument.tex
+\end{Verbatim}
+
+The \texttt{-t} switch instructs \app{ispell} to ignore \TeX{} and
+\LaTeX{} commands. If your language is not English, specify the
+appropriate dictionary with the \texttt{-d} switch:
+
+\begin{Verbatim}[fontsize=\small]
+shell> ispell -d italiano -t mydocument.tex
+\end{Verbatim}
+
+% -----
+
+% HELP
+
+\section{The \menu{Help} Menu}
+
+There are many ways of getting help with \LaTeX{}, both online and offline.
+The best place to start is the CTAN site,
+\url{http://www.ctan.org/tex-archive/info/}.
+
+\begin{itemize}
+
+ \item \verb|info latex| (\unix{} systems) gives a concise but very complete
+ on-line summary of commands and concepts;
+
+ \item \url{http://www.ctan.org/tex-archive/info/LatexHelpBook/} is a very
+ nice help system for \LaTeX{}, fully integrated with Windows.
+
+ \item don't forget the
+ \url{http://groups.google.com/group/comp.text.tex/topics} newsgroup:
+ it's an invaluable source of help.
+
+\end{itemize}
+
+As of 2015, most GNU/Linux distributions ship with \app{TeXLive},
+probably the most complete \TeX/\LaTeX{} systems. A lot of
+documentation is provided; on my Ubuntu machine, it's found in
+\path{/usr/share/doc/texlive-doc/}.
+
+% -----
+
+\section{The End}
+
+This document is copyleft \textcopyright{} Guido Gonzato, 2001--2015,
+and released under the GNU Free Documentation Licence. I really hope
+you'll find this guide useful. For any suggestions or comments, please
+feel free to contact me.
+
+\newpage
+
+% -----
+
+\appendix
+
+\section{Document Templates}
+\label{ap:templates}
+
+A template for the class \texttt{article} was presented in
+Section~\ref{sec:filenew}. More examples are shown in the following
+figures.
+
+% -----
+
+% BOOK
+
+\begin{figure}[htbp]
+\begin{Verbatim}[fontsize=\small]
+\documentclass[twoside,11pt]{book}
+\begin{document}
+\frontmatter
+\begin{titlepage}
+\title{The Book of Mine}
+\end{titlepage}
+\author{John B. Smith}
+\maketitle
+\tableofcontents
+\mainmatter
+\part{The Beginning}
+\chapter{Introduction}
+\section{Let's Start}
+The book starts here.
+\part{The End}
+\backmatter
+Thank you for reading this book.
+\end{document}
+\end{Verbatim}
+\caption{Book template.}
+\end{figure}
+
+% -----
+
+% REPORT
+
+\begin{figure}[htbp]
+\begin{Verbatim}[fontsize=\small]
+\documentclass[twoside,12pt]{report}
+% tables and figures at the end:
+\usepackage{endfloat}
+\begin{document}
+\title{Final Report}
+\author{John B. Smith}
+\date{London, \today}
+\maketitle
+\begin{abstract}
+This is the final report.
+\end{abstract}
+\tableofcontents
+\listoftables
+\listoffigures
+\part{Start}
+\chapter{Begin}
+\section{Introduction}
+The report starts here.
+\end{document}
+\end{Verbatim}
+\caption{Report template.}
+\end{figure}
+
+% -----
+
+% LETTER
+
+\begin{figure}[htbp]
+\begin{Verbatim}[fontsize=\small]
+\documentclass[12pt]{letter}
+\begin{document}
+\address{My address}
+\signature{Guido}
+\begin{letter}{John's address}
+\opening{Dear John,}
+Thank you for being my friend.
+\closing{Hope to see you soon,}
+\ps{P.S. Say hello to granny!}
+\encl{My son's photographs!}
+\end{letter}
+\end{document}
+\end{Verbatim}
+\caption{Letter template.}
+\end{figure}
+
+% -----
+
+% NOTICE
+
+\begin{figure}[htbp]
+\begin{Verbatim}[fontsize=\small]
+\documentclass[a4paper]{article}
+\usepackage{type1cm}
+\usepackage{times}
+\usepackage{color}
+\usepackage{rotating}
+\pagestyle{empty}
+\begin{document}
+\begin{sidewaysfigure}
+ \fontsize{2.5cm}{2.5cm}\selectfont
+ \centerline{\textcolor{blue}{\textbf{Please:}}}
+ \vskip 1cm
+ \fontsize{4cm}{3cm}\selectfont
+ \centerline{\textcolor{red}{DO NOT}}
+ \centerline{\textcolor{red}{SMOKE}}
+ \centerline{\textcolor{red}{HERE!}}
+ \vskip 1cm
+ \fontsize{2cm}{2cm}\selectfont
+ \centerline{\textcolor{magenta}{If you do,}}
+ \centerline{\textcolor{magenta}{you'll be \emph{deboned!}}}
+\end{sidewaysfigure}
+\end{document}
+\end{Verbatim}
+\caption{How to write a notice.}
+\end{figure}
+
+% -----
+
+% POSTER
+
+\begin{figure}[htbp]
+\begin{Verbatim}[fontsize=\small]
+\documentclass{article}
+\usepackage[absolute,showboxes]{textpos}
+\usepackage{color}
+\usepackage{framed}
+\usepackage{graphicx}
+\setlength{\TPHorizModule}{10mm} % standard unit of length
+\setlength{\TPVertModule}{\TPHorizModule}
+\setlength{\TPboxrulesize}{1pt} % box line width
+% start everything near the top-left corner
+\textblockorigin{0mm}{0mm}
+
+\begin{document}
+\setlength{\parindent}{0pt}
+\definecolor{shadecolor}{rgb}{0.9,1,1}
+\begin{textblock}{5}(0,0)
+% this block is 5 modules wide; height is
+% automatically determined
+\begin{center}
+ \begin{minipage}[c]{0.8 \linewidth}
+ \begin{shaded}
+ This block is placed with its top left corner at the `origin'
+ on the page, which has been set to (0mm,0mm). The internal
+ margin and the shading are provided by the \texttt{minipage}
+ and \texttt{shaded} environments.
+ \end{shaded}
+ \end{minipage}
+\end{center}
+\end{textblock}
+\begin{textblock}{6}(10,1)
+ \includegraphics[width=6cm,angle=-90]{gnuplot.ps}
+ This picture is at (10,1). Note that rotating it
+ by -90 makes it overflow the margin.
+\end{textblock}
+\begin{textblock}{5}[0.5,0.5](2.5,8)
+This block is at position (2.5,8), but because the optional
+argument [0.5,0.5] has been given, it is the centre of the block
+which is located at that point, rather than the top-left corner.
+\end{textblock}
+\begin{textblock}{3,4}(6,4)
+The dimensions of this block are 3$\times$4 cm.
+Its origin is position (6,4) on the page. Note that the text
+overflows the margin in some cases; you'll want to
+use the \texttt{minipage} environment to prevent that.
+\end{textblock}
+\end{document}
+\end{Verbatim}
+\caption{How to write a poster.}
+\label{fig:poster}
+\end{figure}
+
+% -----
+
+% The End
+
+\end{document}
diff --git a/info/latex4wp/midifile.mid b/info/latex4wp/midifile.mid
new file mode 100644
index 0000000000..77d83eab49
--- /dev/null
+++ b/info/latex4wp/midifile.mid
Binary files differ
diff --git a/info/latex4wp/tbx.eps b/info/latex4wp/tbx.eps
new file mode 100644
index 0000000000..2a514e6753
--- /dev/null
+++ b/info/latex4wp/tbx.eps
@@ -0,0 +1,840 @@
+%!PS-Adobe-2.0 EPSF-1.2
+%%Title: /home/guido/testi/latex/latex4wp-1.0.4/tbx.dvi
+%%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software
+%%CreationDate: Nov 5 15:06
+%%For:guido guido
+%%Pages: 1
+%%DocumentFonts:
+%%BoundingBox: 267 123 321 323
+%%BeginPreview: 54 200 8 400
+% 44888888888888888888888888888844888888888888888888888888888888888888888888888888
+% 8888888888888888888888888800
+% 44000000000000000000000000000044000000000000000000000000000000000000000000000000
+% 0000000000000000000000000044
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 880000000000ee220000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 880000000000ee000000880000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000055770000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 880000000000ffffffffff0000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000022000000880000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000066eedd66550000000088000000000000000000000000000000000000000000000000
+% 0000000099000000440000000088
+% 880000000000ff77ff00cc0000000088000000000000000000000000000000000000000000000000
+% 0000000099330000ff0000000088
+% 880000000000ff00ff00ff0000000088000000000000000000000000000000000000000000000000
+% 00000044ffffffffff0000000088
+% 8800000000009900ff33dd0000000088000000000000000000000000000000000000000000000000
+% 0000003333000000aa0000000088
+% 88000000000066eeffcc330000000088000000000000000000000000000000000000000000000000
+% 0000000066eedd44550000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 00000000ee33ff00cc0000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 00000000ee00ff11ff0000000088
+% 88000000000000000000880000000088000000000000000000000000000000000000000000000000
+% 000000008811ff88990000000088
+% 880000ffffffffffffffff0000000088000000000000000000000000000000000000000000000000
+% 0000000011bbffbb110000000088
+% 880000aa0000ee000000880000000088000000000000000000000000000000000000000000000000
+% 0000000000000000110000000088
+% 880000000000ee000000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000000000000660000000088
+% 88000000000088000044dd0000000088000000000000000000000000000000000000000000000000
+% 44ffffffdd888888aa0000000088
+% 88000000000066ddffcc330000000088000000000000000000000000000000000000000000000000
+% 22880000ee000000bb0000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 00000000cc000000ff0000000088
+% 88000000000000000000440000000088000000000000000000000000000000000000000000000000
+% 0000000077220088aa0000000088
+% 880000aa770000000000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000011bbffbb110000000088
+% 880000eebb00ffffffffff0000000088000000000000000000000000000000000000000000000000
+% 0000000000000000ff0000000088
+% 880000000022c8000000880000000088000000000000000000000000000000000000000000000000
+% 00dd0044ffffffffff0000000088
+% 880000000000cc330000000000000088000000000000000000000000000000000000000000000000
+% 0000002288000000770000000088
+% 88000000000055668866110000000088000000000000000000000000000000000000000000000000
+% 00000011dd110000000000000088
+% 880000000000000044ccdd0000000088000000000000000000000000000000000000000000000000
+% 00000000ee334455110000000088
+% 880000000022ffbbcc66110000000088000000000000000000000000000000000000000000000000
+% 0000000000005599990000000088
+% 880000000000ee888822000000000088000000000000000000000000000000000000000000000000
+% 00000000ffdd7711000000000088
+% 880000000000880033eeaa0000000088000000000000000000000000000000000000000000000000
+% 00000000cc114466220000000088
+% 880000000033ff99ffbb660000000088000000000000000000000000000000000000000000000000
+% 00000000883388bb880000000088
+% 880000000000ffbb4400000000000088000000000000000000000000000000000000000000000000
+% 00000000dd995500000000000088
+% 880000000033bb000000000000000088000000000000000000000000000000000000000000000000
+% 00000000ff000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% a88888888888888888888888888888a8888888888888888888888888888888888888888888888888
+% 8888888888888888888888888888
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000008822000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000022115520000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000228877000022880000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088002299bb22000088cc881100000000000000000000000000
+% 0000000000000000000000000088
+% 8800000000000000000000000000008833ff77000055cc7700005500000000000000000000000000
+% 0000000000000000000000000088
+% 8800000000000000000000000000008800220022bbbb110000008800000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000077bb224400000033aa00000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000033440000556688dd3300000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000003344110033441100000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000665500005500000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000022993311008800000000000000000000
+% 0000000000000000000000000088
+% 8800000000000000000000000000008800000000000000004411004422aa00000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000774488dd3300000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000005566114455550000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000aa0000000000000000
+% 0000000000000000000000000088
+% 880000000000000000000000000000880000000000000000000022330044cc660033000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000077bb99110011aa220000000000
+% 0000000000000000000000000088
+% 880000000000000000008800000000880000000000000000001177bb77000066bb66440000000000
+% 0000000000000000000000000088
+% 880000ffffffffffffffff00000000880000000000000000000000002244bb881100330000000000
+% 0000000000000000000000000088
+% 880000aa0000ee00000088000000008800000000000000000000001199aa22000011aa2200000000
+% 0000000000000000000000000088
+% 880000000000ee000000ff00000000880000000000000000000011cc4400000066bb664400000000
+% 0000000000000000000000000088
+% 88000000000088000044dd0000000088000000000000000000000055000033bb8811000000000000
+% 0000000000000000000000000088
+% 88000000000066ddffcc330000000088000000000000000000000000221133770000445555000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000aa77001100000000aa000000
+% 0000000000000000000000000088
+% 88000000000066eedd6655000000008800000000000000000000000000000022330044cc66000000
+% 0000000000000000000000000088
+% 880000000000ff77ff00cc00000000880000000000000000000000000000000077bb991100000000
+% 0000000000000000000000000088
+% 880000000000ff00ff00ff000000008800000000000000000000000000001177bb77000000000000
+% 0000000000000000000000000088
+% 8800000000009900ff33dd0000000088000000000000000000000000000000000022000000000000
+% 0000000000000000000000000088
+% 88000000000066eeffcc330000000088000000000000000000000000000000000000000000000000
+% 1100000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 7700000000000000000000000088
+% 880000000000bb0000ff6600000000880000000000000000000000000000000000000000000022bb
+% aa44000000000000000000000088
+% 880000000000ff000000ee000000008800000000000000000000000000000000000000000088bb33
+% 0033000000000000000000000088
+% 880000000000ff000022ff0000000088000000000000000000000000000000000000000044660000
+% 0044660000000000000000000088
+% 8800004466ccffffffff880000000088000000000000000000000000000000000000000022220011
+% 88bb881100000000000000000088
+% 880000000011bb0000000000000000880000000000000000000000000000000000000000001177cc
+% 6600003300000000000000000088
+% 88000000000000000000880000000088000000000000000000000000000000000000000000009911
+% 000011aa22000000000000000088
+% 88000000000000000000ff0000000088000000000000000000000000000000000000000000003311
+% 0066cc6644000000000000000088
+% 880000ffffffffffffffff0000000088000000000000000000000000000000000000000000000055
+% ee88110000000000000000000088
+% 88000088000000000000a80000000088000000000000000000000000000000000000000000000033
+% 8800000000000000000000000088
+% 880000aa770000000000ff0000000088000000000000000000000000000000000000000000000000
+% 1100000000001111000000000088
+% 880000eebb00ffffffffff0000000088000000000000000000000000000000000000000000000000
+% 0000000000000066000000000088
+% 88000000000088000000880000000088000000000000000000000000000000000000000000000044
+% 44441100001188ff220000000088
+% 880000000000000000000000000000880000000000000000000000000000000000000000000000ff
+% 0000000066ee8811440000000088
+% 880000000000bb0000ff660000000088000000000000000000000000000000000000000000000000
+% 220044ccbb220000000000000088
+% 880000000000ff000000ee0000000088000000000000000000000000000000000000000000000000
+% 66aadd4400000000000000000088
+% 880000000000ff000022ff0000000088000000000000000000000000000000000000000000000000
+% 11aa000000000000000000000088
+% 8800004466ccffffffff880000000088000000000000000000000000000000000000000000000000
+% 0033000000000000000000000088
+% 880000000011bb000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% a88888888888888888888888888888a8888888888888888888888888888888888888888888888888
+% 8888888888888888888888888888
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000880000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 880000ffffffffffffffff0000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000088000000000000a80000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000990000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000088ffffff880000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 880000000000ff114400bb0000000088000000000000000000000000000000000000000000000000
+% 0000000000000000dd0000000088
+% 880000000000aa008811ff0000000088000000000000000000000000000000000000000000000000
+% 44ffffffffffffffff0000000088
+% 880000000000772255ffaa0000000088000000000000000000000000000000000000000000000000
+% 2288000000000000770000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 00000000000000bbbb0000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000066eeffffcc0000000088
+% 88000000000000000000ff0000000088000000000000000000000000000000000000000000000000
+% 00000000ff224411880000000088
+% 880000000000bbffffffff0000000088000000000000000000000000000000000000000000000000
+% 00000000ee003300ff0000000088
+% 880000000000ff000000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000099bb6611ff0000000088
+% 880000000000dd000000440000000088000000000000000000000000000000000000000000000000
+% 00000000447711ddc00000000088
+% 88000000000088110000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000088eeffffff0000000088
+% 880000000000ffffffffff0000000088000000000000000000000000000000000000000000000000
+% 00000000ff110000dd0000000088
+% 880000000000ff000000bb0000000088000000000000000000000000000000000000000000000000
+% 00000000ee110000440000000088
+% 880000000000bb110000880000000088000000000000000000000000000000000000000000000000
+% 0000000088ffffffff0000000088
+% 880000000000ccffffffff0000000088000000000000000000000000000000000000000000000000
+% 00000000ee110000dd0000000088
+% 88000000000055000000ff0000000088000000000000000000000000000000000000000000000000
+% 00000000ff000000440000000088
+% 88000000000022000000880000000088000000000000000000000000000000000000000000000000
+% 0000000088110000dd0000000088
+% 880000000000ee220000000000000088000000000000000000000000000000000000000000000000
+% 00000044ffffffffff0000000088
+% 880000000000ee000000880000000088000000000000000000000000000000000000000000000000
+% 0000002222000000770000000088
+% 88000000000055770000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 880000000000ffffffffff0000000088000000000000000000000000000000000000000000000000
+% 0000000099000000440000000088
+% 88000000000022000000880000000088000000000000000000000000000000000000000000000000
+% 0000000099330000ff0000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 00000044ffffffffff0000000088
+% 88000000000033ddffcc330000000088000000000000000000000000000000000000000000000000
+% 0000003333000000aa0000000088
+% 880000000000bb110055cc0000000088000000000000000000000000000000000000000000000000
+% 0000000011bbff99110000000088
+% 880000000000ff000000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000088441177880000000088
+% 88000000000088000033dd0000000088000000000000000000000000000000000000000000000000
+% 00000000ee000000bb0000000088
+% 88000000000066eeffcc330000000088000000000000000000000000000000000000000000000000
+% 00000000cc000000ff0000000088
+% 88000000000000000000440000000088000000000000000000000000000000000000000000000000
+% 0000000077330055aa0000000088
+% 88000000000000000000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000011bbffbb500000000088
+% 880000000000ccffffffff0000000088000000000000000000000000000000000000000000000000
+% 0000000022000000bb0000000088
+% 880000000000ff000000bb0000000088000000000000000000000000000000000000000000000000
+% 00000000ffffffffff0000000088
+% 880000000000cc000000880000000088000000000000000000000000000000000000000000000000
+% 00000000ff000000330000000088
+% 88000000000033220000ff0000000088000000000000000000000000000000000000000000000000
+% 0000000088110000dd0000000088
+% 880000000000ffffffffff0000000088000000000000000000000000000000000000000000000000
+% 00000044ffffffffff0000000088
+% 88000000000022000000880000000088000000000000000000000000000000000000000000000000
+% 0000002222000000770000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% 88000000000000000000000000000088000000000000000000000000000000000000000000000000
+% 0000000000000000000000000088
+% a88888888888888888888888888888a8888888888888888888888888888888888888888888888888
+% 8888888888888888888888888888
+%%EndImage
+%%EndPreview
+save countdictstack mark newpath /showpage {} def /setpagedevice {pop} def
+%%EndProlog
+%%Page 1 1
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips /home/guido/testi/latex/latex4wp-1.0.4/tbx.dvi
+%DVIPSParameters: dpi=600, compressed
+%DVIPSSource: TeX output 2002.11.05:1506
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
+1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
+0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
+sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
+rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
+gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
+/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
+/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
+A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
+get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
+ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
+fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
+{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
+chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
+1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
+forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
+/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{A length product length le{A length product exch 0
+exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
+end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
+grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
+imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
+exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
+fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
+delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
+B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
+p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
+rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics
+exch def dict begin Encoding{exch dup type/integertype ne{pop pop 1 sub
+dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def}
+ifelse}forall Metrics/Metrics currentdict end def[2 index currentdict
+end definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{
+dup sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1
+roll mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def
+dup[exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}
+if}forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}
+def end
+
+%!
+TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
+/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
+/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
+/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
+/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
+X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
+/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
+/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
+{userdict/md get type/dicttype eq{userdict begin md length 10 add md
+maxlength ge{/md md dup length 20 add dict copy def}if end md begin
+/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
+atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
+itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
+transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
+curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
+pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
+if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
+-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
+get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
+yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
+neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
+noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
+90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
+neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
+1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
+2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
+-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
+TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
+Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
+}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
+save N userdict maxlength dict begin/magscale true def normalscale
+currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
+/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
+psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
+psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
+TR/showpage{}N/erasepage{}N/copypage{}N/p 3 def @MacSetUp}N/doclip{
+psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll newpath 4 copy 4 2
+roll moveto 6 -1 roll S lineto S lineto S lineto closepath clip newpath
+moveto}N/endTexFig{end psf$SavedState restore}N/@beginspecial{SDict
+begin/SpecialSave save N gsave normalscale currentpoint TR
+@SpecialDefaults count/ocount X/dcount countdictstack N}N/@setspecial{
+CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto
+closepath clip}if ho vo TR hsc vsc scale ang rotate rwiSeen{rwi urx llx
+sub div rhiSeen{rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR
+}{rhiSeen{rhi ury lly sub div dup scale llx neg lly neg TR}if}ifelse
+CLIP 2 eq{newpath llx lly moveto urx lly lineto urx ury lineto llx ury
+lineto closepath clip}if/showpage{}N/erasepage{}N/copypage{}N newpath}N
+/@endspecial{count ocount sub{pop}repeat countdictstack dcount sub{end}
+repeat grestore SpecialSave restore end}N/@defspecial{SDict begin}N
+/@fedspecial{end}B/li{lineto}B/rl{rlineto}B/rc{rcurveto}B/np{/SaveX
+currentpoint/SaveY X N 1 setlinecap newpath}N/st{stroke SaveX SaveY
+moveto}N/fil{fill SaveX SaveY moveto}N/ellipse{/endangle X/startangle X
+/yrad X/xrad X/savematrix matrix currentmatrix N TR xrad yrad scale 0 0
+1 startangle endangle arc savematrix setmatrix}N end
+
+
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 33 /exclam put
+dup 39 /quoteright put
+dup 73 /I put
+dup 97 /a put
+dup 100 /d put
+dup 101 /e put
+dup 105 /i put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 114 /r put
+dup 116 /t put
+dup 119 /w put
+readonly def
+/FontBBox{-34 -251 988 750}readonly def
+/UniqueXX 5000794 def
+currentdict end
+currentfile eexec
+9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0
+0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3
+79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3
+2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8
+b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d
+823385fe55f3402d557fd3b4486858b2a4b5a0cc2e1bf4e2a4a0e748483c3bcf
+5de47cc5260a3a967cac70a7a35b88b54315191d0423b4065c7a432987938c6b
+edad3b72ad63c2918b6e5a2017457e0d4ebc204a520640fd7c4d05e35ea5486f
+a43d0e970787203855daccb1ed0b16325828b13b7c767a1a58c87902f0546ea5
+404440fa6526975783c2d7a9572b8e5d5176bac598b8960609f49016aebf3763
+89c1adfe6a1ffc0c53b3acd9d168ec3a278fd4f1d9b085dc2df701346c9d0887
+3d230a161692b42a45bb5da343b4edd839dd60685a59aaa49fc65cd8e2ad2a9c
+5cab953495172a1a9f40d5f38e922443a519dd96f667201a408bd1d89e35f4ab
+98e2f68c3366efc14b5afe1018d9c845d808d4f8e07ea8168518a171ab4d6e21
+70eeac099eb7ef46eb9781384da1fac3b3133bb718bc80082eaea88759745188
+f266b31d0c7e791d633f16ed94e05517a32163e74cbd96dc5db066f2a5313d6d
+7f09465608cb404613e0f058073af000e5bdfafbbf9da0c0d5c02a3447f2cdc1
+f56481901e34265c26d331ac3f85bdcbc7c51ef9eddf2b9c189c5253f8e74282
+d6f053d7d183ae17ea175e5ebc401e67d21a9fea139cbbf3bb1358c713a75843
+b39a69aa2b1a7b975f53ff22d1dc3bdf7acd17afa1da21568310c68241b31d3d
+03bf404bd30baf9cc19c75b958bce7155f03cb0cfe2cae0327aad4b603284a51
+7c26de75b8c6f6aaa9debe4aec08ca4b646d787a9dfac85b2c01760e9c6c6162
+fbbc67dbd0796831e00c477d8e23c375ffab46d289be9d2328aec2b7534ae4cd
+d782ec2453e7787f6e6b4537b46c01545cba6f90b8e9a1bccac1937bceeaa5e7
+8e9f368ce067a0a31da98bfbb545be555a7270f0031fadd4f9b186629e5d2c5f
+d264f8f24cd5a1c0f68399ff4b29fd77c4a54d8296523410a54442ae159a95d5
+a03d4e0cc760df8338035b4722eea7e781b168e6013b3599e7b797e7607d7ab4
+4e5f5dc82c150b5c866daaf9d7e1b55a9994eeadbf128d8ee06bc728472e4473
+b4e6d548b8af2e64dc9b380959b5f76d627f6008d9ff1b47044f1b463f30289f
+2389a8d0acd64337626f379e36c16dd568fe581c7bffe00863037777786e3aaf
+64bd0955f8342955b070649af3443f69ecb105eaf61c37d2bec9f188210d4a65
+61c260586a0f3e72c99299b7fc30032bc17f9bb88c8d57305a6dda6399e259ef
+7069ff5b2a8ffad44210df78d0ab5420415e78d6d0a341261bb14aff65a65be6
+2a91c2a31029f8c4f149229e6480bb98200ba493611a4af72a4a418bb9a4a61a
+8cff2771d2c60d55d2a962937acfcf803c4a814a0899ec52ff6c44bb39b3e39b
+9e22ddc649f4e51352fb1cfe09a1438937d7f0db807ff38aa4953ea5bb124436
+13360690f0b9e51dda6ce317762aabbf37717dc65fe35bd51ea30c8c281c82e0
+eda0d36f76b0c6e940a19a858a321c33c0c6361eaaf9def7d1bf37233a960de2
+1d8f132cb0f04564de64be08285c053d915ac7c8054de2f3edd7209dc88ae52a
+eb24fb86bd4c7d19afe89650803e65ed8adc3bd1d92b3bdb24c710afe7ec28b4
+e66d4fb385da0730d55222048a1f0c5465015f226bcf279f8d2a60f8bd3a61ad
+9b19cd35e7ffb190a3fd9d962884b3a9427b29cb23b3edfd418090738d17a68b
+eddee4eaa4962a1b91bab85460b0240d8466f2a909cd2653f23034ecd328b14a
+bf7b809dd6f12b83e9de940d6372001342911af68e7bed36140d7993cc03d9cc
+af7bad833b66e36b367aa23b6f59ea85e407b6bb108b07ae197726c334fe52a3
+a5dca598b35167661a7878f4564084f28392ee4abe6589da934d706915028319
+e814473deb8c5e97dc2f343017275c992b59b101fe562370653cb49ab2c61a28
+b6be5d052f890fe57fa2b9fd7c4ac0d1eaaca2cd1ceb04080426c8c0be4f423b
+995051332350f3ad9affbb350f77e4b1cfef37c1ad8647d516d781629136acdf
+a916593aff8fcf1d2a1ed7e838d4574534f82e883bcf3c486fe04a636e68fde0
+7819d4be15f6329b54813260816e22203e24df36526e5d4ee4783f15ac2ceb74
+407fd250052b4639b51c7fcc80b0d634e089b0438303350d8ccf8434e9142c67
+1aa1fe5b4363694c0b4091acdc13b20521b94e6ede89728b2811d40bc5b909bf
+6d10bc045ff62af936e39b3af87782aef7c067489862cdae4120c6bbe71df595
+4f906867a72e22896c58ea299132526de702c6d5f99dbb4d5bc2b8c7cf26a14a
+06b39e350885da4712288e2a5a5d1d1ca1c24d09a2d92ad9833b65dcc322b9c6
+92b79384058ff13ca2a7c732a1a886d9a14dcf3ac0580592b62faec307b8fea4
+df28693cf5719dd96570488de8216584cff39053cc59bdad410d75050ce88405
+e43948fd33bf70ace2967b15d52bd22bcc1b93aa0bef97ff25a081c04c7fcc39
+339ee615418345890adcb5141c8064605dbdde2112bb142342a18c8ad3361b73
+72d946ce04072ae0e030e7e2f82b08945663c1078575ce89c777a5316fdd08a3
+739b7e2bc2eb76070ba7807da6017e1c7092de9b52af0e2018cd33ef780d380a
+cacfea3073c3510f0d31263f944cc08169b6c630313e67ce3e80470cd2ac7f0a
+45799d33a328e04430d5f1d3f4b21bc59a4f165dc40c1885c24ef43138450681
+4ed97d01a1d4ecf9e836a18d89cd707c4578c9f1db1f219538f60be15877ba9e
+cf32bd61eda75316d1328ac9aebc0dbacf76fd7122175beb489fcb06ec95061f
+69d7c2e95a967b45eaa62d30ca1d69cccecc7a70b51d9966a2ac277be334ee76
+723001cce9eb018ed3a58c34706a45544ca5281dd510d30931b80a83e5aa18d9
+3ddb1e16891177465a58c85a91cf0fd7e326982ff0d8ac69e69ca09e52818f44
+4034ec415e1f9121ded06fefa9d529e097eb23e95a7acffb45e6e4299ee7c2aa
+532eac6ed902398b5bda5efbaff9485c3cc8b10621b2c5fae24047baf09cedbc
+d246d3233fa901e13fcaa3e8fa821b2d42977b30356df0e1e530d10b93a0057f
+1a33f6bdb67aa280f664db5ea4602c20666ee3d809a80dd9003c0201226e06e2
+d51f553f9794503978fe90c4d8aaa64936a853769bafc2e5f46103f1ce9be6c7
+3f0199771b95d102e1be5e668c5d6e87f287a85ac77938344cbf9d63f7537d66
+05697c8006e49ae73bce2fd85d5623d8a6d56e21c6881d252f712960c210bccf
+a0d80def2e0847885e7af26671ecbfe4b6efef23e7502a5a45776cf8fa62910a
+6ed738de32e54c259895a7a68c5267e195710f823231d1c4c3b2d27f61116cc9
+a1433cee0a0ce86a23fb05d469e9087730666b686c0e18ce94167698bd8ad3be
+ad662786c701df15f25528305897700f20ca66cf1713b8d74b50a45c61e55436
+ec7e0ec97cd6268645e923057a6c78d55cef6e6431a0c6ef5bc5930f1bdfaaf3
+82f5cc7464ea678b7b3386ce3b2ea3942ca5dd23af73acad4cacbec763569fc6
+6578d276eff0068741ddb34c7e09eb320b6fcb9d0f2586160b370dcc21c8e09c
+2179a79512cd425e2bc8a857714f9afed8d6e2fb8ab2c26ecdb08d34febd63c7
+1a7b97c3eb62cf7c5c02db78682bdb794a2f57a6db23ef509bda7d62d8f215b0
+462613544ba7e4bf98e71303f5c723d74fa5ac8f6d2b1902ee7f3c33825dac9f
+2501e3aaeef2ec4d35e8e9f7a4a39fed23227aca8ce2cfc21263c98ffbcc7109
+0dfd10984a788ffb72d27b4c7fd28944d87f34f4815860e3cd50a8f192fdf057
+e79f7af9d88fee443bfa24e118192a4611d459e5998cdaf58cc83f907d31d61f
+f20f80f82aefeceb1a6405ecb3585f67798d78a1516926eebf9a2d770ce477c1
+19c74014503dc5fe1ac27ae248b33804bba1003b49c67e25fd91057434f21a3a
+11ac2a999c21445de5798fa59a009d48e196d94f9f75ee4be1ce52bdf03fd5ed
+5c751785e1cb60658b3f12fdb96d2edd76d3ef7b28
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+
+
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMBX12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMBX12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 97 /a put
+dup 100 /d put
+dup 101 /e put
+dup 105 /i put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 114 /r put
+dup 116 /t put
+dup 119 /w put
+readonly def
+/FontBBox{-53 -251 1139 750}readonly def
+/UniqueXX 5000769 def
+currentdict end
+currentfile eexec
+9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0
+0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3
+79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3
+2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8
+b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d
+823385fe55f3402d557fd3b4486be79011d1f5bfae5c1f476ee6f05eb1d2caeb
+269958b194521197b312fcced4867f3c8fbd030bd715d8ffda1dcd454b174e7a
+1a97b59fe770e67702519d9d9b23d61ac08424d555242a8ca08c49aef300945d
+99b999a79ce74804ae6bfde623f4463371442f6523a5f6ce19c839a708c02513
+2e22c696c8ccade45680e5197189d0f98e7f0d5f955e353970b392cf530a68cc
+56b0035ddfbf206c3074beeb0739dcbca272a6e629fb7aea2c5ba7bae50c7b4c
+a595df78200c352997ec3ee564df229fbb5473f5e8ccb1cc0153e9a7e299a8ea
+a29b69d1b622b1f0cffc58291248759607d91150cb0651120970dc9f743bebef
+44f6ae92facec57658999c8bf01f60611560043962c0695e1bb87d090e0fdaab
+659d6557208a660be9aeef8ae55f71b8bc76394d792967e41bd8023b6e7f8c3d
+9987d5e54c53bf2bbb32855b946473b44833bd78873df8e4c7e668ffff25aabb
+8da4148f744b9d0524d6cb8281247b3052cc5d66f3f1bcf8a56a3fb446ea587b
+d8be30257652cee035628aeddfd8283b5ad21b8b1480ad24d898970ac8a1e33e
+543ce4e3c48f9ee621c5ce3e8ae930f890011b630866c988606068d9e92396eb
+f51bb3db204505fc3d09d4701ac703a14d92bbfe27bd7411b363a88e33a8e9a8
+025ac31f21e73dc52b333b918d0b1270c54873a490222d041a66e0192612be6d
+2c88958a8f70c10390146ee5091df020ab97675e8e6b9e705fbe5d4a561453fc
+99aacd038d0c9d92ce58c764a1a6cd497ec3cef52975ae84cc7e1d0401a7fcd4
+d5e847133c58d736e373745cbfa06237a1ee4ff0706bcc02e316bfe85ec2f0b4
+2dc3c3bb232c4045115c86f37c3bf3aa17b765020265aa22553707335d7fcd8d
+9f619e844ae579bedcd8326b4e97b5ec744e172232ba7d7752786a46fbfc4f60
+820702802e7b394104c5b0b18dec681a34a37f8aa072ff2a47ff6d1f09ccf799
+5aa27d14f2204428267e1960d3b2ca914d77328d299603355a17d1919b60e3aa
+409b52d31b8095b2fb43bcaa653f4cf7b1300b9031c76fb63a93050c7ce80ba0
+7765c289b42b9c4515e329fe655270bc75a7668f88edaf282629d5b78c038c33
+bd0ce5833d76227f76456823e5914e45ab1dc0fe2b568a10133204fd3e238fbd
+eaa6e07926e69cbb8655ec51c133419d5de05883965cf26ec8cc7d998607e02b
+ceb032ee6ca6dc422cc0533a8d28e3c8c6b09473806b83054eb98473d0e69039
+46e22a21cc79202f9d6520eb8e93ce3c05afae28d7f3e848f61ca6de03189d1c
+ff88e548ae82ade0dafd44104f6c8c0e2c67478fe2de32ad65d26c1dae55b441
+3a326cd2bba19ad0e967049402d799019865568ec0a73790f1ffabbdd174556a
+69e38fc6ea782920f177f11cf0bccd075f9b14fd1e81902801ee2015e63e09d5
+2122f1aafd2d506ab29eeab311454bb07ed103e9e44b9d9b6dda60c17fe2590a
+5692064674331cc51457d52e6fcf4024a0f0ecb57c936a905a70406773ff4b28
+9ce5fd4438a2cd13fcf3b71ba7a0fe81cc1ea2d7929cb3df3c77d72c71b85f67
+6797dee62578d4575c8f164b83da483ce879bcf700db2ce33aa0a78b655bf2e8
+b88602cd0350a1f64182d09af75fd7cde7f2d1fed68f99814afea07e5a6ac319
+d1f333c29b079d261a4a5f725962e438122ca54da4ba0ab44e4aa3ec116bd565
+425427e0ad08b87113b4a57e4e2decf7f93f6df85ff6e2d4efc66d8cb6c1eb08
+357dc201895fa2b7258592143424dd6561bbcbb889bdc36a6dbc9e4212cd526d
+d097575be079384d105b9617c0f90881a0e8badc724074ab3afd70e64e3f5e6b
+98b25fa62c187764ff586d3459587131da1dac8f6701ac26e526bb1ba833117d
+3aba4c5921d8c793ac08bb273dc106050302c048feb532559f6891c6548fe532
+a7e27629b9412420393f882187e42f5121be603e5413842859183a7087b32974
+ac1ddd0804b69c1f44d26b1165a0be013373067eb6c360dc75d161e4ad36ae54
+ef4f78b5cf993e8ec04e05463304545a9c5d4278c34c5b9f3153ed439181a0b7
+fd6af42983b50324b06c3fea8fbac1f0bcca91dedb4f36433bcbffbe9b891d5f
+de7a02f457ff6c4a21fa836b3898595914fd27ce9457424bed2df9ff581f157c
+c00f2966bb97c4403943f87c249b481a491e97e2979612bb8e514b027d11001f
+c3c528feb7598cf3ce62ca65e2de250f25b7106a7aaa086781f0a13472635d67
+0557d6f410e3a0e38e5da4b446879f7357ec4530aa1025959f7fb9c7c88b25b3
+b18451ab154211768d4fb01d1b88c6522b3b0bb2a345a13022c6e489ffb8d11d
+b888d7fda7b851018ce7984346284db9cd26001269dbd3de729a0a777e91aa70
+e3da194326c748ffdf86380e766d385156ac2e6b70b5333ace21f42831e56f1e
+03ddbb055c555f364d1e7e37914cac4497618a55ea17730cf9becd7d5b201545
+39c0a1bcfb07dd6110f279dcbbedc308d95d2e63f71e28e7a383b00e82b08801
+e4559a966e9ff0fd8d96f41e9841b1f440204b34a08f05674f94c227611220fd
+c8e167d982c6413f0517867cc982c6c32415fd3758b281535cf5cac6e379a5bb
+de482bb92fa4b956166b81687a5eae1478e6cf099f4b65ac7c24fdf1eea04da1
+54c873239438be69ee9bd23f9d3e95e8cabbbe97dfecd6500c792d8360ef09af
+da3d9755efc06d7b36530d7e93a31f40b9af9b39b8f8e6d2a227548bf544dd1b
+84ffe40cf96fe26dfea46001e3d8d3c190043e7459c23da5ad61035ec437b711
+232cb75de88b31646059c6cd991d2f1207a15530fd38511549ca179dc8d532ba
+5beee844029ef89383b5d8c413e0409333f531cf7a1ece17a068436a0c317747
+3a8b9f6bc0eb4e612034541bb12595fca90d536c94ae84e6bae02fb549ad7ed1
+2733dc842ac4b06a73370fc383ec83db61f59fd1aa120d065c4b37b1766cc652
+030cc56dafbf2945e3c13af232430bea37f7f37c792c4d81d96b2b532aa6a43d
+3b80c406d44af8d500b6e6bbe7c91c013e4513227d0cf65d0ebc4fcd3ab0624c
+ea94f91d9cbcda988f7495c655e8b764124e388563a7651677085c72dd95a265
+f626fe264d91e3ec91b54b34c74238ec6688d91366d7743e5301ecc4aeb3f788
+b27d8e57942c1c44c65a8a94b734cb47a2cfab6347a3b82276610a32367f25de
+c1676b80ec70869a42afe6ada328d66031bae92f023343988def5301ca693596
+ba965ab648bde769df0d8e57d766d6785006d7df70147647d57a19addc422282
+ff94179becd48197
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+
+TeXDict begin 39158280 55380996 1000 600 600
+(/home/guido/testi/latex/latex4wp-1.0.4/tbx.dvi) @start
+/Fa 136[70 2[38 1[38 2[49 54 81 27 2[27 3[43 54 2[49
+23[35 33[27 5[27 33[{}14 99.6264 /CMR12 rf /Fb 136[81
+2[44 1[46 2[56 62 93 31 2[31 3[51 62 2[54 97[{}11 99.6264
+/CMBX12 rf end
+TeXDict begin
+
+1 0 bop 1876 5388 a
+ gsave currentpoint currentpoint translate 90 neg rotate neg exch neg
+exch translate
+ 1876 5388 a 1876 5146 1654 4 v 1876
+5266 4 121 v 1929 5230 a Fb(normal)p 2322 5266 V 104
+w(tilted)p 2924 5266 V 340 w(wider)p 3527 5266 V 1876
+5269 1654 4 v 1876 5581 4 312 v 1929 5545 a Fa(normal)p
+2322 5581 V 2410 5545 a
+ gsave currentpoint currentpoint translate 30 neg rotate neg exch neg
+exch translate
+ 2410 5545 a Fa(I'm)33 b(tilted!)2841
+5545 y
+ currentpoint grestore moveto
+ 2841 5545 a 2924 5581 4 312 v 137 w Fa(wider)p
+3527 5581 V 1876 5584 1654 4 v 1876 5388 a
+ currentpoint grestore moveto
+ 1876 5388
+a eop
+end
+userdict /end-hook known{end-hook}if
+%%Trailer
+cleartomark countdictstack exch sub { end } repeat restore
+%%EOF
diff --git a/info/latex4wp/tbx.pdf b/info/latex4wp/tbx.pdf
new file mode 100644
index 0000000000..29b814ea36
--- /dev/null
+++ b/info/latex4wp/tbx.pdf
Binary files differ
diff --git a/info/latex4wp/tbx.tex b/info/latex4wp/tbx.tex
new file mode 100644
index 0000000000..be74383005
--- /dev/null
+++ b/info/latex4wp/tbx.tex
@@ -0,0 +1,18 @@
+\documentclass[a4paper,12pt]{article}
+\usepackage{rotating}
+\usepackage{tabularx}
+
+\begin{document}
+\pagestyle{empty}
+
+\begin{sidewaystable}
+ \begin{tabularx}{7cm}{|l|X|X|}
+ \hline
+ \textbf{normal} & \textbf{tilted} & \textbf{wider} \\
+ \hline
+ normal & \rotatebox{30}{I'm tilted!} & wider \\
+ \hline
+ \end{tabularx}
+\end{sidewaystable}
+
+\end{document}