diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /info/latex4wp-it |
Initial commit
Diffstat (limited to 'info/latex4wp-it')
-rw-r--r-- | info/latex4wp-it/COME-COMPORRE | 24 | ||||
-rw-r--r-- | info/latex4wp-it/README | 6 | ||||
-rw-r--r-- | info/latex4wp-it/dat2tex | 28 | ||||
-rw-r--r-- | info/latex4wp-it/exa.sty | 118 | ||||
-rw-r--r-- | info/latex4wp-it/gnuplot.gp | 14 | ||||
-rw-r--r-- | info/latex4wp-it/gnuplot.pdf | bin | 0 -> 47724 bytes | |||
-rw-r--r-- | info/latex4wp-it/inkscape-tb.png | bin | 0 -> 19507 bytes | |||
-rw-r--r-- | info/latex4wp-it/inkscape.png | bin | 0 -> 80642 bytes | |||
-rw-r--r-- | info/latex4wp-it/latex4wp-it.pdf | bin | 0 -> 676307 bytes | |||
-rw-r--r-- | info/latex4wp-it/latex4wp-it.tex | 3426 | ||||
-rw-r--r-- | info/latex4wp-it/midifile.mid | bin | 0 -> 6766 bytes | |||
-rw-r--r-- | info/latex4wp-it/tbx.eps | 840 | ||||
-rw-r--r-- | info/latex4wp-it/tbx.pdf | bin | 0 -> 7850 bytes | |||
-rw-r--r-- | info/latex4wp-it/tbx.tex | 18 |
14 files changed, 4474 insertions, 0 deletions
diff --git a/info/latex4wp-it/COME-COMPORRE b/info/latex4wp-it/COME-COMPORRE new file mode 100644 index 0000000000..99aacb44e2 --- /dev/null +++ b/info/latex4wp-it/COME-COMPORRE @@ -0,0 +1,24 @@ +Come comporre questa guida +-------------------------- + +Per comporre questa guida servono alcuni package che potrebbero +mancare nella vostra distribuzione. Per includerli, si fa cosi' +(Linux/Unix): + +- scaricate il pacchetto mancante dal CTAN. Ad esempio, supponiamo che +non abbiate slashbox.sty; si scarica da +http://www.ctan.org/tex-archive/macros/latex/contrib/slashbox + +- eseguire questi comandi: + +$ mkdir -p ~/texmf/tex/latex/slashbox +$ cp slashbox.sty ~/texmf/tex/latex/slashbox +$ texhash ~/texmf + +- ripetere i passaggi per ogni pacchetto mancante + +- componete la guida con pdflatex: + +$ pdflatex latex4wp.tex; pdflatex latex4wp.tex; pdflatex latex4wp.tex + +Enjoy! diff --git a/info/latex4wp-it/README b/info/latex4wp-it/README new file mode 100644 index 0000000000..5829c40d7b --- /dev/null +++ b/info/latex4wp-it/README @@ -0,0 +1,6 @@ +LaTeX4WP: Una guida LaTeX pensata specificamente per utenti di +programmi di videoscrittura. + +"LaTeX per utenti di word processor" e' una guida che aiuta a +trasferire concetti e tecniche della videoscrittura nell'ambiente +LaTeX. Si prefigge di aiutare gli utenti a passare a LaTeX. diff --git a/info/latex4wp-it/dat2tex b/info/latex4wp-it/dat2tex new file mode 100644 index 0000000000..f7378a5197 --- /dev/null +++ b/info/latex4wp-it/dat2tex @@ -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-it/exa.sty b/info/latex4wp-it/exa.sty new file mode 100644 index 0000000000..1e1cbe5e65 --- /dev/null +++ b/info/latex4wp-it/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-it/gnuplot.gp b/info/latex4wp-it/gnuplot.gp new file mode 100644 index 0000000000..d7e8c0299c --- /dev/null +++ b/info/latex4wp-it/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-it/gnuplot.pdf b/info/latex4wp-it/gnuplot.pdf Binary files differnew file mode 100644 index 0000000000..3695056958 --- /dev/null +++ b/info/latex4wp-it/gnuplot.pdf diff --git a/info/latex4wp-it/inkscape-tb.png b/info/latex4wp-it/inkscape-tb.png Binary files differnew file mode 100644 index 0000000000..9374455bb4 --- /dev/null +++ b/info/latex4wp-it/inkscape-tb.png diff --git a/info/latex4wp-it/inkscape.png b/info/latex4wp-it/inkscape.png Binary files differnew file mode 100644 index 0000000000..e2262d439e --- /dev/null +++ b/info/latex4wp-it/inkscape.png diff --git a/info/latex4wp-it/latex4wp-it.pdf b/info/latex4wp-it/latex4wp-it.pdf Binary files differnew file mode 100644 index 0000000000..0f1becc67d --- /dev/null +++ b/info/latex4wp-it/latex4wp-it.pdf diff --git a/info/latex4wp-it/latex4wp-it.tex b/info/latex4wp-it/latex4wp-it.tex new file mode 100644 index 0000000000..511e654997 --- /dev/null +++ b/info/latex4wp-it/latex4wp-it.tex @@ -0,0 +1,3426 @@ +% latex4wp.tex -*- LaTeX -*- +% +% LaTeX per utenti di word processor +% di Guido Gonzato, guido.gonzato (at) gmail.com +% +% Questo documento \`e stato scritto con l'editor Jed, +% http://www.jedsoft.org/jed, e il mio nuovo LaTeX mode +% disponibile presro i mirror CTAN mirrors, +% http://www.ctan.org/tex-archive/support/jed +% +% Ultimo aggiornamento: 8 Gennaio 2015 + +% debug +% \overfullrule=15pt + +% TO DO: rivedere tutti i \medskip e \bigskip, forse vanno tolti + +\documentclass[a4paper,11pt]{article} +\usepackage[margin=2.5cm]{geometry} +\usepackage[italian]{babel} % lingua italiana +\usepackage{color} % colori +\usepackage{ifpdf} +\ifpdf + \usepackage[pdftex]{graphicx} + \pdfcompresslevel=9 +\else + \usepackage{graphicx} +\fi +\usepackage{alltt} % come verbatim, ma onora i comandi LaTeX +\usepackage{dcolumn} % allinea i numeri +\usepackage{url} % url e link +\usepackage{colortbl} % tabelle a colori +\usepackage{pifont} % dinglist +\usepackage{fancyvrb} % verbatim con variazioni +\usepackage{boxedminipage} % minipage col bordo +\usepackage{framed} % bordi intorno a oggetti +\usepackage{rotating} % ruota oggetti +\usepackage[colorlinks, + urlcolor=blue, + filecolor=magenta, + linkcolor=darkred, + hyperfootnotes=false]{hyperref} % link navigabili +\usepackage{fancyhdr} % intestazioni e pie' di pagina +\usepackage{marvosym} % Euro e altri caratteri +\usepackage[gen]{eurosym} % Euro +\usepackage{mflogo} % logo Metafont +\usepackage{setspace} % spaziatura personalizzata +\usepackage{tabularx} % ambiente tabular esteso +\usepackage{exa} % per comporre esempi (pacchetto locale) +\usepackage{enumerate} % arg. opzionali per enumerate +\usepackage{wrapfig} % testo che scorre intorno a figure +\usepackage[normalem]{ulem} % sottolineature +\usepackage{slashbox} % caselle barrate in tabelle +\usepackage{paralist} % elenchi nei paragrafi +\usepackage[version=3]{mhchem} % formule chimiche +\usepackage{lettrine} % lettere grandi a inizio paragrafo + +\urlstyle{same} % url con font normale + +% --- Definizioni e nuovi comandi --- + +\def\version {1.0.8} +\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} + +\newcounter{fnsym} +\setcounter{fnsym}{1} +%\newcounter{tmpbaselineskip} +%\setlength{tmpbaselineskip}{\value{\baselineskip}} + +% perch\'e non mi considera le regole? +\hyphenation{in-te-sta-zio-ne u-sa-no} + +\newenvironment{margini}[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] +{\textsl{#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] +{\textsf{#1}} + +\newcommand{\file}[1] +{\texttt{#1}} + +\newcommand{\style}[1] +{\texttt{#1}} + +\newcommand{\ltx}[1] +{\texttt{#1}} + +\newcommand{\car}[1] +{\texttt{#1}} + +% --- fine delle definizioni --- + +% si va in scena + +\begin{document} + +\frenchspacing % spazio dopo i punti sempre uguale +\pagenumbering{roman} +\setlength{\parindent}{0pt} +\setlength{\parskip}{3pt} + +\title{\LaTeX{} per utenti di word processor\\versione \version} + +\author{Guido Gonzato, PhD -- +\texttt{guido.gonzato@gmail.com}} + +\date{\today} + +\maketitle + +\begin{abstract} + + La composizione di testi con \LaTeX{} offre numerosi vantaggi + rispetto alla videoscrittura. Tuttavia, gli utenti di word processor + che passano a \LaTeX{} solitamente incontrano alcune difficolt\`a + nell'ottenere gli stessi risultati con questo nuovo strumento. + Questo manuale intende facilitare la transizione tracciando dei + confronti tra videoscrittura e composizione con \LaTeX. Vengono + elencate le principali azioni di un word processor e gli equivalenti + comandi in \LaTeX, con numerosi esempi. + +\end{abstract} + +\begin{footnotesize} + \tableofcontents + \listoftables + \listoffigures +\end{footnotesize} + +% INTRODUCTION + +\pagestyle{fancy} +\pagenumbering{arabic} + +\section{Introduzione} + +Vorrei iniziare precisando che questo documento \emph{non \`e} una +guida introduttiva a \LaTeX! Do per scontato che il lettore possegga +le necessarie conoscenze di base a proposito di \LaTeX{} e dei suoi +comandi. Lo scopo di questa guida \`e mostrare come sostituire un word +processor utilizzando \LaTeX{} al suo posto. + +I word processor sono la principale applicazione dell'ufficio moderno. +Vengono percepiti come facili da usare, e di solito una segretaria +impara ad usarli in tempi ragionevolmente brevi. Il problema di questi +programmi \`e che, di versione in versione, diventano sempre pi\`u +lenti, ingombranti\footnote{tanto tempo fa, scrissi la mia tesi di +laurea su un home computer da 128K di RAM, basato su Z80. Il word +processor WordStar e la mia tesi stavano comodi su un floppy avviabile +CP/M da 720K, e avanzava un sacco di spazio!}, pieni di bug, inclini a +bloccarsi, costosi, attaccabili da virus e incompatibili tra loro. Per +non parlare della qualit\`a del loro output. + +\LaTeX{} \`e una buona alternativa; ma per chi \`e abituato a pensare +in termini di videoscrittura, pu\`o rivelarsi poco intuitivo. In altre +parole, si potrebbero volere le caratteristiche di un word +processor{\ldots} con \LaTeX. Sarebbe una buona cosa sapere come +ottenere con \LaTeX{} i risultati che si sa come ottenere col proprio +word processor di riferimento. + +Ecco perch\'e ho scritto questa guida rapida. Come ho gi\`a detto, si +assume che il lettore abbia minime conoscenze di \LaTeX; se non fosse +cos\`\i{}, raccomando di visitare il sito +\url{http://www.ctan.org/starter.html} e scaricare, in traduzione +italiana, ``The (Not So) Short Introduction to \LaTeX2e''. Un'altra +ottima guida per iniziare (solo in inglese, purtroppo) \`e +\url{http://en.wikibooks.org/wiki/LaTeX/}. + +Nelle prossime sezioni esamineremo i menu di un word processor +immaginario, mostrando le corrispondenti azioni in \LaTeX{} per +ottenere lo stesso risultato. + +% ----- + +\subsection{Informazioni preliminari} + +Molte funzionalit\`a del word processor sono implementate dall'editor +con cui si scrive; altre da comandi \LaTeX{} standard; altre ancora si +ottengono utilizzando dei pacchetti (\emph{package}) \LaTeX. Si tratta +di insiemi di macro che estendono \LaTeX{} con nuovi comandi ed +ambienti (\emph{environment}). Sono disponibili centinaia di +pacchetti: si tratta di sapere dove trovarli, capire quale pacchetto +fa che cosa e come installarli. Ulteriori informazioni sui pacchetti +sono disponibili alla Sezione~\ref{sec:packages}. + +I pacchetti e altro materiale correlato sono disponibili presso i siti +che costituiscono il CTAN: Comprehensive TeX Archive Network. Ho gi\`a +citato il sito \url{http://www.ctan.org}, che ha numerosi mirror. +D'ora in poi, con \href{http://www.ctan.org}{CTAN:} si intende: ``il +vostro mirror CTAN di riferimento, a partire dalla directory +\path{TeX}''. Ad esempio, si pu\`o scaricare \LaTeX{} per il proprio +sistema operativo dal sito +\href{http://ftp.uniroma2.it/TeX/systems/}{CTAN://systems}, cio\`e +\url{http://ftp.uniroma2.it/TeX/systems/}. + +Per scrivere i documenti \`e necessario un buon editor di testi. Per +chi inizia, \`e raccomandabile una \emph{shell \LaTeX}, ovvero un +editor dedicato alla scrittura di sorgenti in \LaTeX, con anteprima e +altre funzionalit\`a. Suggerisco di provare uno dei programmi elencati +di seguito; sono tutti software Free/O\-pen Source. + +\begin{itemize} + + \item Texmaker (multipiattaforma):\\ + \url{http://www.xm1math.net/texmaker/index.html} + + \item TeXstudio (multipiattaforma):\\ + \url{http://texstudio.sourceforge.net/} + + \item TeXworks (multipiattaforma):\\ + \url{http://tug.org/texworks/} + +% \item LyX, una shell quasi WYSIWYG (multipiattaforma):\\ +% \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} + +Informazioni su \LaTeX{} in ambiente Macintosh si trovano +all'indirizzo \url{http://www.esm.psu.edu/mac-tex/}. + +% ----- + +% EDITOR-SUPPORTED + +\subsubsection{Caratteristiche fornite dall'editor} + +\LaTeX{} \`e ``solo'' un programma di impaginazione: azioni come il +copia e incolla, cerca e sostituisci ecc. sono compito dell'editor. +La Tabella~\ref{tab:editing} riassume i principali comandi di alcuni +editor per utenti esperti: GNU \app{emacs} e \app{vim}, pi\`u +\app{jed} configurato per le combinazioni di tasti WordStar/Borland +IDE. + +\begin{table}[htbp] +\begin{center} +\begin{tabular}{lccc} \hline +\textbf{Azione} & \textbf{Emacs} & \textbf{Vim} & \textbf{Jed} \\ +\hline +modalit\`a comando & \texttt{Alt-X} & \texttt{ESC} & \texttt{Alt-X} \\ +modalit\`a inserimento & n/a & \texttt{i a o O} & n/a \\ +modalit\`a line editor & n/a & \texttt{:} & n/a \\ +%\hline +\multicolumn{4}{c}{\textbf{\rule{0pt}{0.5cm}operazioni sui file}}\\[0.3cm] +%\hline +apri file & \texttt{Ctrl-X Ctrl-F} & \texttt{:e} & \texttt{Ctrl-KE}\\ +inserisci file & \texttt{Ctrl-Xi} & \texttt{:r} & \texttt{Ctrl-KR}\\ +salva file & \texttt{Ctrl-X Ctrl-S} & \texttt{:w} & \texttt{Ctrl-KD}\\ +salva come & \texttt{Ctrl-X Ctrl-W name} & \texttt{:w name} & \texttt{Ctrl-KS}\\ +chiudi file & \texttt{Ctrl-XK} & \texttt{:q} & \texttt{Ctrl-KQ}\\ +cambia 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}\\ +esci & \texttt{Ctrl-X Ctrl-C} & \texttt{:qa!} & \texttt{Ctrl-KX}\\ +%\hline +\multicolumn{4}{c}{\textbf{\rule{0pt}{0.5cm}spostamento}}\\[0.3cm] +%\hline +parola a sx & \texttt{Alt-B} & \texttt{b} & \texttt{Ctrl-A}\\ +parola a dx & \texttt{Alt-F} & \texttt{w} & \texttt{Ctrl-F}\\ +inizio linea & \texttt{Ctrl-A} & \texttt{0} & \texttt{Ctrl-QS}\\ +fine linea & \texttt{Ctrl-E} & \texttt{\$} & \texttt{Ctrl-QD}\\ +pagina su & \texttt{Alt-V} & \texttt{Ctrl-U} & \texttt{Ctrl-R}\\ +pagina gi\`u & \texttt{Ctrl-V} & \texttt{Ctrl-D} & \texttt{Ctrl-C}\\ +inizio buffer & \texttt{Alt-<} & \texttt{1G} & \texttt{Ctrl-QR}\\ +fine buffer & \texttt{Alt->} & \texttt{G} & \texttt{Ctrl-QC}\\ +linea n. & \texttt{Alt-G n.} & \texttt{n.G} & \texttt{Ctrl-QI}\\ +%\hline +\multicolumn{4}{c}{\textbf{\rule{0pt}{0.5cm}cancellazione}}\\[0.3cm] +%\hline +carattere a sx & \texttt{Ctrl-H} & \texttt{X} & \texttt{BS}\\ +carattere a dx & \texttt{Ctrl-D} & \texttt{x} & \texttt{Alt-G}\\ +parola a sx & \texttt{Alt-DEL} & \texttt{db} & \texttt{Alt-BS}\\ +parola a dx & \texttt{Alt-D} & \texttt{dw} &\texttt{Ctrl-T} \\ +fine linea & \texttt{Ctrl-K} & \texttt{d\$} & \texttt{Ctrl-QY} \\ +linea & \texttt{Ctrl-A Ctrl-K} & \texttt{dd} & \texttt{Ctrl-Y} \\ +%\hline +\multicolumn{4}{c}{\textbf{\rule{0pt}{0.5cm}cerca \& sostituisci}}\\[0.3cm] +%\hline +cerca & \texttt{Ctrl-S text} & \texttt{/text} & \texttt{Ctrl-QS}\\ +sostituisci & \texttt{Alt-\%} & \texttt{:s/old/new/g} & \texttt{Ctrl-QA}\\ +%\hline +\multicolumn{4}{c}{\textbf{\rule{0pt}{0.5cm}blocchi}}\\[0.3cm] +%\hline +inizia blocco & \texttt{Ctrl-SPACE} & \texttt{v} & \texttt{Ctrl-KB} \\ +taglia & \texttt{Ctrl-W} & \texttt{D} & \texttt{Ctrl-KY} \\ +copia & \texttt{Alt-W} & \texttt{Y} & \texttt{Ctrl-KH} \\ +incolla & \texttt{Ctrl-Y} & \texttt{P} & \texttt{Ctrl-KC} \\ +\hline +\end{tabular} +\caption{Combinazioni di tasti per Emacs, Vim e Jed in modalit\`a IDE.} +\label{tab:editing} +\end{center} +\end{table} + +% ----- + +% ADDING PACKAGES + +\subsubsection{Come aggiungere pacchetti} +\label{sec:packages} + +Le informazioni che seguono valgono per \app{TeX Live}, fornito con le +principali distribuzioni GNU/Linux; potrebbero funzionare anche con +\app{MacTeX}, ma non ne ho diretta esperienza. Le istruzioni per +\app{MiKTeX} (probabilmente l'implementazione pi\`u diffusa in +ambiente Windows) verranno date pi\`u avanti. + +Un numero elevato di pacchetti viene di norma fornito con la +distribuzione GNU/Linux; ad esempio, Ubuntu ha molti pacchetti +\file{.deb} del tipo \app{texlive-*}. Attenzione all'ambiguit\`a del +termine: si parla di \emph{pacchetti} \file{.deb} che contengono +\emph{pacchetti} \LaTeX. + +Se si deve installare un pacchetto che non viene fornito in formato +\file{.deb}, si seguano queste istruzioni. + +\begin{enumerate} + + \item creare questo albero di directory: + + \begin{verbatim} + $ mkdir -p ~/texmf/tex/latex + \end{verbatim} + + I nuovi pacchetti saranno installati a partire da questa directory. + + \item scaricare il pacchetto dal mirror CTAN preferito (di solito + come archivio zip); supponiamo si chiami \app{pippo.zip} + + \item decomprimerlo nella directory giusta: + + \begin{verbatim} + $ mkdir ~/texmf/tex/latex/pippo + $ mv pippo.zip ~/texmf/tex/latex/pippo + $ cd ~/texmf/tex/latex/pippo ; unzip pippo.zip + \end{verbatim} + + \item se non \`e presente un file \file{.sty}, eseguire il comando + \cmdline{latex pippo.ins} o \cmdline{latex pippo.dtx} per crearlo; + + \item eseguire il comando \cmdline{texhash \~{}/texmf}. + +\end{enumerate} + +Per aggiungere un pacchetto a \app{MiKTeX}, creare la directory +\path{latex\pippo} al di sotto di \path{C:\localtexmf\tex\} e copiarvi +i file del pacchetto \app{pippo.zip}. Procedere come mostrato per +\app{TeX Live}, quindi eseguire \app{MiKTeX Options} e fare clic su +``Refresh now''. Oppure, da linea di comando scrivere +\cmdline{initexmf -u}. + +Una volta che il pacchetto \`e installato, per utilizzarlo nei propri +documenti si aggiunge una linea sotto la dichiarazione +\ltx{documentclass}: + +\begin{verbatim} +\usepackage{pippo} +\end{verbatim} + +% ----- + +\subsubsection{Aggiungere la pagina Info} +\label{sec:infopage} + +Le pagine `Man' e `Info', accessibili da shell in ambiente \unix{} e +Linux, forniscono documentazione per molti pacchetti software. Se +nella vostra distribuzione \LaTeX{} manca il file \file{latex2e.info}, +fate cos\`\i{}: + +\begin{enumerate} + + \item scaricatela da + \url{http://tug.ctan.org/info/latex2e-help-texinfo/latex2e.info}; + + \item eseguite questi comandi: + + \begin{verbatim} + $ sudo cp latex2e.info /usr/share/info/ + $ sudo ginstall-info latex2e.info dir + \end{verbatim} + +\end{enumerate} + +Ora il comando \cmdline{info latex} o \cmdline{info latex2e} \`e +disponibile. + +% ----- + + +% GOLDEN RULES + +\subsection{Le ``regole d'oro''} + +Prima di iniziare, vorrei sottolineare quanto segue: + +\begin{enumerate} + + \item \`e necessario abituarsi a \emph{dare una struttura} ai propri + documenti: bisogna pensare in termini di parti, capitoli, sezioni e + cos\`\i{} via. Questo vale anche se non si sta scrivendo un articolo + scientifico. + + \item \label{rule:mess} \LaTeX{} scoraggia esplicitamente l'utente + dal pasticciare con i parametri di formattazione. Non ci si deve + preoccupare troppo dell'\emph{aspetto} di quello che si sta + scrivendo, quanto piuttosto del \emph{contenuto}. + +\end{enumerate} + +Applicando queste semplici regole di base, i documenti assumeranno +magicamente un look professionale. + +Detto questo, questa guida (che un po' contravviene alla seconda +regola!) aiuter\`a a superare quanto dettato dalla regola d'oro +n.~\ref{rule:mess}. In questo modo, oltre a documenti ben strutturati +si potr\`a scrivere materiale come volantini, avvisi, poster, {\ldots} + +\bigskip + +{\color{blue} \dingline{45}} + +% ----- + +% FILE + +\section{Il menu \menu{File}} + +Ovviamente, alcune voci di menu non hanno nulla a che vedere con \LaTeX{}: +\entry{File}{Apri}, \entry{File}{Salva}, \entry{File}{Chiudi} +dipendono dall'editor. + +% ----- + +% FILE/NEW + +\subsection{\entry{File}{Nuovo}} +\label{sec:filenew} + +Questo \`e l'equivalente \LaTeX{} di una pagina vuota: + +\begin{Verbatim}[fontsize=\small] +\documentclass{article} +\thispagestyle{empty} % niente numero di pagina +\begin{document} +% Questo \`e un commento. Qui sotto c'e' una riga vuota. + +\end{document} +\end{Verbatim} + +Poich\'e i documenti scritti in \LaTeX{} sono solitamente forniti di +una struttura, l'esempio che segue \`e pi\`u realistico: + +\begin{Verbatim}[fontsize=\small] +\documentclass[a4paper,12pt]{article} +\begin{document} +\title{Il mio documento} +\author{Mario Rossi} +\date{Roma, \today} +\maketitle +\begin{abstract} +Questo \`e un brevissimo articolo. +\end{abstract} +\tableofcontents +\listoftables +\listoffigures +\section{Prima sezione} +\label{sec:start} +Questo \`e il testo della sezione. Si veda \cite{Gonzato} per +ulteriori dettagli. +\section{End} +\label{sec:end} +Questa \`e la fine del documento. Si veda la Sezione~\ref{sec:start} +per rileggerlo. +\begin{thebibliography}{99} +\bibitem{Gonzato} Gonzato G. \textit{\LaTeX{} for Word Processor +Users}. CTAN, 2001-2015. +\end{thebibliography} +\end{document} +\end{Verbatim} + +Altri modelli di documento verranno mostrati +all'Appendice~\ref{ap:templates}. + +% ----- + +% FILE/SAVE AS + +\subsection{\entry{File}{Salva con nome{\ldots}}} + +I programmi che seguono sono utili per convertire un documento scritto +in \LaTeX{} in altri formati: + +\begin{itemize} + + \item \app{\TeX4ht} \`e probabilmente il migliore convertitore da + \LaTeX{} ad HTML:\\ + \url{http://www.cse.ohio-state.edu/~gurari/TeX4ht/} + + \item \app{latex2html} \`e un altro convertitore ad HTML:\\ + \url{http://saftsack.fs.uni-bayreuth.de/~latex2ht/},\\ + \href{http://www.ctan.org/tex-archive/support/latex2html} + {CTAN://support/latex2html} + + \item \app{latex2rtf} converte in formato RTF (Rich Text Format):\\ + \href{http://www.ctan.org/tex-archive/support/latex2rtf} + {CTAN://support/latex2rtf} + + \item \app{detex} toglie tutti i tag \LaTeX{} o \TeX{} e fornisce + un output in formato testo semplice:\\ + \url{http://www.cs.purdue.edu/homes/trinkle/detex/}, \\ + \href{http://www.ctan.org/tex-archive/support/detex} + {CTAN://support/detex/} + + +\end{itemize} + +Si veda inoltre la Sezione~\ref{sec:prpreview} per i dettagli relativi +alla conversione in formato PDF. + +% ----- + +% FILE/SAVE AS TEMPLATE + +\subsection{\entry{File}{Salva come modello}} + +Salvare un ``modello'' \LaTeX, per come la vedo io, equivale alla +creazione di un nuovo pacchetto. Si tratta di un argomento complesso +che esula dagli scopi di questa guida. + +% ----- + +% FILE/IMPORT + +\subsection{\entry{File}{Importa}} + +Questi programmi convertono in \LaTeX{} a partire da altri formati: + +\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} \`e un insieme di strumenti che convertono dal + formato di MS Word in diversi altri formati, tra cui \LaTeX{}: + \url{http://wvware.sourceforge.net} + + \item il word processor libero e gratuito Abiword, + \url{http://www.abiword.org}, importa dal formato MS Word e pu\`o + esportare in \LaTeX. + + \item \app{txt2tex}: + \href{http://www.ctan.org/tex-archive/support/txt2tex} + {CTAN://support/txt2tex} converte, con un certo successo, file dal + formato testo semplice a \LaTeX. + +\end{itemize} + +Altri convertitori \texttt{*2latex} sono disponibili presso lo stesso +l'indirizzo. + +Un'altra estensione interessante \`e \app{OOoLatex}, un insieme di +macro per integrare \LaTeX{} in OpenOffice: +\url{http://ooolatex.sourceforge.net/}. Per gli utenti di Libreoffice +c'\`e un'estensione chiamata TexMaths, +\url{http://roland65.free.fr/texmaths/}. + + +% ----- + +% FILE/PAGE SETUP + +\subsection{\entry{File}{Formato pagina}} +\label{sec:pagesetup} + +Per configurare il formato della carta, l'orientamento della pagina e +i margini, si usano appositi parametri in \cmd{documentclass}. Il +formato carta pu\`o essere \parm{a4paper}, \parm{a5paper}, +\parm{b5paper}, \parm{letterpaper}, \parm{legalpaper} o +\parm{executivepaper}; l'orientamento \`e \parm{portrait} di default, +oppure \parm{landscape}. Ad esempio: + +\begin{Verbatim}[fontsize=\small] +\documentclass[a5paper,landscape,12pt]{article} +\end{Verbatim} + +Per applicare al documento dei diversi margini si pu\`o usare il +comando \cmd{setlength}, che serve per modificare il valore di una +variabile o un contatore: + +\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} + +ma \`e preferibile utilizzare il pacchetto \package{geometry}, che +consente di modificare tutti i parametri come il formato carta, i +margini, l'altezza del testo e cos\`\i{} via. \package{geometry} ha +troppi parametri per poterli elencare tutti, e invito a consultare la +sua documentazione. Un esempio di utilizzo piuttosto completo viene +mostrato qui sotto. Alcuni dei parametri sono incompatibili tra loro, +e sono elencati solo a scopo dimostrativo. + +\begin{Verbatim}[fontsize=\small] +\usepackage{geometry} % inizio documento +... +\geometry{paperwidth=25cm} +\geometry{paperheight=35cm} +% oppure: \geometry{papersize={25cm,35cm}} +\geometry{width=20cm} % larghezza totale +\geometry{heigth=30cm} % altezza totale +% oppure: \geometry{total={20cm,30cm}} +\geometry{textwidth=18cm} % larghezza - marginpar +\geometry{textheight=25cm} % altezza - intestazione - pie' di pagina +% oppure: \geometry{body={18cm,25cm}} +\geometry{left=3cm} % margine sinistro +\geometry{right=1.5cm} % margine destro +% oppure: \geometry{hmargin={3cm,2cm}} +\geometry{top=2cm} % margine superiore +\geometry{bottom=3cm} % margine inferiore +% oppure: \geometry{vmargin={2cm,3cm}} +\geometry{marginparwidth=2cm} +\geometry{head=1cm} % spazio per l'intestazione +\end{Verbatim} + +Le opzioni si possono impostare anche cos\`\i{}: + +\begin{Verbatim}[fontsize=\small] +\usepackage[left=3cm, right=2cm]{geometry} +\end{Verbatim} + +% ----- + +% FILE/PAGE SETUP/HEADERS AND FOOTERS + +\subsubsection{\entry{Formato pagina}{Intestazione e pi\`e di pagina}} +\label{sec:headers_footers} + +Il pacchetto \package{fancyhdr} fornisce il nuovo comando +\cmd{pagestyle\{fancy\}}, che imposta l'inte\-stazione con l'attuale +sezione (o \style{chapter} in \style{book.cls}) e sottosezione e il +pi\`e di pagina con il numero di pagina. Ovviamente, intestazione e +pi\`e di pagina si possono personalizzare. Sono composti di tre parti +logiche (allineate rispettivamente a sinistra, centro e destra) che si +configurano con i comandi qui riportati: + +\begin{Verbatim}[fontsize=\small] +\usepackage{fancyhdr} +... +\lhead{} % sinistra - vuoto +\chead{Ciao a tutti!} % centrale +\rhead{Pagina \thepage} % destra - numero pagina +\lfoot{} % sinistra - vuoto +\cfoot{\textbf{Ciao!}} % centrale +\rfoot{} % destra - vuoto +\end{Verbatim} + +% ----- + +% FILE/PRINTER SETUP + +\subsection{\entry{File}{Impostazione stampante}} + +Questo dettaglio dipende dal sistema operativo, e decisamente non \`e +cosa di cui si occupi \LaTeX. Con un sistema operativo \unix-like, +questi comandi possono risultare comodi: + +\begin{itemize} + + \item \cmdline{lpr -P nomestampante file} stampa sulla stampante + specificata; + + \item \cmdline{lpr -\# 10 file} stampa 10 copie; + + \item \cmdline{lpr -r file} cancella il file dopo averlo stampato. + +\end{itemize} + +% ----- + +% FILE/PRINT PREVIEW + +\subsection{\entry{File}{Anteprima di stampa}} +\label{sec:prpreview} + +Una volta terminato il sorgente \LaTeX, ci sono diverse possibilit\`a: + +\begin{itemize} + + \item convertirlo in \file{.dvi} con il comando \cmdline{latex} e + visualizzarlo con \app{xdvi}, \app{yap} o altri visua\-lizzatori; + + \item convertire il file \file{.dvi} in \PS{} con \app{dvips}, + quindi usare \app{Ghostview} per visualizzarlo; + + \item convertire il file \file{.dvi} in PDF con \app{dvipdf} o + produrre un file PDF direttamente con \app{pdflatex}. + +\end{itemize} + +Ritengo che produrre un file PDF sia la scelta migliore, in quanto +consente la massima portabilit\`a. + +Mentre \app{dvipdf} \`e solo uno script che converte il file +\file{.dvi} in \file{.ps} e poi in \file{.pdf}, utilizzare +\app{pdflatex} \`e pi\`u interessante. Infatti, alcuni pacchetti come +\package{hyperref} o \package{url} rendono navigabile il file PDF di +output; si veda la Sezione~\ref{sec:hyperlink}. Tuttavia,\note{} con +l'utilizzo di \app{pdflatex} si potrebbero riscontrare dei problemi +con altri pacchetti. Si veda la Sezione~\ref{sec:figure} per ulteriori +chiarimenti. + +% ----- + +% FILE/PRINT + +\subsection{\entry{File}{Stampa}} + +Banalmente, la stampa del documeno si ottiene dal menu +\entry{File}{Stampa} del visualizzatore. + +% ----- + +% FILE/VERSIONS + +\subsection{\entry{File}{Versioni}} + +Anche se il pacchetto \package{version} fornisce alcuni semplici +comandi per la gestione delle versioni di un sorgente, pu\`o essere +preferibile utilizzare dei tool esterni come RCS (Revision Control +System) o CVS (Concurrent Version Control System), se possibile +integrati nell'editor. Per un'introduzione a CVS e RCS, consultare la +guida \url{http://www.faqs.org/docs/Linux-HOWTO/CVS-RCS-HOWTO.html}. + +% ----- + +% EDIT + +\section{Il menu \menu{Modifica}} + +Questo menu ha pi\`u a che fare con l'editor che con \LaTeX{} in senso +stretto. Per cominciare, riferirsi alla Tabella~\ref{tab:editing} che +mostra le combinazioni di tasti per il \entry{Modifica}{Taglia}, +\entry{Modifica}{Copia}, \entry{Modifica}{Incolla}, +\entry{Modifica}{Trova} e \entry{Modifica}{Sostituisci} di alcuni +editor per utenti esperti. + +La selezione del testo si fa non solo per il copia e incolla, ma anche +per applicare degli stili al testo selezionato. L'azione equivalente +in \LaTeX{} si fa racchiudendo il testo tra parentesi graffe, oppure +in un ambiente. Ad esempio, per applicare il grassetto a una parte di +testo si pu\`o procedere in diversi modi: + +\begin{example} +questo testo \`e in \textbf{grassetto;}\\ +anche questo \`e +{\bfseries testo in grassetto;}\\ +\begin{bfseries} +e pure questo lo \`e! +\end{bfseries} +\end{example} + +% ----- + +% EDIT/AUTOTEXT + +\subsection{\entry{Modifica}{Testo automatico}} + +Si definisce \emph{testo automatico} la funzionalit\`a che permette, +ad esempio, di scrivere ``PS'' e di ottenere la parola ``PostScript'' +espansa in automatico. Dipende dall'editor, ma c'\`e anche un +equivalente \LaTeX{} (all'incirca): + +\begin{Verbatim}[fontsize=\small] +\def\PS {\textsc{PostScript}} +\end{Verbatim} + +Questo comando fa s\`\i{} che si ottenga \cmd{textsc\{PostScript\}} +ad ogni occorrenza di \ltx{PS}. La differenza maiuscole e minuscole +\`e importante. + +% ----- + +% INSERT + +\section{Il menu \menu{Inserisci}} +\label{sec:menu_insert} + +% ----- + +% INSERT/BREAKS + +\subsection{\entry{Inserisci}{Interruzione}} + +\begin{itemize} + + \item uno spazio non divisibile si inserisce con + \textasciitilde{} (tilde); + + \item un'interruzione di linea con \cmd{linebreak} o \cmd{newline} + (seguiranno dettagli pi\`u avanti); + + \item un nuovo paragrafo con una linea vuota, o con \cmd{\bs} + (si pu\`o anche specificare una spaziatura, come ad esempio + \cmd{\bs[1cm]}), oppure ancora con \cmd{par}; + + \item un'interruzione di pagina con \cmd{newpage} or \cmd{clearpage}. + +\end{itemize} + +A differenza di \cmd{newline}, \cmd{linebreak} espande la linea tra i +margini: + +\begin{example} +Sono una linea espansa!\linebreak +Io invece non lo sono.\newline +Ok, avete capito. +\end{example} + +Inoltre, \cmd{clearpage} differisce da \cmd{newpage} perch\`e stampa +tutti gli oggetti mobili (\emph{float}; figure e tabelle) non ancora +stampati. Gli oggetti mobili verranno spiegati meglio alla +Sezione~\ref{sec:figure}. + +% ----- + +% INSERT/ENUMERATED LIST + +\subsection{\entry{Inserisci}{Elenchi puntati e numerati}} + +Gli elenchi puntati o numerati corrispondono agli ambienti +\env{itemize} ed \env{enumerate}. Per personalizzare il pallino in un +elenco puntato, si specifica un argomento per il comando \cmd{item}: + +\begin{example} +\begin{itemize} + \item[*] con un asterisco; + \item[-] con una lineetta; + \item[.] con un punto. +\end{itemize} +\end{example} + +Un altro modo, molto interessante, \`e la ridefinizione dello stile +dei \emph{contatori}\footnote{ogni elemento di testo di cui \LaTeX{} +gestisce la numerazione (sezioni, elenchi, figure ecc.) ha un +contatore associato ad esso.} associati agli elenchi, dal primo al +quarto livello. Nel caso di elenchi puntati, i contatori si chiamano +\cmd{labelitemi}, \cmd{labelitemii}, \cmd{labelitemiii} e +\cmd{labelitemiv}; per gli elenchi numerati, si chiamano +\cmd{labelenumi}, \cmd{labelenumii}, \cmd{labelenumiii} e +\cmd{labelenumiv}. + +Ci sono diversi stili: \cmd{arabic} per i numeri normali, \cmd{roman} +per i numeri romani in minuscolo (ad es. viii \`e 8), \cmd{Roman} per +i numeri romani in maiuscolo, \cmd{alph} and \cmd{Alph} per le lettere +in minuscolo o maiuscolo, e infine \cmd{fnsymbol} che non verr\`a +spiegato per ora: + +\begin{example} +\begin{itemize} +\renewcommand{\labelitemi}{*} +\renewcommand{\labelitemii}{-} + \item primo livello, prima voce + \item primo livello, seconda voce + \begin{itemize} + \item secondo livello, prima voce + \item secondo livello, seconda voce + \end{itemize} + \item primo livello, terza voce +\end{itemize} +\end{example} + +Se si vogliono usare, ad esempio, numeri romani e lettere maiuscole in +elenchi numerati, si fa cos\`\i{}: + +\begin{example} +\begin{enumerate} +\renewcommand{\labelenumi} + {\Alph{enumi}} +\renewcommand{\labelenumii} + {\roman{enumii}} + \item primo livello, prima voce + \item primo livello, seconda voce + \begin{enumerate} + \item secondo livello, prima voce + \item secondo livello, seconda voce + \end{enumerate} + \item primo livello, terza voce +\end{enumerate} +\end{example} + +Si pu\`o anche usare il package \package{enumerate}, che ridefinisce +l'ambiente \env{enumerate} con la possibilit\`a di specificare un +argomento opzionale. Ogni occorrenza di uno dei caratteri \car{A a I i +1} stampa il valore del contatore usando, rispettivamente, +\cmd{Alph}, \cmd{alph}, \cmd{Roman}, \cmd{roman}, or \cmd{arabic}. Per +includere del testo letterale, lo si deve racchiudere tra graffe: + +\begin{example} +\begin{enumerate}[{Esempio} I.] + \item Primo esempio. + \label{item:primo} + \item Secondo esempio. + \item Ultimo esempio. + Vai all'esempio~\ref{item:primo}. +\end{enumerate} +\end{example} + +Per forzare il numero di inizio di un elenco numerato, si ridefinisce +il relativo contatore: + +\begin{example} +\begin{enumerate} + \setcounter{enumi}{2} + \item Esempio numero 3. + \item Esempio numero 4. + \setcounter{enumi}{5} + \item Esempio numero 6. +\end{enumerate} +\end{example} + +Elenchi puntati e numerati all'interno di paragrafi sono implementati +dal pacchetto \package{paralist}, che fornisce l'ambiente +\env{inparaenum}: + +\begin{example} +Ecco qui un elenco di frutti: +\begin{inparaenum} + \item mele, + \item pere e + \item arance. +\end{inparaenum} +Lo stesso elenco si pu\`o +indicare con lettere: +\begin{inparaenum} + [\itshape a) \upshape] + \item mele, \label{primo} + \item pere e + \item arance. La prima voce \`e \ref{primo}. +\end{inparaenum} +\end{example} + +Come si \`e visto in precedenza, i caratteri \car{A a I i 1} si +possono usare per cambiare i contatori. \package{paralist} offre +numerose altre possibilit\`a, e suggerisco di consultare la sua +documentazione. + +% 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{Inserisci}{Carattere speciale}} + +Si ricorda prima di tutto che alcuni caratteri hanno un significato +speciale in \LaTeX, per cui si possono inserire solo anteponendo ad +essi un carattere \bs, o utilizzandoli in modalit\`a matematica, o +anche scrivendo dei comandi appositi: si veda la +Tabella~\ref{tab:characters}. + +\begin{table} +\begin{center} + \begin{tabular}{ll} + \hline + \textbf{Carattere} & \textbf{Sequenza \LaTeX} \\ + \hline + \$ & \verb|\$| oppure \verb|\textdollar| \\ + \& & \verb|\&| \\ + \% & \verb|\%| \\ + \_ & \verb|\_| oppure \verb|\textunderscore| \\ + \{ & \verb|\{| oppure \verb|\textbraceleft| \\ + \} & \verb|\}| oppure \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| oppure \verb|\~{}| \\ + $\sim$ & \verb|$\sim$| \\ + \textregistered & \verb|\textregistered| \\ + \texttrademark & \verb|\texttrademark| \\ + \textordfeminine & \verb|\textordfeminine| \\ + \textordmasculine & \verb|\textordmasculine| \\ + \hline + \end{tabular} + \caption{Come ottenere alcuni caratteri speciali.} + \label{tab:characters} +\end{center} +\end{table} + +Un altro modo di scrivere caratteri speciali \`e tramite il loro +codice ASCII, associato al comando \cmd{char}. Ad esempio, i caratteri +\car{\char36 \char38 \char94 \char126} si possono scrivere con +\cmd{char36} \cmd{char38} \cmd{char94} \cmd{char126}. + +Alcuni pacchetti forniscono migliaia di caratteri e simboli. Ad +esempio, \package{pifont} fornisce i comandi \cmd{ding}, +\cmd{dingfill}, \cmd{dingline} e \cmd{dinglist}. Il primo di questi +genera il carattere Dingbat di cui si \`e specificato il codice. Gli +altri comandi equivalgono ai \cmd{fill} e \cmd{line} e all'ambiente +\cmd{list}, ma utilizzano il codice Dingbat specificato come +parametro: + +\begin{example} +\begin{dinglist}{43} + \item uno + \item due + \item tre +\end{dinglist} +\end{example} + +Un'altra variante \`e: + +\begin{example} +\begin{dingautolist}{172} + \item uno + \item due + \item tre +\end{dingautolist} +\end{example} + +Ci sono assolutamente troppi simboli per poterli elencare qui. Si +pu\`o consultare la guida ``The Comprehensive \LaTeX{} Symbol List'' +all'indirizzo +\href{http://www.ctan.org/tex-archive/info/symbols/comprehensive} +{CTAN://info/symbols/comp\-re\-hen\-sive}. + +% ----- + +\subsubsection{Il simbolo \euro} + +Il simbolo ufficiale dell'Euro viene fornito dal pacchetto +\package{eurosym}, che si pu\`o usare in due modi: + +\begin{verbatim} +\usepackage[gen]{eurosym} +\usepackage[official]{eurosym} +\end{verbatim} + +Entrambe le dichiarazioni rendono disponibile il comando \cmd{euro}, +che stampa \euro. La forma esatta del simbolo dipende dalla +dichiarazione: l'opzione \verb|[gen]| fornisce un glifo che funziona +con qualunque stile di carattere, mentre l'opzione \verb|official| +stampa \officialeuro. Si noti la piccola differenza. Quest'ultimo +glifo si pu\`o sempre ottenere con il comando \cmd{officialeuro}. + +Un altro pacchetto che fornisce il simbolo dell'Euro \`e +\package{marvosym}, che rende disponibili numerosi altri caratteri. +Per ottenere \EUR{} si scrive \cmd{EUR}. + +% ----- + +% INSERT/FORMULA + +\subsection{\entry{Inserisci}{Formula}} + +Come \`e noto, \TeX{} \`e imbattibile nello stampare formule +matematiche. Per inserire simboli matematici nel testo, li si deve +racchiudere tra \car{\$} oppure tra \bs{}( {\ldots} \bs{}): + +\begin{example} +Mi piace la matematica: +$x^n + y^n \neq +z^n \forall n \neq 2$ +\`e il mio teorema preferito. +\end{example} + +Gli ambienti \env{displaymath} e \env{equation} servono a comporre le +formule matematiche al di fuori del testo. \env{equation} aggiunge +anche un numero di equazione al quale si pu\`o in seguito fare +riferimento: + +\begin{example} +L'ultimo teorema di Fermat +si definisce come: +\begin{equation} +x^n + y^n \neq z^n +\forall n \neq 2 +\label{eq:fermat} +\end{equation} +Potete dimostrare +l'equazione~\ref{eq:fermat}? +\end{example} + +Molto altro si potrebbe aggiungere, ma si rimanda ai tutorial +disponibili in rete. + + +% ----- + +% INSERT/FOOTNOTE + +\subsection{\entry{Inserisci}{Nota a pi\`e pagina}} + +Si usa \cmd{footnote[n]\{testo della nota\}}; il parametro opzionale +\verb|[n]| serve per cambiare il numero della nota. Il comando +\cmd{footnote} dovrebbe essere scritto immediatamente dopo la parola, +prima di ogni eventuale segno di interpunzione. + +Per usare un altro simbolo, o anche del testo arbitrario invece di un +numero di nota, si pu\`o cambiare il contatore relativo a +\cmd{footnote}: + +% can't use example, it uses minipages! +\bigskip + +\begin{minipage}[c]{0.5\textwidth} + \begin{Verbatim}[fontsize=\small] +\renewcommand{\thefootnote}{leggimi!} +Questa nota a pi\`e +pagina\footnote{Questa, intendo.} +dice tutto. + \end{Verbatim} +\end{minipage}% +\begin{boxedminipage}[c]{0.5\textwidth} + \renewcommand{\thempfootnote}{leggimi!} + Questa nota a pi\`e + pagina\footnote{Questa, intendo.} + dice tutto. +\end{boxedminipage} + +\bigskip + +Con questo sistema, si possono ottenere i numeri delle note in numeri +romani, o si possono anche sostituire con simboli: + +\bigskip + +\begin{minipage}[c]{0.5\textwidth} + \begin{Verbatim}[fontsize=\small] +\renewcommand{\thefootnote} +{\Roman{footnote}} +Questa\footnote{la prima.} +\`e la prima nota a pi\`e pagina, +e questa\footnote{la seconda.} +\`e la seconda. +\renewcommand{\thefootnote} +{\fnsymbol{footnote}} +Fine.\footnote[8]{Era ora!} + \end{Verbatim} +\end{minipage}% +\begin{boxedminipage}[c]{0.5\textwidth} + \renewcommand{\thempfootnote} + {\Roman{footnote}} + Questa\footnote{la prima.} + \`e la prima nota a pi\`e pagina, + e questa\footnote{la seconda.} + \`e la seconda. + \renewcommand{\thempfootnote} + {\fnsymbol{footnote}} + Fine.\footnote[8]{Era ora!} +\end{boxedminipage} + +\bigskip + +Attenzione al comando \cmd{fnsymbol\{footnote\}}; usa 9 simboli +associati ai valori 1{\ldots}9 del contatore \ltx{footnote}: +\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? + +Per fare riferimento \`pi\`u volte alla stessa nota, non si deve +scrivere esplicitamente il suo numero. Si fa cos\`\i{}: + +\bigskip + +\begin{minipage}[c]{0.5\textwidth} + \begin{Verbatim}[fontsize=\small] +Questa\footnote{la prima.} +\newcounter{\myfootnote} +\setcounter{\myfootnote} + {\value{footnote}} +e questa\footnote{la seconda.} +sono note a pi\`e pagina: +rileggetevi questa +\footnotemark +[\value{\myfootnote}] nota. + \end{Verbatim} +\end{minipage}% +\begin{boxedminipage}[c]{0.5\textwidth} +\renewcommand{\thempfootnote}{\arabic{mpfootnote}} +Questa\footnote{la prima.} \newcounter{myfootnote}% +\setcounter{myfootnote}{\value{mpfootnote}}% +e questa\footnote{la seconda.} sono note a pi\`e pagina:% +rileggetevi questa% +\footnotemark[\value{myfootnote}] nota. +\end{boxedminipage} + +\bigskip + +Attenzione agli ambienti \env{minipage}: utilizzano i propri +contatori, \ltx{mpfootnote} e \ltx{the\-mp\-foot\-no\-te}. + +% ----- + +\subsubsection{Note a pi\`e pagina a fine documento} + +Il pacchetto \package{endnotes} consente di spostare le note a pi\`e +pagina alla fine del documento. Si deve aggiungere questa linea al +preambolo: + +\begin{Verbatim}[fontsize=\small] +\let\footnote=\endnote +\end{Verbatim} + +per convertire tutte le \cmd{footnote} in \cmd{endnote}, cio\`e in +note che vengono stampate a fine documento. Si inserisce poi questa +linea dove si vuole che appaiano le note: + +\begin{Verbatim}[fontsize=\small] +\theendnotes +\end{Verbatim} + +% Al solito, sono disponibili altri comandi. Il documento da leggere \`e +% il file \file{endnotes.sty}. + +% ----- + +% INSERT/INDICES + +\subsection{\entry{Inserisci}{Indice}} +\label{sec:tocs} + +Con \LaTeX{} \`e semplicissimo generare l'indice, la lista delle +tabelle e delle figure. Non si fa altro che inserire queste linee +prima del primo comando \cmd{section} o \cmd{chapter} del documento: + +\begin{Verbatim}[fontsize=\small] +\tableofcontents +\listoffigures +\listoftables +\end{Verbatim} + +% 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{Inserisci}{Spazio verticale e orizzontale}} +\label{sec:space} + +Questa voce di menu in realt\`a non esiste in alcun word processor, +che io sappia. Si tratta invece di un'interessante caratteristica che +\LaTeX{} rende disponibile in modo elegante. + +Lo \emph{riempimento con spazi} si pu\`o usare per centrare del testo +orizzontalmente, verticalmente o entrambi; questo non \`e agevole ne' +preciso da ottenere con un word processor, e richiede molti tentativi. +Si usa una combinazione di \cmd{null} e/o \car{\~} per fissare dei +``segnaposti'', seguiti quindi da \cmd{vfill} e/o \cmd{hfill} come nel +prossimo esempio: + +\begin{example} +uno \hfill due\\ +\vfill +~ \hfill tre \hfill ~\\ +\vfill +quattro \hfill cinque +\null +\end{example} + +Di solito, non si possono inserire spazi a proprio piacimento: due o +pi\`u spazi vengono considerati come uno solo. Si possono tuttavia +forzare con \car{\~} per creare uno spazio non divisibile. + +Si pu\`o inoltre usare il comando \cmd{hspace} per creare ``buchi'' +della larghezza voluta: + +\begin{example} +Questo \`e uno spazio \hspace{2cm} +di due centimetri. +\end{example} + +% ----- + +% INSERT/TABS + +\subsection{\entry{Inserisci}{Tabulazioni}} + +L'ambiente \env{tabbing} fornisce all'incirca l'equivalente +dell'azione del tasto TAB, e si usa per allineare del testo in +colonne. Ecco qui elencati alcuni dei comandi pi\`u comuni: + +\begin{center} + \begin{tabular}{ll} + \hline + \textbf{Comando} & \textbf{Azione} \\ + \hline + \verb|\=| & Imposta una posizione di tabulazione \\ + \verb|\>| & Sposta alla successiva tabulazione \\ + \verb|\+| & Imposta il margine sx alla tabulazione successiva \\ + \verb|\-| & Imposta il margine sx alla tabulazione precedente \\ + \verb|\\| & Fine linea \\ + \verb|\pushtabs| & Salva le attuali posizioni di tabulazione \\ + \verb|\poptabs| & Ripristina le precedenti posizioni di tabulazione \\ + \hline + \end{tabular} +\end{center} + +Ecco in pratica che cosa si pu\`o fare: + +\begin{example} +\begin{tabbing} +% fissiamo le posizioni dei tab +~ \hspace{1cm} \= ~ \hspace{2cm} \= +~ \hspace{3cm} \= \\ +Zero \> Uno \> Due \> Tre \\ +Zero \> Uno \> \> Tre \+ \\ +Uno \> Due \> Tre \\ +Uno \> Due \> Tre \- \\ +Zero \> Uno \> Due \\ +\pushtabs +nuovo tab 1{\ldots} \= nuovo tab 2 \\ +nuovo \> tab \\ +\poptabs +Zero \> Uno \> Due \> Tre +\end{tabbing} +\end{example} + +Si vedano inoltre gli ambienti \env{tabular} e \env{table} alla +Sezione~\ref{sec:table}. + +% ----- + +% INSERT/CROSS REFERENCE + +\subsection{\entry{Inserisci}{Riferimento incrociato}} +\label{sec:xrefs} + +I comandi \cmd{label}, \cmd{ref} e \cmd{pageref} sono tutto ci\`o che +serve per inserire delle etichette nel testo, a cui fare poi +riferimento. Il formato standard delle etichette \`e del tipo +\ltx{pre\-fis\-so:suf\-fis\-so}, dove \ltx{prefisso} \`e uno dei +seguenti: \ltx{cha} per i capitoli, \ltx{eq} per le equazioni, +\ltx{fig} per le figure, \ltx{sec} per le (sotto)sezioni e infine +\ltx{tab} per le tabelle. Altri prefissi sono possibili. + +I riferimenti a un numero di pagina (o di sezione, tabella, figura +ecc.) si ottengono con \cmd{label} e \cmd{ref} come in questo esempio: + +\begin{example} +\paragraph{Esempio.} +\label{par:esempio} +Questo paragrafo appare +alla Sezione~\ref{par:esempio} +alla pagina~\pageref{par:esempio}. +\end{example} + +Naturalmente, si possono scegliere i propri prefissi. Si consideri +questo elenco numerato: + +\begin{example} +\begin{enumerate} + \item{passo uno: saltare a + \ref{passo:fine} \label{passo:uno}} + \item{passo due (senza riferimenti)} + \item{fine: torna a + \ref{passo:uno} \label{passo:fine}} +\end{enumerate} +\end{example} + +% ----- + +% INSERT/MARGIN NOTES + +\subsection{\entry{Inserisci}{Note a margine}} + +Semplicissimo: \cmd{marginpar\{testo della nota\}}. + +% ----- + +% INSERT/FRAME + +\subsection{\entry{Inserisci}{Casella di testo}} + +Una casella di testo (in OpenOffice Writer, ``cornice'') serve per +posizionare una porzione di testo indivisibile in un'area definita +sulla pagina. Se si vuole specificare una posizione precisa, si usa il +pacchetto \package{textpos}, come si mostra nell'esempio listato in +Figura~\ref{fig:poster} (Appendice~\ref{ap:templates}). + +\setlength{\fboxsep}{5mm} + +\begin{center} + \begin{minipage}[c]{0.4\linewidth} + Se non \`e necessario posizionare esattamente la casella di testo, + si pu\`o usare l'ambiente \emph{minipage}: letteralmente, pagine + in miniatura. Questo testo \`e incluso in una minipage, e qui a + fianco{\ldots} + \end{minipage} + \begin{boxedminipage}[c]{0.4\linewidth} + {\ldots}c'\`e del testo incluso in un ambiente \env{boxedminipage}, + fornito dall'omonimo pacchetto. +\end{boxedminipage} +\end{center} + +\setlength{\fboxsep}{3pt} % default + +Si ricorda che la dichiarazione di una \env{minipage} \`e la seguente: + +\begin{verbatim} +\begin{minipage}[posizione]{larghezza} +... +\end{minipage} +\end{verbatim} + +In una \env{boxedminipage}, si pu\`o specificare lo spazio tra la +cornice e il testo: + +\begin{verbatim} +\setlength{\fboxsep}{5mm} +\end{verbatim} + +% ----- + +% INSERT/FIGURE + +\subsection{\entry{Inserisci}{Immagine}} +\label{sec:figure} + +La guida di riferimento per l'inserimento di file grafici in \LaTeX{} +\`e ``Using Imported Graphics in \LaTeX2e'', che si trova +all'indirizzo +\href{http://ftp.uniroma2.it/TeX/info/epslatex}{CTAN://epslatex}. + +Una ``figura'' pu\`o essere un'immagine, ma anche del testo o una +tabella che si includono in un ambiente \env{figure}: + +\begin{figure}[htbp] + \begin{minipage}[c]{0.6\textwidth} + \begin{Verbatim}[fontsize=\small] +\begin{figure}[htbp] +% [htbp] indica la posizione +% preferita: here (qui), top +% (in alto nella pagina), +% bottom (in basso), o su una +% pagina separata. + \begin{center} + \texttt{=8-)} + \end{center} + \caption{Uno smiley che raffigura + l'autore di questa guida.} + \label{fig:smiley} +\end{figure} + \end{Verbatim} + \end{minipage}% + \begin{boxedminipage}[c]{0.4\textwidth} + \begin{center} + \texttt{=8-)} + \end{center} + \caption{Uno smiley che raffigura l'autore di questa guida.} + \label{fig:smiley} + \end{boxedminipage} +\end{figure} + +Attenzione \note per\`o: non \`e detto che le figure appariranno +esattamente come sono state inserite nel testo! Infatti, una delle +differenze coi word processor \`e il fatto che il posizionamento viene +stabilito da \LaTeX{} nella migliore posizione possibile. Pertanto, +non si dovrebbe scrivere nel testo ``la figura qui sotto'' o ``la +figura qui sopra''; si deve invece scrivere \ltx{si veda la +Figura\~{}\bs{}ref\{fig:label\}}. + +A causa di questa caratteristica, figure e tabelle vengono definiti +\emph{oggetti mobili} (in inglese \emph{floats}, galleggianti). Se si +volesse stabilire esattamente la posizione di un oggetto mobile, il +pacchetto \package{here} estende la sintassi con un parametro +opzionale \ltx{H}, che significa ``proprio qui''. + +Un'immagine in \PS{} (\file{.ps} oppure \file{.eps}) si inserisce in +un sorgente tramite il pacchetto \package{graphicx}, con comandi +analoghi a quelli mostrati in Figura~\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{Un grafico fatto con Gnuplot.} +\label{fig:gnuplot} +\end{center} +\end{figure} + \end{Verbatim} + \end{minipage}% + \begin{minipage}[c]{0.5\textwidth} + \begin{center} + \ifpdf + \fbox{\includegraphics[width=0.6\textwidth, angle=-90]{gnuplot.pdf}} + \else + \fbox{\includegraphics[width=0.6\textwidth, angle=-90]{gnuplot.ps}} + \fi + \caption{Un grafico fatto con Gnuplot.} + \label{fig:gnuplot} + \end{center} + \end{minipage} +\end{figure} + +Componendo un file con \app{latex} e poi \app{dvips}, si possono +includere solo file in formato \file{EPS}; invece, \app{pdflatex} +pu\`o includere file JPG, PNG e ovviamente PDF, il che lo rende +preferibile per la maggior parte degli utenti. + +Esistono numerosi programmi per convertire file grafici come +\file{.jpg}, \file{.gif}, \file{.png} ecc. in \file{.eps} e/o +\file{.pdf}; ad esempio, ImageMagik (\url{http://www.imagemagik.org}) +e The GIMP (\url{http://www.gimp.org}). Purtroppo, queste applicazioni +generano dei file \PS{} di grosse dimensioni. + +Si ottengono risultati migliori con programmi che producono un file +\PS{} compatto tramite la tecnica del ``wrapping'', innestando cio\`e +il file grafico in un file \PS{}. Si raccomandano \app{jpeg2ps}, +\url{http://www.pdflib.com/jpeg2ps/index.html}, o \app{bmeps},\\ +\href{http://www.ctan.org/tex-archive/support/bmeps}{CTAN://support/bmeps}. +Il primo dei due \`e spesso il modo migliore per trattare i file +\file{.jpg}, mentre il secondo riesce a gestire pi\`u formati. + +Se si vule far s\`\i{} che uno stesso sorgente si possa convertire sia +in PDF che in PS, si devono includere questi comandi: + +\begin{Verbatim}[fontsize=\small] +\usepackage{ifpdf} +... +% includi le opzioni giuste +\ifpdf % pdf + \usepackage[pdftex]{graphicx} + \pdfcompresslevel=9 +\else % postscript + \usepackage{graphicx} +\fi +... +% includi il file grafico corretto +\ifpdf % pdf + \includegraphics{file.png} +\else % postscript + \includegraphics{file.eps} +\fi +\end{Verbatim} + +\begin{warn} + + Se ci sono pi\`u di 18 figure successive senza del testo + inframmezzato, si ottiene l'errore \LaTeX{} ``Too many unprocessed + floats'' (troppi float non ancora gestiti). Il modo pi\`u rapido di + risolvere il problema \`e scrivere il comando \cmd{clearpage} dopo + tre o quattro figure. + +\end{warn} + +% ----- + +\subsubsection{Testo che scorre intorno alle figure} + +\`E possibile ottenere un layout analogo a quello di un giornale o +rivista, col testo che scorre intorno alle figure, tramite il +pacchetto \package{wrapfig}: + +\begin{example} +Se incontrate questo tizio, +dategli dei soldi. +\begin{wrapfigure}[4]{l}[5pt]{2cm} +{\Huge + \texttt{=8-)} +} +\end{wrapfigure} +Magari non capite il perch\'e, +ma vi assicuro che i vostri soldi +finiranno in buone mani. +Ripeto, se incontrate questo tipo, +dategli dei soldi: lui sa come +farne buon uso. Mi raccomando! +\end{example} + +I parametri sono: +\begin{inparaenum}[a)] + \item il numero di linee da fare scorrere intorno alla figura; + \item il posizionamento della figura (come in \ltx{htbp}); + \item l'\emph{overhang}, cio\`e di quanto deve ``sporgere'' il testo; + \item la larghezza della figura. +\end{inparaenum} + +% ----- + +% INSERT/SHAPES + +\subsection{\entry{Inserisci}{Figura}} + +\LaTeX{} fornisce un ambiente \env{picture} entro il quale si possono +usare comandi come \cmd{circle}, \cmd{oval} e molti altri. Ritengo che +tracciare figure senza un ambiente grafico sia un po' troppo +difficile, per non dire poi delle limitazioni intrinseche di +\env{picture}. \`E molto meglio usare un paio di magnifici programmi, +liberi e gratuiti: il programma di grafica vettoriale Inkscape, +\url{https://inkscape.org/}, e Pstoedit, \url{http://www.pstoedit.net/}. + +Fate partire Inkscape e disegnate utilizzando i suoi strumenti. Per +inserire del testo composto da \LaTeX, selezionate la voce +\menu{Estensioni/Render/Formula LaTeX...}, inserire il testo come +mostrato in fig.~\ref{fig:ink1}, quindi fare clic su Applica. + +\begin{figure}[htbp] + \centering + \includegraphics[width=0.6\textwidth]{inkscape-tb.png} + \caption{Come inserire una formula \LaTeX.} + \label{fig:ink1} +\end{figure} + +Il testo composto da \LaTeX{} verr\`a incluso come oggetto grafico, +che si potr\`a modificare a piacimento. La figura risultante si pu\`o +esportare in diversi formati supportati da \LaTeX, come PDF, PNG e +molti altri. Ulteriori informazioni: +\url{http://www.ctan.org/tex-archive/info/svg-inkscape}. + +\begin{figure}[htbp] + \centering + \includegraphics[width=0.6\textwidth]{inkscape.png} + \caption{Un oggetto \LaTeX{} pu\`o essere modificato.} + \label{fig:ink2} +\end{figure} + +Altri programmi che consentono di creare grafica compatibile con +\LaTeX{} sono i seguenti: + +\begin{itemize} + + \item \package{pgf}, Portable Graphic Format, \`e un pacchetto + \TeX{} per generare grafici:\\ + \url{http://sourceforge.net/projects/pgf/} + + \item \package{GLE}, Graphics Layout Engine, \`e un linguaggio di + scripting grafico per creare grafico, diagrammi, figure e + diapositive di aspetto professionale:\\ + \url{www.gle-graphics.org} + + \item Asymptote \`e un linguaggio di grafica vettoriale che fornisce + un ambiente basato su coordinate per i disegni tecnici:\\ + \url{http://asymptote.sourceforge.net/} + + \item ePiX serve per creare figure matematicamente accurate: + \url{http://mathcs.holycross.edu/~ahwang/current/ePiX.html}; + + \item \package{pstricks} \`e un insieme di macro per includere + figure \PS{} in \LaTeX: + \url{http://tug.org/PSTricks/main.cgi/} + +\end{itemize} + +Questi programmi/pacchetti consentono di creare sofisticate figure in +\LaTeX. Altri programmi sono disponibili in rete; cercate nel web +``LaTeX vector graphics''. + +sono disponibili molti altri tipi di `figure'. Per farvi venire +l'acquolina in bocca, visitate la pagina del \TeX{} Showcase, +\url{http://www.tug.org/texshowcase/}. + +% ----- + +% INSERT/LINE + +\subsection{\entry{Inserisci}{Righello}} + +Si possono tracciare linee di lunghezza e larghezza arbitrarie con +\cmd{rule}: + +\begin{example} +Questo \`e un righello +a tutta pagina:\\ +\rule{\linewidth}{1pt} +questo invece \`e pi\`u +corto e spesso:\\ +\rule{2cm}{2mm} +\end{example} + +Un righello pu\`o anche essere composto da punti (\cmd{dotfill}); +questo tipo di righello si usa spesso per collegare elementi: + +\begin{example} +Prezzo totale \dotfill \euro~10 +\end{example} + +% ----- + +% INSERT/HYPERLINK + +\subsection{\entry{Inserisci}{Hyperlink}} +\label{sec:hyperlink} + +Il pacchetto \package{hyperref} consente di scrivere URL e altri +riferimenti esterni al documento. Usato insieme a \app{dvipdf} o +\app{pdflatex}, \package{hyperref} consente di creare file \file{.pdf} +navigabili! Ad esempio, questa guida contiene questa dichiarazione: + +\begin{Verbatim}[fontsize=\small] +\usepackage[colorlinks, + urlcolor=blue, + filecolor=magenta, + linkcolor=darkred, + hyperfootnotes=false]{hyperref} +\end{Verbatim} + +Vediamo un esempio: + +\begin{example} +Il sito principale del \hypertarget{ctan}{CTAN} +\`e \url{http://www.ctan.org}, ovvero +\href{http://www.ctan.org}{CTAN://}. + +Ascoltate questo +\href{run:midifile.mid}{file MIDI}. + +Fare clic \hyperlink{ctan}{qui} +per tornare su. +\end{example} + +Come si pu\`o notare, il comando \cmd{url} stampa il suo argomento +utilizzando un font monospaziato. Per usare lo stesso font del testo, +si inserisce il comando: + +\begin{Verbatim} +\urlstyle{same} +\end{Verbatim} + +dopo la dichiarazione \cmd{hyperref}. + +I comandi \cmd{hypertarget} e \cmd{hyperlink} consentono di creare +link interni al documento, proprio come in HTML; \cmd{href} crea link a +URL o file esterni. Si noti il parametro \ltx{run:} si possono +lanciare applicazioni esterne come player multimediali, programmi per +l'ufficio; qualunque cosa. Questa funzionalit\`a viene supportata dai +lettori PDF Adobe Reader, Okular ed Evince. + +In ambiente GNU/Linux, e probabilmente anche in altre varianti \unix, +bisogna configurare il lettore PDF per fare in modo che lanci +l'applicazione appropriata quando si fa clic sul relativo link. +Bisogna inserire queste linee nel vostro file \file{.mailcap} o +\file{/etc/mailcap}: + +\begin{verbatim} +audio/midi;/usr/bin/timidity %s +audio/*; xmms %s +video/*; xine -pfhq %s +\end{verbatim} + +Riferirsi alla documentazione di \package{hyperref} per ulteriori +possibilit\`a. + +% ----- + +% INSERT/COMMENT + +\subsection{\entry{Inserisci}{Commento}} + +Si fa semplicemente inserendo il carattere \car{\%} prima di ogni +linea, oppure tramite il pacchetto \package{comment} che fornisce +l'omonimo ambiente. + +% ----- + +% FORMAT + +\section{Il menu \menu{Formato}} + +Principalmente, il formato di un documento viene impostato tramite +appositi parametri in \cmd{document\-class}: grandezza predefinita dei +font (10, 11 o 12pt), formato carta (\ltx{a4paper}, \ltx{a5paper}, +\ltx{b5paper}, \ltx{letterpaper}, \ltx{legalpaper}, +\ltx{executivepaper}), orientamento della pagina (\ltx{portrait}, +\ltx{landscape}). Ad esempio, + +\begin{Verbatim}[fontsize=\small] +\documentclass[a5paper,landscape,12pt]{article} +\end{Verbatim} + +Si possono specificare altri valori per la grandezza dei font; si veda +alla Sezione~\ref{sec:extsizes}. + +% ----- + +% FORMAT/LINE SPACING + +\subsection{\entry{Formato}{Interlinea}} + +Il pacchetto \package{setspace} fornisce gli ambienti +\env{singlespace}, \env{onehalfspace} e \env{double\-space}. Inoltre, +il comando \cmd{spacing}\cmdparm{\{fattore\}} (disponibile anche come +ambiente) consente di impostare la spaziatura desiderata: + +\begin{example} +\begin{spacing}{2.5} +Queste due linee \\ +sono troppo distanziate! +\end{spacing} +\begin{spacing}{1} +Mentre invece queste due linee\\ +sono spaziate in modo normale. +\end{spacing} +\end{example} + +Se si vuole impostare l'interlinea per tutto il documento, si deve +usare nel preambolo il comando \cmd{linespread\{fattore\}}. Il valore +predefinito di \ltx{factor} \`e 1; valori pi\`u grandi danno un +interlinea maggiore. 1.6 corrisponde all'incirca all'interlinea +doppia. + +% ----- + +% FORMAT/CHARACTER + +\subsection{\entry{Formato}{Carattere}} + +Gli attributi standard dei caratteri sono elencati alla +Tabella~\ref{tab:properties}, le dimensioni alla +Tabella~\ref{tab:font_sizes}. Si noti che le dimensioni dipendono +dalla dimensione di default impostata in \ltx{docu\-ment\-class} (10, +11 o 12 pt); si veda la Tabella~\ref{tab:font_sizes2}. + +\begin{table}[htbp] +\begin{center} +\begin{tabular}{lll} \hline +\textbf{Attributo} & \textbf{Come ambiente} & \textbf{Esempio} \\ +\hline +\cmd{textnormal} & \verb|textnormal| & testo normale \\ +\cmd{textrm} & \verb|rmfamily| & \textrm{romano} \\ +\cmd{textit} & \verb|itshape| & \textit{corsivo} \\ +\cmd{emph} & n/a & \emph{corsivo (enfasi)} \\ +\cmd{textmd} & \verb|mdseries| & \textmd{normale (default)} \\ +\cmd{textbf} & \verb|bfseries| & \textbf{grassetto} \\ +\cmd{textup} & \verb|upshape| & \textup{upright (default)} \\ +\cmd{textsl} & \verb|slshape| & \textsl{inclinato} \\ +\cmd{textsf} & \verb|sffamily| & \textsf{sans serif} \\ +\cmd{textsc} & \verb|scshape| & \textsc{maiuscoletto} \\ +\cmd{texttt} & \verb|ttfamily| & \texttt{macchina da scrivere} \\ +\cmd{underline} & \verb|underline| & \underline{sottolineato} \\ +\cmd{textsuperscript} & n/a & testo in \textsuperscript{apice} \\ +\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{Attributi dei caratteri.} +\label{tab:properties} +\end{center} +\end{table} + +\`E importante capire la differenza tra testo in corsivo +(\cmd{textit}) e testo in enfasi (\cmd{emph}). \textit{Ad esempio, +questa frase \`e scritta in corsivo, e \emph{queste parole} sono +enfatizzate in upright}. Come si pu\`o vedere, \cmd{emph} \`e un +comando di tipo \emph{logico} piuttosto che tipografico. + +Inoltre, va ricordato che il testo in pedice si usa solo in modalit\`a +matematica. Per usarlo in modalit\`a testo normale, si fa: + +\begin{example} +questo testo \`e in +$_{\mbox{\footnotesize{pedice}}}$ +\end{example} + +\begin{table}[ht] +\begin{center} +\begin{tabular}{ll} \hline +\textbf{Dimensione} & \textbf{Esempio} \\ +\hline +\verb|tiny| & \tiny{testo di esempio} \\ +\verb|scriptsize| & \scriptsize{testo di esempio} \\ +\verb|footnotesize| & \footnotesize{testo di esempio} \\ +\verb|small| & \small{testo di esempio} \\ +\verb|normalsize| & \normalsize{testo di esempio} \\ +\verb|large| & \large{testo di esempio} \\ +\verb|Large| & \Large{testo di esempio} \\ +\verb|LARGE| & \LARGE{testo di esempio} \\ +\verb|huge| & \huge{testo di esempio} \\ +\verb|Huge| & \Huge{testo di esempio} \\ +\hline +\end{tabular} +\caption{Dimensione relativa dei font} +\label{tab:font_sizes} +\end{center} +\end{table} + +\begin{table}[ht] +\begin{center} + \begin{tabular}{llll} + \hline + Dimensione & 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{Dimensione in punti dei font} + \label{tab:font_sizes2} +\end{center} +\end{table} + +% ----- + +\subsubsection{Apice e pedice in formule chimiche} + +Molte formule chimiche si possono scrivere in modalit\`a matematica, +utilizzando \verb|^| e \verb|_| per ottenere apici e pedici. Il +pacchetto \env{mhchem} formisce un comando che \`e pi\`u semplice da +usare. Le cifre sono stampate in pedice di default, in apice se +precedute da \verb|^|; le formule devono essere incluse in un comando +\cmd{ce}: + +\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{Testo sottolineato} + +Di fatto, lo stile \uline{underline} non si usa pi\`u. La +sottolineatura viene considerata una vecchia eredit\`a delle macchine +da scrivere, e inoltre non ha un bell'aspetto. Se lo si vuole usare +comunque, il pacchetto \package{ulem} mette e disposizione alcuni +stili: + +\begin{example} +\uline{importante} +\uuline{urgente} +\uwave{barca} +\sout{sbagliato} +\xout{cancellato} +\end{example} + +Attenzione: \package{ulem} ridefinisce il comando \cmd{emph} +(sottolineatura anzich\'e testo enfatizzato). Per fare in modo che +\cmd{emph} mantenga il suo scopo, si deve usare questa dichiarazione: + +\begin{verbatim} +\usepackage[normalem]{ulem} +\end{verbatim} + + +% ----- + +% FORMAT/CHARACTER SIZE + +\subsubsection{\entry{Carattere}{Dimensione}} +\label{sec:extsizes} + +Se le dimensioni di default dei font non fossero abbastanza per le +proprie esigenze, si usa il pacchetto \package{extsizes}: fornisce +versioni ``estese'' delle classi di documento standard, con dimensioni +dei font nell'intervallo 8--12, 14, 17 e 20 pt. + +Supponiamo di voler scrivere un documento di classe \ltx{article} con +un font a 17 pt. Si deve usare questo preambolo: + +\begin{Verbatim}[fontsize=\small] +\documentclass[17pt]{extarticle} +\end{Verbatim} + +Un altro modo per ottenere font grandi \`e tramite il pacchetto +\package{type1cm}, che fornisce comandi come questo: + +\begin{Verbatim}[fontsize=\small] +\fontsize{72pt}{72pt}\selectfont +Vietato fumare +\end{Verbatim} + +(L'esempio qui sopra \`e troppo grande per stare in questa +pagina{\ldots}) + +I parametri sono la grandezza del font e la baseline. Un altro +approccio \`e il seguente: + +\begin{example} +\resizebox{!}{1cm}{alto 1 cm} +\end{example} + +\lettrine{L'}{inizio} di un paragrafo pu\`o essere evidenziato +utilizzando il package \package{lettrine}, che fornisce il comando +\cmd{lettrine}, pienamente personalizzabile. Questo paragrafo usa la +definizione di default: + +\begin{verbatim} +\lettrine{L'}{inizio} di un paragrafo pu\`o... +\end{verbatim} + +% ----- + +% FORMAT/FONT + +\subsubsection{\entry{Carattere}{Font}} + +\LaTeX{} utilizza i font Computer Modern, generati dal sottosistema +\MF. Questo approccio garantisce la portabilit\`a e fornisce ottimi +risultati. Molti utenti sono per\`o abituati ad altri font: Times, +Helvetica, Sans Serif{\ldots} + +Fortunatamente, \LaTeX{} pu\`o usare i font \PS. Si pu\`o provare ad +utilizzare uno di questi pacchetti: \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}; ad esempio, +inserendo la dichiara\-zio\-ne \cmd{usepackage\{times\}}. L'unica +avvertenza riguarda la modalit\`a matematica, per la quale i migliori +risultati si hanno con i font Computer Modern; font alternativi +rendono le formule meno eleganti. + +I pacchetti sopra elencati impostano il font per l'intero documento. +Se si vuole usare un font \PS{} solo per una parte del testo, si deve +specificare l'insieme di caratteri come nell'esempio che segue. Gli +insiemi di caratteri pi\`u comuni sono elencati alla +Tabella~\ref{tab:font_families}. + +\begin{warn} + + Attenzione: su alcuni sistemi cert font potrebbero non essere + disponibili! + +\end{warn} + +\begin{example} +Questo \`e il font +Computer Modern Roman, +{\fontfamily{phv}\selectfont +questo invece \`e Helvetica!} +\end{example} + +\begin{table} +\begin{center} + \begin{tabular}{ll} + \hline + \textmd{Family} & \textmd{Name}\\ + \hline + \ltx{cmr} & Computer Modern Roman\\ + \ltx{cmss} & + {\fontfamily{cmss}\selectfont Computer Modern Sans Serif}\\ + \ltx{cmtt} & + {\fontfamily{cmtt}\selectfont Computer Modern Typewriter}\\ + \ltx{pag} & + {\fontfamily{pag}\selectfont Avantgarde}\\ + \ltx{pbk} & + {\fontfamily{pbk}\selectfont Bookman}\\ + \ltx{phv} & + {\fontfamily{phv}\selectfont Helvetica}\\ + \ltx{pnc} & + {\fontfamily{pnc}\selectfont New Century Schoolbook}\\ + \ltx{ppl} & + {\fontfamily{ppl}\selectfont Palatino}\\ + \ltx{ptm} & + {\fontfamily{ptm}\selectfont Times}\\ + \ltx{pcr} & + {\fontfamily{pcr}\selectfont Courier}\\ + \hline + \end{tabular} + \caption{Insiemi di caratteri.} + \label{tab:font_families} +\end{center} +\end{table} + +% \medskip + +Un altro metodo ancora \`e la sostituzione di un font \MF{} con uno +\PS; ad esempio, usare Avantgarde ad ogni occorrenza di Computer +Modern Sans Serif. Si fa in questo modo: + +\begin{itemize} + + \item \cmd{rmdefault} (roman) + \item \cmd{sfdefault} (sans serif) + \item \cmd{ttdefault} (typewriter) + \item \cmd{bfdefault} (boldface) + \item \cmd{mddefault} (medium) + \item \cmd{itdefault} (italics) + \item \cmd{sldefault} (slanted) + \item \cmd{scdefault} (small caps) + \item \cmd{updefault} (upright) + +\end{itemize} + +\begin{Verbatim}[fontsize=\small] + % Avantgarde sostituisce sans serif +\renewcommand{\sfdefault}{pag} +\end{Verbatim} + +% ----- + +% FORMAT/COLOUR + +\subsubsection{\entry{Carattere}{Colore}} +\label{sec:charcol} + +Si possono usare colori nel testo tramite il pacchetto \package{color} +e appositi comandi. I colori predefiniti sono \ltx{black}, +\ltx{white}, \ltx{red}, \ltx{green}, \ltx{blue}, \ltx{cyan}, +\ltx{magenta}, e \ltx{yellow}, cio\`e nero, bianco, rosso, verde, blu, +azzurro, magenta e giallo. Si possono anche definire dei colori +personalizzati. + +\begin{example} +\textcolor{red}{Questo \`e rosso.}\\ +\color{blue} +Questo testo \`e blu!\\ +Anche questo. Cambiamo colore.\\ +\definecolor{mygreen} +{rgb}{0.1,1,0.1} +\color{mygreen} +Questo \`e un bel verde chiaro!\\ +\color{black} +\colorbox{cyan}{Un box azzurro}\\ +\fcolorbox{blue}{green} +{Un box azzurro contornato di blu} +\end{example} + +Inoltre, il comando \cmd{pagecolor} serve per impostare il colore +dell'intera pagina. + +% ----- + +% FORMAT/PARAGRAPH + +\subsection{\entry{Formato}{Paragrafo}} + +Si ricorda che cosa si intende per ``paragrafo'' in \LaTeX: una parte +di testo delimitata da \car{\bs\bs} oppure seguita da una linea vuota. + +Gli \emph{ambienti} (environment) sono il modo principale per +specificare le propriet\`a di un paragrafo, come l'allineamento o il +font. \`E un po' come selezionare il testo con il mouse per poi +scegliere da un menu le propriet\`a desiderate. Un altro modo \`e +racchiudere il testo tra parentesi graffe. + +Gli ambienti hanno questa forma: + +\begin{Verbatim}[fontsize=\small] +\begin{environment} +...qui va il testo... +\end{environment} +\end{Verbatim} + +Ad esempio, per centrare un paragrafo si pu\`o usare l'ambiente +\env{center}: + +\begin{example} +\begin{center} +questo testo \`e centrato +\end{center} +\end{example} + +Gli ambienti standard sono elencati in Tabella~\ref{tab:environments}. +Nelle prossime sezioni, si mostrer\`a quali usare e come. + +\begin{table}[p] +\begin{center} +\begin{tabular}{ll} \hline +\textbf{Environment} & \textbf{Scopo} \\ +\hline +\ltx{abstract} & riassunto\\ +\ltx{array} & array di formule\\ +\ltx{center} & linee centrate\\ +\ltx{description} & elenchi con etichetta \\ +\ltx{displaymath} & formule matematiche\\ +\ltx{document} & inizia un documento\\ +\ltx{enumerate} & elenchi numerati\\ +\ltx{eqnarray} & sequenza di equazioni allineate\\ +\ltx{equation} & mostra un'equazione\\ +\ltx{figure} & figura mobile\\ +\ltx{flushleft} & testo allineato a sinistra\\ +\ltx{flushright} & testo allineato a destra\\ +\ltx{itemize} & elenchi puntati\\ +\ltx{letter} & lettere\\ +\ltx{list} & elenco generico\\ +\ltx{math} & formule nel paragrafo\\ +\ltx{minipage} & mini pagina\\ +\ltx{picture} & immagine con testo e figure geometriche\\ +\ltx{quotation} & citazione con testo indentato\\ +\ltx{quote} & citazione senza indentazione\\ +\ltx{tabbing} & tabulazioni\\ +\ltx{table} & tabelle mobili\\ +\ltx{tabular} & testo allineato in colonne\\ +\ltx{thebibliography} & bibliografia\\ +\ltx{theorem} & teoremi, lemmi ecc.\\ +\ltx{titlepage} & prime pagine personalizzate\\ +\ltx{verbatim} & testo letterale\\ +\ltx{verse} & poesie e simili\\ +\hline +\end{tabular} +\caption{Ambienti standard di \LaTeX} +\label{tab:environments} +\end{center} +\end{table} + +% ----- + +% FORMAT/PARAGRAPH HORIZONTAL ALIGNMENT + +\subsubsection{\entry{Paragrafo}{Allineamento orizzontale}} + +Il testo viene allineato ai margini, per default. Per avere il testo +allineato solo a sinistra, a destra o centrato, si usano gli +ambienti \env{flushleft}, \env{flushright} e \env{center}. I +comandi \cmd{raggedright}, \cmd{raggedleft} e \cmd{centering} sono +equivalenti agli ambienti, ma non iniziano un nuovo paragrafo. + +% ----- + +% FORMAT/PARAGRAPH VERTICAL ALIGNMENT + +\subsubsection{\entry{Paragrafo}{Allineamento verticale}} + +Una delle differenze che confonde maggiormente gli utenti di word +processor \`e il modo in cui i paragrafi vengono separati in \LaTeX. +\emph{Una o pi\`u linee vuote vengono considerate equivalenti a una +sola linea vuota; lo stesso vale per gli spazi}. In altre parole, non +si pu\`o ottenere pi\`u spazio tra paragrafi inserendo linee vuote. +Per spaziarli, si usano i comandi \cmd{smallskip}, \cmd{medskip} e +\cmd{bigskip} per ottenere una spaziatura piccola, media o grande. + +Se serve pi\`u spazio, si pu\`o usare il comando +\cmd{vskip}\{\textit{parametro}\} come in questo esempio: + +\begin{example} +Questi paragrafi saranno +separati di 1,3 cm:\\ +\vskip 1.3cm +c'\`e uno spazio di 1,3 cm +sopra di me. +\end{example} + +Va notato che \cmd{vskip} funziona solo tra paragrafi. Come si fa +allora per iniziare una pagina dopo un margine aggiuntivo di (ad es.) +1,3 cm? Si deve usare il comando \cmd{null}, che fa da ``segnaposto'' +nel testo: + +\begin{example} +\null +\vskip 1.3 cm +Linea che inizia dopo 1,3 cm. +\end{example} + +Infine, il comando \cmd{vfill} si usa per aggiungere un ``riempimento +verticale'', ad esempio per inserire linee vuote tra paragrafi in modo +che il secondo si trovi esattamente a fine pagina: + +% \begin{example} will not work here +% \medskip + +\begin{minipage}[c]{0.49\textwidth} + \begin{Verbatim}[fontsize=\small] + Questo testo appare all'inizio + della pagina{\ldots} + \vfill + {\ldots}e questo invece alla fine. + \end{Verbatim} +\end{minipage} +\begin{boxedminipage}[c]{0.49\textwidth} + Questo testo appare all'inizio + della pagina{\ldots} + \vskip 1.3 cm + {\ldots}e questo invece alla fine. +\end{boxedminipage} + +% ----- + +% FORMAT/PARAGRAPH MARGINS + +\subsubsection{\entry{Paragrafo}{Margini}} + +Di solito, si impostano i margini per l'intero documento come abbiamo +visto alla Sezione~\ref{sec:pagesetup}. Ridefinirli temporaneamente +per una parte del testo non funziona: per reimpostare i margini per +uno o pi\`u paragrafi, si deve creare un nuovo ambiente come questo: + +\begin{Verbatim}[fontsize=\small] +\newenvironment{margini}[2] +{ + \begin{list}{} { + \setlength{\leftmargin}{#1} + \setlength{\rightmargin}{#2} + } \item } +{\end{list}} +\end{Verbatim} + +Il nuovo ambiente si usa cos\`\i{}: + +\begin{example} +Come si pu\`o vedere, questo +paragrafo ha i margini +predefiniti. +\begin{margini}{0.5cm}{1cm} +Ma attenzione: li abbiamo +cambiati per questo paragrafo! +\end{margini} +\end{example} + +% ----- + +% FORMAT/PARAGRAPH INDENTATION + +\subsubsection{\entry{Paragrafo}{Rientro}} + +Per impostare il rientro di un paragrafo, si modifica il valore del +contatore \cmd{parindent}. In questo esempio, impostiamo il rientro +di 1 cm: + +\begin{Verbatim}[fontsize=\small] +\setlength{\parindent}{1cm} +\end{Verbatim} + +I comandi \cmd{indent} e \cmd{noindent} consentono o impediscono il +rientro nel paragrafo successivo. Infine, la distanza tra paragrafi si +imposta con il contatore \cmd{parskip}: + +\begin{Verbatim}[fontsize=\small] +\setlength{\parskip}{3pt} +\end{Verbatim} + +% ----- + +% FORMAT/BORDER + +\subsubsection{\entry{Paragrafo}{Bordi e ombreggiatura}} + +Per avere parole o paragrafi circondati da un bordo, si usano il +pacchetto \package{framed} e/o il comando \cmd{parbox}. Nel secondo +caso, \`e anche necessario il pacchetto \package{calc}. + +Il metodo pi\`u facile \`e usare \package{framed}: + +% \begin{example} will not work here +\bigskip + +\begin{minipage}[c]{0.5\textwidth} + \begin{Verbatim}[fontsize=\small] + \setlength{\FrameRule}{2pt} + \setlength{\FrameSep}{5pt} + \begin{framed} + questo paragrafo ha il bordo! + \end{framed} + \definecolor{shadecolor}{rgb} + {0.8,0.8,1} + \begin{shaded} + questo paragrafo \`e + ombreggiato, vi piace? + \end{shaded} + \end{Verbatim} +\end{minipage}% +\begin{minipage}[c]{0.5\textwidth} +\setlength{\FrameRule}{2pt} +\setlength{\FrameSep}{5pt} +\begin{framed} + questo paragrafo ha il bordo! +\end{framed} +\definecolor{shadecolor}{rgb} + {0.8,0.8,1} + \begin{shaded} + questo paragrafo \`e + ombreggiato, vi piace? + \end{shaded} +\end{minipage} + +\bigskip + +In modo equivalente, si pu\`o fare con il pacchetto +\package{boxedminipage} e l'omonimo ambiente. Per chi vuole saperne di +pi\`u: i comandi + +\begin{Verbatim}[fontsize=\small] +\framebox{ + \begin{minipage}[c]{\linewidth} + testo da bordare + \end{minipage} +} +\end{Verbatim} + +danno gli stessi risultati dell'ambiente \env{boxedminipage}. + +% Questo esempio usa invece \cmd{parbox}: + +% \begin{example} +% \noindent +% \fbox{ +% \parbox{\linewidth% +% -2 \fboxsep -2 \fboxrule} +% {un altro paragrafo col bordo} +% } +% \end{example} + +\cmd{width} imposta la larghezza della minipage uguale a quella del +testo. Si pu\`o ovviamente impostare la larghezza che si preferisce. + +Infine, si pu\`o impostare un bordo che si adatti alla larghezza del +testo: + +\begin{example} +questa \`e una +\framebox[\width]{parola} +con il bordo. +\end{example} + +Si pu\`o variare la larghezza modificando il parametro di +\cmd{framebox}: + +\begin{example} +questa \`e un'altra +\framebox[2\width][r]{parola} +con il bordo. +\end{example} + +Notare il secondo parametro opzionale, che permette di indicare un +allineamento (a destra nell'esempio). + +% ----- + +% FORMAT/COLOUR + +\subsubsection{\entry{Paragrafo}{Colore}} + +Ora che si ha un bordo, si potr\`a impostare anche un colore di +sfondo: + +\begin{example} +\colorbox{yellow}{ + \begin{minipage} + {0.8\linewidth} + Questa \`e una minipage + di colore giallo! + \end{minipage} +} +\end{example} + +A scopo esemplificativo, il colore \`e stato limitato all'80\% della +minipage. Alla Sezione~\ref{sec:charcol} verranno spiegati altri +dettagli sull'uso dei colori. + +% ----- + +% FORMAT/COLUMNS + +\subsection{\entry{Formato}{Colonne}} + +I comandi \cmd{twocolumn} e \cmd{onecolumn} iniziano una nuova pagina +e impostano il numero di colonne del testo; si possono usare anche +xcome parametri in \cmd{documentclass}. Se ancora non basta, il +pacchetto \package{multicols} fornisce l'omonimo ambiente. Si sarebbe +potuta impostare questa sezione in due colonne con i comandi: + +\begin{Verbatim}[fontsize=\small] +\columnseprule=1pt +\begin{multicols}{2}[\subsection{\entry{Formato}{Colonne}}] +I comandi \cmd{twocolumn} e \cmd{onecolumn} ... +\end{multicols} +\end{Verbatim} + +Lo spazio tra le colonne si imposta con il parametro \cmd{columnsep}, +lo spessore della linea tra le colonne con \cmd{columnseprule}. Il +testo specificato come parametro opzionale tra le parentesi quadre +viene escluso dall'ambiente. + +% ----- + +% TABLE + +\section{Il menu \menu{Tabella}} +\label{sec:table} + +Le tabelle sono un argomento piuttosto complesso{\ldots} Una tabella +\`e un oggetto mobile (come spiegato alla Sezione~\ref{sec:figure}) +che deve essere compreso in una pagina. Normalmente contiene un +ambiente \env{tabular}, ma ci sono altre possibilit\`a. Per default, +una tabella si adatta automaticamente alla larghezza dei suoi +contenuti. + +Va sottolineato che l'ambiente \env{table} \`e un oggetto mobile, ma +l'ambiente \env{tabular} non lo \`e. Di questo va tenuto conto se si +vogliono scrivere tabelle ``informali'', cio\`e senza etichetta e +didascalia. + +Questo \`e il formato generale di una tabella: + +\begin{Verbatim}[fontsize=\footnotesize] +\begin{table}[htbp] % posizione: qui, alto, basso, pagina separata +% \begin{small} % imposta il font della tabella +\begin{center} % opzionale +% tabella a 4 colonne; allieneamento a sx, centro, dx, larghezza fissa +\begin{tabular}{|l|c|rp{4cm}|} +\hline % linea orizzontale +\textbf{Sinistra} & \textbf{Centro} & \textbf{Destra} & \textbf{4 cm} \\ +\hline +riga 1, col 1 & riga 1, col 2 & riga 1, col 3 & riga 1, col 4 \\ +\cline{1-2} % linea orizz. estesa tra le colonne 1-2 +riga 2, col 1 & riga 2, col 2 & riga 2, col 3 & riga 2, col 4 \\ +\cline{1-2} +\multicolumn{2}{|c|}{esteso tra due colonne} & riga 3, col 3 & +riga 3, col 4 \\ +\cline{1-3} +riga 4, col 1 & riga 4, col 2 & riga 4, col 3 & ~ \hfill destra \\ +% force a space with "\ " +riga 5, col 1 & riga 5, col 2 & riga 5, col 3 & sinistra \hfill ~ \\ +riga 5, col 1 & riga 5, col 2 & riga 5, col 3 & +~ \hfill centro \hfill ~ \\ +\hline +\end{tabular} +\caption{Una tabella di esempio.} +% le etichette si usano per i riferimenti; +% ad esempio, ``si veda la Tabella~\ref{tab:sampletab}" +\label{tab:sampletab} +\end{center} +% \end{small} +\end{table} +\end{Verbatim} + +La tabella~\ref{tab:sampletab} mostra i risultati. + +\begin{table}[htbp] % posizione: qui, alto, basso, pagina separata +% \begin{small} % imposta il font della tabella +\begin{center} % opzionale +% tabella a 4 colonne; allieneamento a sx, centro, dx, larghezza fissa +\begin{tabular}{|l|c|rp{4cm}|} +\hline % linea orizzontale +\textbf{Sinistra} & \textbf{Centro} & \textbf{Destra} & \textbf{4 cm} \\ +\hline +riga 1, col 1 & riga 1, col 2 & riga 1, col 3 & riga 1, col 4 \\ +\cline{1-2} % linea orizz. estesa tra le colonne 1-2 +riga 2, col 1 & riga 2, col 2 & riga 2, col 3 & riga 2, col 4 \\ +\cline{1-2} +\multicolumn{2}{|c|}{esteso tra due colonne} & riga 3, col 3 & +riga 3, col 4 \\ +\cline{1-3} +riga 4, col 1 & riga 4, col 2 & riga 4, col 3 & ~ \hfill destra \\ +% force a space with "\ " +riga 5, col 1 & riga 5, col 2 & riga 5, col 3 & sinistra \hfill ~ \\ +riga 5, col 1 & riga 5, col 2 & riga 5, col 3 & +~ \hfill centro \hfill ~ \\ +\hline +\end{tabular} +\caption{Una tabella di esempio.} +% le etichette si usano per i riferimenti; +% ad esempio, ``si veda la Tabella~\ref{tab:sampletab}" +\label{tab:sampletab} +\end{center} +% \end{small} +\end{table} + +Talvolta, una tabella \`e troppo larga e non rientra nei margini della +pagina. In questo caso, il pacchetto \package{rotating} fornisce +l'ambiente \env{sidewaystable}. Inoltre, \package{rotating} rende +possibile ruotare i contenuti di una cella di un angolo specificato. +Esiste anche il pacchetto \package{tabularx} che consente di +specificare tabelle di larghezza fissa tramite il parametro \ltx{X}, +che indica che una colonna pu\`o espandersi a richiesta. + +Ecco un esempio: + +% \begin{example} will not work here +\bigskip + +\begin{minipage}{0.7\textwidth} + \begin{Verbatim}[fontsize=\small] + \begin{sidewaystable} + \begin{tabularx}{7.5cm}{|l|X|X|} + \hline + \textbf{normale} & \textbf{inclinato} & + \textbf{pi\`u largo} \\ + \hline + normale & \rotatebox{30}{inclinato!} & + pi\`u largo \\ + \hline + \end{tabularx} + \end{sidewaystable} +\end{Verbatim} +\end{minipage}% +\begin{minipage}{0.3\textwidth} +% qui imbrogliamo: tabularx non funziona in una minipage, +% quindi carichiamo la figura. +\ifpdf + \includegraphics{tbx.pdf} +\else + \includegraphics{tbx.epsi} +\fi +\end{minipage} + +\bigskip + +Si ricorda \note che l'ambiente \env{tabular} standard non pu\`o +estendersi oltre una pagina! Ci sono pacchetti che consentono di +superare questa limitazione: si raccomandano \package{longtable}, +\package{supertabular} e \package{xtab}. + +Per avere righe o celle colorate, si usa il pacchetto +\package{colortbl}: + +\begin{example} +Colore per linea:\\\vskip 2mm +\begin{tabular}{|l|c|r|} + \hline + \rowcolor{cyan} + uno & due & tre\\ + \rowcolor{green} + uno & due & tre\\ + \rowcolor{yellow} + uno & due & tre\\ + \hline +\end{tabular} +\end{example} + +\begin{example} +Colore per colonna:\\\vskip 2mm +\begin{tabular} + {|>{\columncolor{cyan}}l| + >{\color{red} + \columncolor{green}}c| + >{\columncolor{yellow}}r|} + \hline + uno & due & tre\\ + uno & due & tre\\ + uno & due & tre\\ + \hline +\end{tabular} +\end{example} + +Per concludere l'argomento tabella, ecco un suggerimento. Se si +ritiene che scrivere le tabelle \LaTeX{} sia troppo complicato, si +pu\`o trovare un valido aiuto in OpenOffice Calc e Calc2LaTeX. Il +primo di questi \`e il noto foglio elettronico Open Source, il secondo +\`e una componente aggiuntiva che serve per convertire un insieme di +celle in una tabella \LaTeX. Link: \url{http://www.openoffice.org/}, +\url{http://calc2latex.sourceforge.net/}. + +% ----- + +\subsection{\entry{Tabella}{Interlinea}} + +Una linea della tabella prende l'altezza del testo che contiene. Per +aggiungere dello spazio \emph{prima} di una linea, si pu\`o usare il +trucco di iniziarla con un \ltx{\textbackslash{}rule} di lunghezza 0 e +altezza specificata. Per aggiungere spazio \emph{dopo} la linea, si +usa \ltx{\textbackslash{}\textbackslash{}} seguito da un parametro +opzionale che specifica lo spazio. + +Ecco un esempio: + +\begin{example} +\begin{tabular}{lll} +uno & due & tre\\ +0.3 centimetri & \textbf{dopo} & +questa linea\\[0.3cm] +uno & due & tre\\ +uno & due & tre\\ +\rule{0pt}{1.2cm}1.2 centimetri & + \textbf{prima} & di questa linea\\ +\end{tabular} +\end{example} + +% ----- + +\subsection{\entry{Tabella}{Larghezza del righello}} + +% TO DO: \setlength{\arrayrulewidth}{<width>} + +\begin{example} +\begin{tabular}{|lll|} +\hline +\setlength{\arrayrulewidth}{25pt} +uno & due & tre\\ +\hline +quattro & cinque & sei\\ +%\setlength{\arrayrulewidth}{1pt} +\hline +\end{tabular} +\end{example} + +% ----- + +\subsection{\entry{Tabella}{Allineamento dei numeri}} + +Un caso particolare dell'ambiente \env{tabular} \`e quando si vogliono +allineare dei numeri rispetto alle posizioni decimali. + +Il modo pi\`u semplice \`e tramite lo specificatore di colonna +\verb-@-, che in pratica serve solo in tabelle che contengano solo +numeri. Il separatore di colonna \ltx{\&} \`e sostituito dal punto +decimale: + +\begin{example} +\begin{tabular}{r@{.}l} + 3&14159\\ + 1&61803\\ + 1&41421\\ + 100&00000 +\end{tabular} +\end{example} + +Come alternativa, si usa il pacchetto \package{dcolumn}, che aggiunge +lo specificatore di colonna \ltx{D}. \ltx{D} ha tre argomenti: il +separatore da usare nel sorgente \LaTeX{} e in output (solitamente lo +stesso, ``.'') e il numero di cifre alla destra dell'indicatore della +posizione decimale. Inoltre, il terzo parametro opzionale pu\`o +indicare il numero di cifre a sinistra e a destra del punto decimale, +separate appunto da un punto. Infine, se il terzo parametro \`e -1, i +numeri della colonna verranno centrati intorno al separatore decimale. + +I contenuti della tabella sono stampati in modalit\`a matematica. Per +inserire delle intestazioni, si dovr\`a includere il testo in un +\cmd{mbox}. + +% \begin{example} will not work here +\bigskip + +\begin{minipage}[c]{0.5\textwidth} + \begin{Verbatim}[fontsize=\small] + \begin{tabular}{|D{.}{,}{4.2}|% + D{.}{.}{5}|D{.}{.}{-1}|} + \hline + \mbox{Uno} & \mbox{Due} & + \mbox{Tre} \\ + 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{Uno} & \mbox{Due} & +\mbox{Tre} \\ +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{Il pacchetto \package{slashbox}} + +Questo pacchetto aggiunge il comando \cmd{backslashbox}. + +\bigskip + +\begin{minipage}[c]{0.5\textwidth} + \begin{Verbatim}[fontsize=\small] +\begin{tabular}{|l|l|l|} + \hline + \backslashbox[2cm]{Lezione}{Data} & + Luned\`\i{} & Marted\`\i{} \\ + \hline + Stratigrafia & aula A & aula A \\ + Chimica & aula B & Lab $\alpha$ \\ + Fisica & aula C & Lab $\beta$ \\ + \hline +\end{tabular} +\end{Verbatim} +\end{minipage}% +\begin{minipage}[c]{0.5\textwidth} +\begin{tabular}{|l|l|l|} + \hline + \backslashbox[2cm]{Lezione}{Data} & + Luned\`\i{} & Marted\`\i{} \\ + \hline + Stratigrafia & aula A & aula A \\ + Chimica & aula B & Lab $\alpha$ \\ + Fisica & aula C & Lab $\beta$ \\ + \hline +\end{tabular} +\end{minipage} + +% \emph{TODO: mention \cmd{newcolumntype} e \package{floatflt}} + +% ----- + +\subsection{Importare dati in tabelle \LaTeX} + +Per molte persone, i file di dati numerici rappresentano il lavoro +quotidiano. Molti file di dati sono semplici file ASCII contenenti +colonne di numeri; altri file solo invece prodotti con fogli +elettronici. Praticamente tutti i fogli elettronici possono esportare +i dati in formato \file{.csv}; i valori sono di solito separati con il +carattere ``;''. + +Convertire un file di dati in una tabella \LaTeX{} \`e un lavoro +complesso e noioso. Lo script seguente, per sistemi \unix, svolge +questo lavoro di conversione in automatico; funziona anche per +convertire file \file{.csv}. Richiede il programma \app{awk}. + +\begin{Verbatim}[fontsize=\small] +#!/bin/sh + +# dat2tex: converte dati tabellari in un ambiente tabular + +if [ $# != 1 ]; then + echo "Uso: $0 <datafile>" + exit 1 +fi + +# e' un file csv? +grep ";" $1 > /dev/null +if [ $? = 0 ]; then + AWK="awk -F;" +else + AWK=awk +fi + +# forza awk, buon lavoro +$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 + +# fine del file dat2tex +\end{Verbatim} + +% ----- + +% TOOLS + +\section{Il menu \menu{Strumenti}} + +% ----- + +% TOOLS/MAIL MERGES + +\subsection{\entry{Strumenti}{Stampa unione}} + +Questa utilissima funzionalit\`a viene implementata dal pacchetto +\package{textmerg}. Si consideri un semlice documento, ad esempio una +lettera, nella quale possono variare il nome, cognome e titolo della +persona cui stiamo scrivendo. Il testo rimanente non cambia. + +Si dovranno definire tre \emph{campi}, che rappresentano la parte +variabile del testo: \cmd{Nome}, \cmd{Cognome} e \cmd{Titolo}. I +rispettivi valori verranno letti da un file di testo, \file{dati.dat}. + +\begin{Verbatim}[fontsize=\small] +\documentclass{article} +\usepackage{textmerg} +\begin{document} +% dichiariamo i campi variabili: +% \Void serve per linee vuote. +\Fields{\Nome\Cognome\Titolo-\Void} +\Merge{dati.dat}{% +Caro \Titolo{} \Cognome,\\ +posso chiamarti \Nome?\\ +Cordialmente,\\ +\hspace{3cm}Guido\clearpage} +\end{document} +\end{Verbatim} + +Il quarto campo, \cmd{Void}, qui in realt\`a non serve ed \`e incluso +solo per esempio. Viene preceduto da un segno meno, il che significa +che nel file di dati questo campo pu\`o essere vuoto. In altre parole, +si vogliono separare i campi con linee vuote. + +Questo \`e il file \file{dati.dat}: + +\begin{Verbatim}[fontsize=\small] +Guido +Gonzato +Dr. + +Francesco +Mulargia +Prof. + +Marie +Curie +Mme + +\end{Verbatim} + +Tutto qui: l'output risultante conterr\`a il testo adattato per +ciascuno dei destinatari, una pagina per ognuno. + +% ----- + +% TOOLS/LABELS + +\subsection{\entry{Strumenti}{Etichette}} + +Se \`e stato facile realizzare la stampa unione, \`e addirittura +banale stampare delle etichette. Si supponga di voler stampare 20 +etichette su di un foglio adesivo che ne contiene 3$\times$8. Si deve +usare il pacchetto \package{labels}; nell'esempio che segue, si +stamperanno 10 etichette normali e 10 col bordo: + +\begin{Verbatim}[fontsize=\small] +\documentclass[a4paper,12pt]{article} +\usepackage{labels} +\LabelCols=3 % n. di colonne di etichette +\LabelRows=8 % n. di righe di etichette +\LeftBorder=8mm % bordi di ciascuna etichetta +\RightBorder=8mm +\TopBorder=5mm +\BottomBorder=5mm +\LabelGridtrue % mostra una griglia +\numberoflabels=10 % n. di etichetta da stampare per ogni tipo +% il testo dell'etichetta si specifica +% tramite la macro \addresslabel[]{}: +\begin{document} + \addresslabel[\large] % argomenti opzionali + {\textbf{Guido Gonzato}, Ph.D.\\ + \textsl{Linux system manager}} + % etichette col bordo + \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 e adjust the page +% margins (use \package{geometry}; omitted in this example). + +Per realizzare etichette che contengano diversi indirizzi, si pu\`o +usare un file esterno o inserire gli indirizzi nel file principale: + +\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} +% usare questo ambiente: +\begin{labels} + 1$^{o}$ nome + 1$^{o}$ indirizzo + 1$^{o}$ citt\`a, CAP + + 2$^{o}$ nome + 2$^{o}$ indirizzo + 2$^{o}$ citt\`a, CAP + + 3$^{o}$ nome + 3$^{o}$ indirizzo + 3$^{o}$ citt\`a, CAP +\end{labels} +% oppure un file esterno contenente +% esattamente lo stesso testo: +% \labelfile{addresses.dat} +\end{document} +\end{Verbatim} + +Si lascia come esercizio al lettore la combinazione dei pacchetti +\package{textmerg} e \package{labels}! + +% ----- + +% TOOLS/LANGUAGE + +\subsection{\entry{Strumenti}{Lingua}} + +La lingua predefinita di \LaTeX{} \`e l'inglese, ma ovviamente ne +supporta altre, tra cui l'italiano. Per ``lingua'' si intende la +traduzione automatica di termini come ``Chapter'' o ``Index'' in +``Capitolo'' e ``Indice'', la sillabazione e la possibilit\`a di +inserire direttamente i caratteri accentati (il modo standard \`e +tramite combinazioni di caratteri: \car{\`e} si inserisce con +\ltx{\bs{}`e}.) + +Le distribuzioni \LaTeX{} contengono un file chiamato +\file{language.dat} (di solito in +\path{$TEXMF/tex/generic/config/language.dat}) che contiene un elenco +di lingue. Questo file si pu\`o editare per aggiungere la lingua +italiana. + +Inoltre, \`e importante il pacchetto \package{babel} che serve per +attivare il supporto per la lingua italiana: + +\begin{Verbatim}[fontsize=\small] +\usepackage[italian]{babel} +\end{Verbatim} + +\begin{warn} + + \package{babel} pu\`o cambiare il modo in cui alcuni caratteri + vengono trattati da \LaTeX. Se ci si imbatte in problemi inattesi, + si dovranno inserire i caratteri problematici tramite la sintassi + \cmd{charXX}. A me \`e capitato con il carattere \char94. + +\end{warn} + +Per inserire lettere accentate e in generale i caratteri ASCII non +standard\footnote{in gergo informatico, i ``caratteri ASCII standard'' +sono quelli il cui codice \`e compreso tra 32 (spazio) e 126 +(tilde).}, si possono usare i pacchetti \package{inputenc} e +\package{fontenc}, specificando l'encoding desiderato. UTF-8 dovrebbe +essere la scelta corretta, e dovr\`a essere impostato anche per il +proprio editor: + +\begin{Verbatim}[fontsize=\small] +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\end{Verbatim} + +Un modo alternativo per non inserire le lettere accentate a mano \`e +quello di configurare l'editor per farlo in automatico. Ad esempio, ho +configurato il mio editor preferito (\app{jed}) in modo che inserisca +\ltx{\bs{}'e} quando batto la lettera \car{\`e}. Ecco che cosa ho +incluso nel mio file \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} +} + +Si dovr\`a verificare nella documentazione del proprio editor. + +% ----- + +% TOOLS/HYPHEN + +\subsection{\entry{Strumenti}{Sillabazione}} + +Per quanto \LaTeX{} in genere faccia un buon lavoro di sillabazione, +talvolta pu\`o rendersi necessario un intervento manuale. La +sillabazione si indica inserendo \car{\bs-} nel punto dove si vuole +che la parola sia divisa. Un altro modo \`e specificando delle regole +di sillabazione per un elenco di parole: + +\begin{Verbatim}[fontsize=\small] +\hyphenation{geo-fi-si-ca geo-lo-gia Terra} +\end{Verbatim} + +Questa dichiarazione indica che la parola ``Terra'' non deve essere +divisa. Un altro modo per impedire che una parola sia sillabata \`e +quello di racchiuderla in un \cmd{mbox}: + +\begin{Verbatim}[fontsize=\small] +Sono un masochista, quindi non voglio sillabare +la parola \mbox{internazionalizzazione}. +\end{Verbatim} + +% ----- + +% TOOLS/SPELL CHECK + +\subsection{\entry{Strumenti}{Ortografia}} + +\LaTeX{} non si occupa di ortografia. Il controllo ortografico si fa +tramite strumenti esterni come \app{ispell}, \app{aspell} o altri +ancora. In ambiente \unix, si usa \app{ispell} in questo modo: + +\begin{Verbatim}[fontsize=\small] +shell> ispell -t -d italiano documento.tex +\end{Verbatim} + +Lo switch \ltx{-t} indica a \app{ispell} di ignorare i comandi \TeX{} +e \LaTeX. Lo switch \ltx{-d} serve per specificare il dizionario +italiano. + +% ----- + +% HELP + +\section{Il menu \menu{Aiuto}} + +Ci sono molti modi di ottenere aiuto con \LaTeX, anche online. Il sito +principale da cui iniziare \`e la pagina apposita del CTAN, +\url{http://www.ctan.org/tex-archive/info/}. + +\begin{itemize} + + \item \cmdline{info latex} o \cmdline{info latex2e} (sistemi \unix) + fornisce una guida concisa ma completa sui comandi e i concetti; + + \item \url{http://www.ctan.org/tex-archive/info/LatexHelpBook/} \`e + un sistema di aiuto per \LaTeX, integrato con Windows. + + \item da non scordare il gruppo di discussione + \url{http://groups.google.com/group/comp.text.tex/topics}: \`e + un'importantissima fonte di aiuto da parte di altri utenti. + +\end{itemize} + +Molte distribuzioni GNU/Linux forniscono \app{TeXLive}, che \`e +probabilmente il sistema \LaTeX{} pi\`u completo. Con esso viene +fornita molta documentazione; sul mio sistema Ubuntu, si trova in +\path{/usr/share/doc/texlive-doc/}. + +% ----- + +\section{Fine} + +Questo documento \`e copyleft \textcopyright{} Guido Gonzato, +2001--2015, e distribuito sotto licenza GNU Free Documentation +Licence. Spero che vi possa risultare utile. Per ogni commento o +suggerimento, contattatemi pure. + +\newpage + +% ----- + +\appendix + +\section{Modelli di documento} +\label{ap:templates} + +Un modello per la classe \ltx{article} \`e stato presentato alla +Sezione~\ref{sec:filenew}. Altri modelli sono mostrati nelle figure +seguenti. + +% ----- + +% LIBRO + +\begin{figure}[htbp] +\begin{Verbatim}[fontsize=\small] +\documentclass[twoside,11pt]{book} +\begin{document} +\frontmatter +\begin{titlepage} +\title{Il mio libro} +\end{titlepage} +\author{Guido Gonzato} +\maketitle +\tableofcontents +\mainmatter +\part{L'inizio} +\chapter{Introduzione} +\section{Iniziamo} +Il libro inizia qui. +\part{Fine} +\backmatter +Grazie per aver letto il mio libro. +\end{document} +\end{Verbatim} +\caption{Modello di documento di classe \ltx{book}.} +\end{figure} + +% ----- + +% REPORT + +\begin{figure}[htbp] +\begin{Verbatim}[fontsize=\small] +\documentclass[twoside,12pt]{report} +% tabelle e figure alla fine: +\usepackage{endfloat} +\begin{document} +\title{Relazione finale} +\author{Guido Gonzato} +\date{Verona, \today} +\maketitle +\begin{abstract} +Questa \`e la relazione finale. +\end{abstract} +\tableofcontents +\listoftables +\listoffigures +\part{Prima parte} +\chapter{Inizio} +\section{Introduzione} +La relazione inizia qui. +\end{document} +\end{Verbatim} +\caption{Modello di documento di classe \ltx{report}.} +\end{figure} + +% ----- + +% LETTERA + +\begin{figure}[htbp] +\begin{Verbatim}[fontsize=\small] +\documentclass[12pt]{letter} +\begin{document} +\address{Il mio indirizzo} +\signature{Guido} +\begin{letter}{indirizzo del destinatario} +\opening{Caro Tizio,} +Grazie tante per la birra. +... +\closing{Spero di rivederti presto,} +\ps{P.S. Salutami tua sorella!} +\encl{Le foto di mio figlio} +\end{letter} +\end{document} +\end{Verbatim} +\caption{Modello di documento di classe \ltx{letter}.} +\end{figure} + +% ----- + +% AVVISO + +\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{Per piacere:}}} + \vskip 1cm + \fontsize{4cm}{3cm}\selectfont + \centerline{\textcolor{red}{NON FUMATE}} + \centerline{\textcolor{red}{IN QUESTA}} + \centerline{\textcolor{red}{STANZA!}} + \vskip 1cm + \fontsize{2cm}{2cm}\selectfont + \centerline{\textcolor{magenta}{Se lo fate,}} + \centerline{\textcolor{magenta}{verrete \emph{disossati!}}} +\end{sidewaysfigure} +\end{document} +\end{Verbatim} +\caption{Come scrivere un volantino.} +\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} % unita' di misura: modulo +\setlength{\TPVertModule}{\TPHorizModule} +\setlength{\TPboxrulesize}{1pt} % spessore linea +% l'angolo in alto a sinistra e' l'origine +\textblockorigin{0mm}{0mm} + +\begin{document} +\setlength{\parindent}{0pt} +\definecolor{shadecolor}{rgb}{0.9,1,1} +\begin{textblock}{5}(0,0) +% questo blocco e' largo 5 moduli; +% l'altezza e' automatica +\begin{center} + \begin{minipage}[c]{0.8 \linewidth} + \begin{shaded} + Questo blocco ha l'angolo in alto a sx all'``origine'' + della pagina, impostata a (0mm,0mm). Il margine interno + e l'ombreggiatura sono creati dagli ambienti + \texttt{minipage} e \texttt{shaded}. + \end{shaded} + \end{minipage} +\end{center} +\end{textblock} +\begin{textblock}{6}(10,1) + \includegraphics[width=6cm,angle=-90]{gnuplot.ps} + Questa figura sta a (10,1). Notare che ruotandola + di -90 gradi fa uscire il margine. +\end{textblock} +\begin{textblock}{5}[0.5,0.5](2.5,8) +Questo blocco sta a (2.5,8); ma poich\'e si \`e specificato +l'argomento opzionale [0.5,0.5], \`e il centro del blocco +a trovarsi in quella posizione, invece dell'angolo superiore +sinistro. +\end{textblock} +\begin{textblock}{3,4}(6,4) +Le dimensioni di questo blocco sono 3$\times$4 cm. +L'origine \`e (6,4) nella pagina. Notare che il testo +supera il margine in alcuni punti; per impedirlo, usare +l'ambiente \env{minipage}. +\end{textblock} +\end{document} +\end{Verbatim} +\caption{Come scrivere un poster.} +\label{fig:poster} +\end{figure} + +% ----- + +% Fine + +\end{document} diff --git a/info/latex4wp-it/midifile.mid b/info/latex4wp-it/midifile.mid Binary files differnew file mode 100644 index 0000000000..77d83eab49 --- /dev/null +++ b/info/latex4wp-it/midifile.mid diff --git a/info/latex4wp-it/tbx.eps b/info/latex4wp-it/tbx.eps new file mode 100644 index 0000000000..2a514e6753 --- /dev/null +++ b/info/latex4wp-it/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-it/tbx.pdf b/info/latex4wp-it/tbx.pdf Binary files differnew file mode 100644 index 0000000000..d95c189221 --- /dev/null +++ b/info/latex4wp-it/tbx.pdf diff --git a/info/latex4wp-it/tbx.tex b/info/latex4wp-it/tbx.tex new file mode 100644 index 0000000000..1be53e659b --- /dev/null +++ b/info/latex4wp-it/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{normale} & \textbf{inclinato} & \textbf{pi\`u largo} \\ + \hline + normale & \rotatebox{30}{inclinato} & pi\`u largo \\ + \hline + \end{tabularx} +\end{sidewaystable} + +\end{document} |