% Questo file (in Tex) contiene la documentazione sull'uso dei 
% comandi contenuti nel file AUTOMACRO.tex, utile per la numerazione
% automatica delle eqs, della bibliografia etc.

\magnification=1200
\tolerance=1000
%\hsize=15 truecm
%\vsize=23 truecm
%\baselineskip 20 truept
%\voffset=-2 truecm

\font\deca=cmr10 scaled\magstep1
\font\rex=cmr10 scaled\magstep2
\font\ita=cmti10 scaled\magstep1
\font\itax=cmti10 scaled\magstep2
\font\sla=cmsl10 scaled\magstep1
\font\slax=cmsl10 scaled\magstep2
\font\boldo=cmbx10 scaled\magstep1
\font\boldx=cmbx10 scaled\magstep2

\def\st#1{\underbar {#1}}
\def\bk{$\backslash$}
\def\ri{\item{$\star$\ }}
\def\pgl{$\{$}
\def\pgr{$\}$}
\def\dsty{\displaystyle}

\def\uncatcodespecials{\def\do##1{\catcode`##1=12 }\dospecials}

\def\sic{\begingroup\tt\uncatcodespecials
  \obeyspaces\doverbatim}
\newcount\balance
{\catcode`<=1 \catcode`>=2 \catcode`\{=12 \catcode`\}=12
  \long\gdef\doverbatim{<\balance=1\verbatimloop>      
  \long\gdef\verbatimloop#1<\def\next<#1\verbatimloop>%
    \if#1{\advance\balance by1
    \else\if#1}\advance\balance by-1
     \ifnum\balance=0\let\next=\endgroup\fi\fi\fi\next>>

% E' la macro "\verbatim" del TeXbook, pag. 381, qui chiamata \sic.
% I due "\long" li ho aggiunti io.

\centerline {\sla Numerazione automatica di equazioni, etc.\/}
\vskip 20 truept

     Il file automacro.tex contiene le
macroistruzioni necessarie per la numerazione automatica di equazioni,
citazioni, etc.

     L'idea \`e che man mano che si scrivono, ad esempio, equazioni
numerate, \TeX{} le numera progressivamente in modo automatico,
facendo avanzare un suo ``contatore di equazioni". L'utente invece
assegna all'equazione un ``nome'' a piacere (una qualsiasi stringa di
caratteri) che resta associato al numero, e che si pu\`o usare in
seguito per far riferimento a quell'equazione. In questo modo
l'eventuale inserimento di una nuova equazione rinumera
automaticamente  le equazioni seguenti ed anche i corrispondenti
riferimenti.

\vskip 20 truept
\noindent 1. \st{Numerazione semplice delle equazioni}

\vskip 7truept
    \sic{\eqlabel}\pgl\sic{xxx}\pgr \quad aumenta di uno il contatore
delle equazioni;  associa al numero nuovo il nome xxx, che \`e una
sequenza qualsiasi di lettere, numeri od altri simboli.  \par
\vskip  7 truept
     \sic{\eqref}\pgl\sic{xxx}\pgr\quad richiama il numero associato
a xxx tramite \sic{\eqlabel}\pgl\sic{xxx}\pgr. \par
\vskip  7 truept\noindent
Esempio: dopo aver gi\`a usato 15 volte \sic{\eqlabel}, si scrive:\par
\vskip 3truept
\sic{$$}

\sic{\eqlabel}\pgl\sic{15 bis}\pgr

\sic{\sin(\pi-\alpha) = \sin\alpha\eqno(\eqref}\pgl\sic{15 bis}\pgr
                        \sic{)}

\sic{$$}
\vskip  7 truept
\sic{$$}

\sic{\eqlabel}\pgl\sic{16}\pgr

\sic{x =
\sqrt}\pgl\sic{y+1}\pgr\sic{\eqno(\eqref}\pgl\sic{16}\pgr\sic{)}

\sic{$$}

\noindent \sic{come si} {\tt \`e} \sic{visto nelle (\eqref}\pgl\sic{15
bis}\pgr)\sic{e (\eqref}\pgl\sic{16}\pgr\sic{)....}  \par
\vskip  7 truept
     Il risultato \`e:
$$
\sin(\pi - \alpha) = \sin \alpha  \eqno(16)
$$
$$
x = \sqrt{y + 1} \eqno(17)
$$
come si \`e visto nelle (16) e (17)....      \par
\vskip  7 truept
     \sic{\autoeqno}\pgl\sic{xxx}\pgr \quad sta per 
\sic{\eqlabel{xxx}\eqno(\eqref{xxx})}; le
formule sopra riportate si possono di conseguenza scrivere in modo pi\`u
semplice, con identico risultato:

\sic{$$}

\sic{\sin(\pi-\alpha) = \sin\alpha\autoeqno}\pgl\sic{15 bis}\pgr

\sic{$$}
\vskip  7 truept
\sic{$$}

\sic{x = \sqrt}\pgl\sic{y + 1}\pgr \sic{\autoeqno}\pgl\sic{16}\pgr

\sic{$$}
\vskip 7 truept\noindent
     L'uso separato di \sic{\eqlabel} e \sic{\eqno} resta
indispensabile per ottenere, ad esempio:
$$
\eqalignno{
\sin (\pi - \alpha) &= \sin \alpha &(16 a) \cr
\cos (\pi - \alpha) &= - \cos \alpha &(16b) \cr}
$$
che si scrive:
\vskip 3truept
\sic{$$}

\sic{\eqlabel}\pgl\sic{15 bis}\pgr

\sic{\eqalignno}\pgl

\sic{\sin(\pi - \alpha) & = \sin\alpha &(\eqref}\pgl\sic{15 bis}\pgr
       \sic{a) \cr}

\sic{\cos(\pi - \alpha) & = -\cos\alpha &(\eqref}\pgl\sic{15 bis}
      \pgr\sic{b) \cr}\pgr

\sic{$$}
\vskip  7 truept\noindent
Esiste anche:

\sic{\autoleqno}\pgl\sic{xxx}\pgr \quad  analoga a
\sic{\autoeqno}\pgl\sic{xxx}\pgr, con numerazione a sinistra.
\vskip 20 truept
\noindent 2. \st{Numerazione delle sezioni}
\vskip 7truept

\sic{\autosection}\pgl\sic{yyy}\pgr \quad (titolo della sezione,
chiuso da una riga bianca o \sic{\par}). Fa diverse cose:  inserisce
uno spazio opportuno prima e dopo il titolo;
aumenta di uno il ``contatore delle sezioni", ed associa al
numero nuovo il nome yyy, per i successivi riferimenti;  scrive il
titolo della sezione in grassetto, preceduto dal numero progressivo
della sezione; impedisce un eventuale cambio pagina subito dopo il
titolo.
\vskip  7 truept
\sic{\sref}\pgl\sic{yyy}\pgr \quad richiama il numero associato a
yyy, in maniera simile a \sic{\eqref}.
\vskip 7truept\noindent 
Esiste anche: \par
\sic{\section}\quad (titolo, chiuso da \sic{\par} o riga bianca), che
non produce alcuna numerazione automatica delle sezioni, ma genera le
stesse spaziature di \sic{\autosection}, e come questa mette il titolo
in grassetto ed impedisce un eventuale cambio pagina tra il titolo ed
il testo successivo. \par
\vskip 20 truept
\noindent 3. \st{Numerazione doppia delle equazioni}, abbinata alla
numerazione delle sezioni. \par
\vskip 7truept
   Il comando \sic{\numerazionedoppia} predispone la numerazione
doppia delle equazioni, nella forma: ``sezione.equazione''. Funziona
cos\`\i: i successivi comandi \sic{\autosection}, in aggiunta a quanto
gi\`a detto, azzerano il contatore delle equazioni, mentre un
successivo comando \sic{\eqlabel{xxx}} associa al nome
xxx il doppio numero ``sezione.equazione'' (\sic{\autoeqno} e
\sic{\autoleqno} si modificano di conseguenza).
Perci\`o, se la sezione corrente \`e la numero tre, ed entro questa
sezione sono gi\`a state numerate 10 equazioni, \sic{\eqlabel{xxx}} 
associa a xxx il numero 3.11.
\vskip  7 truept
Esempio:  dopo aver inserito il comando \sic{\numerazionedoppia}, ed
aver  gi\`a completato due sezioni, si scrive:
\vskip 3truept

\sic{\autosection}\pgl\sic{pa}\pgr\sic{Pitagora e Affini \par} \par
\sic{In questa sezione \sref}\pgl\sic{pa}\pgr\ \sic{si parla di:}\par
\sic{$$}

\sic{c^2 = a^2 +b^2 \autoeqno}\pgl\sic{pitagora}\pgr

\sic{$$}

\sic{ed inoltre di}

\sic{$$}

\sic{c^2 = a^2 + b^2 - 2ab \cos\alpha \autoeqno}\pgl\sic{affini}\pgr

\sic{$$}

\sic{La (\eqref{pitagora}) \`e un caso particolare della (\eqref{affini}).}

\vskip 7 truept\noindent
Il risultato \`e:
\vskip 7truept
\noindent {\bf 3. \quad Pitagora e affini}\par\noindent
In questa sezione 3 si parla di
$$
c^2 = a^2 + b^2 \eqno (3.1)
$$
e di
$$
c^2 = a^2 + b^2 - 2ab \cos\,\alpha \eqno (3.2)
$$
La (3.1) \`e un caso particolare della (3.2).
\vskip  7 truept
E' anche possibile numerare automaticamente le equazioni come si usa
di solito nelle appendici, cio\`e, ad esempio, (A.1), (A.2), ....
(B.1) .... usando al posto di \sic{\autosection} il comando

\sic{\semiautosection}\pgl\sic{yyy}\pgr\quad (titolo, chiuso da
\sic{\par} o linea bianca).  Funziona come \sic{\autosection}, per\`o
non avanza il contatore delle sezioni, e nella numerazione automatica
delle equazioni usa direttamente il simbolo yyy al posto del numero
della sezione.
\vskip  7 truept\noindent
Esempio: se si scrive
\vskip 3truept

\sic{\semiautosection}\pgl\sic{\rm A}\pgr \sic{Appendice \par}

\sic{$$}

\sic{\int_0^}\pgl\sic{2\pi}\pgr\sic{\cos x dx = 33 \autoeqno}\pgl
       \sic{??}\pgr

\sic{$$}

\sic{$$}

\sic{\int_0^}\pgl\sic{2\pi}\pgr \sic{\cos x dx = 0 \autoeqno}\pgl
        \sic{!!}\pgr

\sic{$$}

\sic{l'integrale (\eqref{??}) \`e sbagliato,

mentre (\eqref{!!}) \`e giusto...}
\vskip 7 truept\noindent
Il risultato \`e:
\vskip 3truept
\noindent {\bf Appendice} \par
$$
\int^{2\pi}_0 \cos x\  dx = 33
\eqno ({\rm A}.1)
$$

$$
\int^{2\pi}_0 \cos x \  dx = 0
\eqno ({\rm A}.2)
$$
l'integrale (A.1) \`e sbagliato, mentre (A.2) \`e giusto...
\vskip 20 truept
\noindent 4. \st{Numerazione delle citazioni}
\vskip 7truept
   \sic{\clabel}\pgl\sic{xxx}\pgr \quad \`e analoga a \sic{\eqlabel}:
aumenta di uno il ``contatore delle citazioni", ed associa al numero
progressivo il nome xxx.  \par
    \sic{\cref{xxx}} \quad richiama il numero associato a xxx
tramite \sic{\clabel}. \par
     \sic{\cite{xxx}} \quad sta per
\sic{$^}\pgl\sic{[\cref}\pgl \sic{xxx}\pgr\sic{]}\pgr\sic{$}, cio\`e
produce citazioni come$^{[23]}$ questa.  \par
    \sic{\firstcite}\pgl\sic{xxx}\pgr \quad sta per
\sic{\clabel}\pgl\sic{xxx}\pgr \sic{\cite}\pgl\sic{xxx}\pgr.
\vskip 20 truept
\noindent 5. \st{Altri comandi} (tabella con la corrispondenza nomi--numeri; 
riferimenti al futuro)
\vskip 7truept

E' utile, per successive correzioni, avere una tabella con scritta in
chiaro la corrispondenza tra nomi e numeri. Si usa per questo il
comando \sic{\simboli}, a seguito del quale \TeX{} genera un file di
nome: (nome del lavoro).SMB, con le corrispondenze richieste.

E' poi frequente il caso di riferimenti ``al futuro" (tipicamente con
le appendici), cio\`e a nomi di equazioni o citazioni cui \TeX{}
solo in seguito associer\`a  automaticamente un numero. E' possibile
mantenere l'automatismo dei riferimenti, mettendo, all'inizio, il
comando \sic{\riferimentifuturi}.

Funziona cos\`\i: eseguendo una prima volta \TeX, viene prodotto un
file ausiliario, di nome: (nome del lavoro).AUX che contiene tutte le
macroistruzioni che stabiliscono la corrispondenza tra nomi e numeri.
Eseguendo una seconda volta \TeX{}, queste macroistruzioni sono
automaticamente richiamate, e tutto funziona correttamente. La
presenza di riferimenti indefiniti o definiti male \`e segnalata.

\vskip 20 truept

\noindent 6. \st{Avvertenze}
\vskip 7truept

Le macroistruzioni per la numerazione automatica usano i seguenti
comandi, che sono riservati e non possono essere usati dall'utente:
\vskip 3truept

\sic{

\lasezionecorrente

\ilnumero

\lacitazione

\spoglia

\usagetta
}

\vskip 3truept\noindent
Sono inoltre riservati tre contatori, di nome \sic{\eqnum},
\sic{\sectnum} e \sic{\citnum}, due files esterni, di nome
\sic{\filesimboli} e \sic{\fileausiliario}, e tre nuovi if, di nome
\sic{\ifsimboli}, \sic{\ifriferimenti} e \sic{\ifdoppia}.

\bye