Vai al contenuto
Topos Uranos

Riepilogo

Questa lezione apre la prima unità del corso, dedicata ai primi passi con LaTeX. Spiega a che cosa serve l’unità: portare chi non ha mai usato LaTeX al punto di scrivere, compilare e correggere da sé un documento breve; presenta le sue quattro lezioni e il filo che le unisce, dall’idea di composizione tipografica fino alla lettura degli errori; precisa il poco che si dà per scontato, cioè la gestione di file e cartelle su un computer; formula il problema che l’unità risolve, quello di passare da un file vuoto a un documento composto e, quando qualcosa non va, dal messaggio del motore alla sua causa; e mostra che lo stesso ciclo serve tanto a una relazione di laboratorio quanto a un saggio di filosofia o all’edizione di un testo latino.

Obiettivi di apprendimento

  1. Descrivere la sequenza dei contenuti dell’unità e spiegare che cosa ciascuna lezione apporta alla successiva.
  2. Riconoscere le conoscenze preliminari che l’unità presuppone e preparare il computer di conseguenza, in particolare la visibilità delle estensioni dei file.
  3. Spiegare, con un esempio, perché un documento LaTeX può non produrre alcun risultato e perché l’errore non sempre viene segnalato dove si trova.
  4. Riconoscere in altre discipline e nelle unità successive il ciclo di scrivere, compilare e correggere che l’unità costruisce.

Valutazione d’ingresso

Prima di percorrere l’unità conviene misurare il punto di partenza. Questa valutazione è un’autovalutazione: non dà voti, e il suo unico scopo è orientare lo studio. Le sue otto domande toccano, a due a due e in ordine, le quattro lezioni dell’unità; chi non ha mai usato LaTeX non deve aspettarsi di rispondere correttamente, e non importa: ogni risposta, esatta o no, spiega il punto e indica la lezione che lo tratta. Le stesse abilità si misurano di nuovo alla fine, nella lezione di sintesi; poiché questa è la prima unità del corso, non ci sono domande su unità precedenti.

Valutazione d’ingresso

Prima di iniziare l’unità, misura il tuo punto di partenza. È un’autovalutazione breve: non riceve voto e il risultato resta solo nel tuo browser.

  1. Domanda 1Una ricercatrice scrive in italiano un articolo che cita passi in greco politonico, e la rivista richiede un carattere OpenType che lei ha installato sul proprio computer. Con quale motore conviene compilarlo, secondo il criterio di questo corso?

  2. Domanda 2Che cosa stampa la riga È stato promosso il 70% degli studenti. scritta così com’è nel corpo di un documento?

  3. Domanda 3La cartella di una tesi contiene tesi.tex, tesi.aux, tesi.log, tesi.toc, tesi.pdf e mappa.png, una figura che la tesi include. Chi è coautore compilerà la tesi sul proprio computer. Qual è il minimo che deve ricevere?

  4. Domanda 4Uno studente corregge il sorgente e compila, ma il PDF che vede nel visualizzatore non cambia. Il file di log termina con la riga Fatal error occurred, no output PDF file produced!. Quale PDF sta guardando?

  5. Domanda 5Nel corpo di un documento, dopo vari paragrafi, l’autore scrive \usepackage{amsmath}. Che cosa succede compilando?

  6. Domanda 6Nel corpo di un documento compare, scritta così com’è, la frase Salvare il file come relazione_finale.tex. Che cosa succede compilando?

  7. Domanda 7Il log di una compilazione contiene l’errore ! Undefined control sequence. e, sotto, la riga l.7 \sectoin. Che cosa indica?

  8. Domanda 8La compilazione produce il PDF, ma il log contiene la riga Overfull \hbox (3.21451pt too wide) in paragraph at lines 20--24. Che cosa significa?

I contenuti dell’unità

Questa unità serve al primo degli obiettivi del corso, produrre e compilare documenti diagnosticandone e correggendone gli errori, ed è la condizione di tutti gli altri: comporre testi in più lingue e scritture, strutturare documenti lunghi, scrivere matematica e logica, presentare tabelle e figure, gestire la bibliografia e scegliere la classe adatta a ciascun genere accademico presuppongono che il ciclo di scrivere, compilare e correggere non offra più difficoltà. La sua meta è che chi non ha mai usato LaTeX possa, al termine, scrivere un documento breve a partire da un file vuoto, compilarlo con LuaLaTeX in Texmaker o in Overleaf e, quando non compila, trovarne e correggerne da sé la causa. Le sue quattro lezioni formano una catena in cui ciascuna si appoggia alle precedenti.

  1. Che cos’è LaTeX. Spiega la composizione tipografica, confronta il linguaggio di marcatura con l’elaboratore di testi, racconta l’origine di TeX e di LaTeX e il loro principio di separare il contenuto dalla forma, giustifica la scelta di LuaLaTeX e mostra come un sorgente diventa un PDF. Fissa il lessico di tutta l’unità: sorgente, motore, compilazione, preambolo, corpo e log.
  2. L’ambiente di lavoro. Installa ciò che la prima lezione ha descritto: una distribuzione di TeX, con il suo gestore di pacchetti, e l’editor Texmaker, configurato per compilare con LuaLaTeX e salvare in UTF-8; presenta Overleaf come alternativa nel browser e spiega quali file lascia la compilazione e quali si conservano. Termina con due documenti di prova che verificano l’installazione.
  3. Anatomia di un documento. Scompone il sorgente nei suoi pezzi: il preambolo e il corpo, le istruzioni con i loro argomenti, i gruppi che limitano l’ambito delle dichiarazioni, gli ambienti, i dieci caratteri riservati, i commenti, i pacchetti e la classe. Con essa il documento minimo della prima lezione smette di essere una ricetta e diventa una struttura che si capisce pezzo per pezzo.
  4. Compilare e correggere gli errori. Insegna a leggere il log: distinguere gli errori dagli avvertimenti, localizzare ogni errore nel sorgente, riconoscere i messaggi più frequenti e isolare la causa quando il messaggio non basta. Riunisce quanto precede, perché quasi ogni errore è la violazione di una regola dell’anatomia del sorgente, e la sua diagnosi si appoggia all’ambiente di lavoro.

L’unità termina con la lezione di sintesi e sfide, che raccoglie i risultati in una catena di concetti e procedimenti, ripete nella valutazione d’uscita le abilità della valutazione d’ingresso e propone sfide che combinano più lezioni.

Ciò che si dà per scontato

L’unità parte quasi da zero. Non presuppone di aver usato LaTeX, né di saper programmare, né conoscenze di matematica; non presuppone neppure la conoscenza dell’inglese, benché i messaggi del motore siano in quella lingua, perché il corso spiega ciascuno di quelli che presenta. Presuppone solo l’uso corrente di un computer: creare una cartella, salvare un file con un nome stabilito e in una cartella stabilita, ritrovarlo poi, copiare, spostare ed eliminare file, e installare un programma, oppure disporre di un browser e di un account su Overleaf.

Ne segue un’unica preparazione preliminare, che conviene fare prima della lezione sull’ambiente di lavoro. Il nome di un file consta di una base e di un’estensione, la parte che segue l’ultimo punto: in relazione.tex, la base è relazione e l’estensione tex. Ora, Esplora file di Windows e il Finder di macOS nascondono per impostazione predefinita le estensioni note, cosicché relazione.tex e relazione.pdf appaiono entrambi come relazione, e i file ausiliari della compilazione, che si distinguono solo per l’estensione, diventano indistinguibili. Pertanto conviene attivare l’opzione che mostra le estensioni: in Windows, nel menu Visualizza di Esplora file; in macOS, nelle impostazioni avanzate del Finder. In Linux, i gestori di file le mostrano per impostazione predefinita.

Il problema che l’unità risolve

Chi scrive in un elaboratore di testi vede il risultato man mano che scrive. In LaTeX, tra il sorgente e la pagina c’è un programma che legge il sorgente alla lettera, e il risultato compare solo compilando. Ciò pone due problemi, che sono quelli dell’unità. Il primo è come si passa da un file vuoto a un documento composto: che cosa bisogna installare, che cosa deve contenere come minimo il sorgente e che cosa ne fa il motore. Il secondo è che cosa fare quando il documento non esce, o esce diverso da come lo si voleva: il motore non mostra l’errore sulla pagina, ma lo descrive nel log, in un linguaggio suo, e talvolta lo segnala lontano dal punto in cui è stato commesso. L’esempio seguente mostra entrambi i problemi in un documento di quindici righe.

EsempioUna graffa che manca

Il sorgente seguente è un documento completo: dichiara la classe, carica i pacchetti, memorizza il titolo, l’autore e una data vuota, e compone due sezioni. Compilato con LuaLaTeX, produce questo risultato.

Codice LaTeX
\documentclass{article}\usepackage{fontspec}\usepackage[italian]{babel}\title{Relazione di lettura}\author{Anna Rossi}\date{}​\begin{document}\maketitle\section{La domanda}Il testo esamina un’\emph{ipotesi} sul 40\% dei casi.​\section{La risposta}La risposta si fonda sulla sezione precedente.\end{document}
Risultato
Risultato

Se nell’undicesima riga si omette la graffa che chiude l’argomento di \emph, il motore non produce alcun PDF, e il log contiene, fra le altre, queste righe.

Registro di compilazione
Runaway argument?{ipotesi sul 40\% dei casi. \par \section {La risposta} La risposta s\ETC.! File ended while scanning use of \emph ....!  ==> Fatal error occurred, no output PDF file produced!

L’errore non viene segnalato nell’undicesima riga, ma alla fine del file: il motore ha continuato a leggere l’argomento di \emph attraverso il paragrafo, la sezione successiva e \end{document}, finché il file non è terminato. Ora, il log dà l’indizio che manca: la riga che segue «Runaway argument?» riproduce l’argomento fuori controllo dal suo inizio, e quell’inizio, la graffa che precede «ipotesi», è esattamente il luogo dell’errore. Leggere così il log è ciò che insegna la lezione su la compilazione e la correzione degli errori; capire perché una graffa non chiusa trascina con sé tutto ciò che segue è ciò che insegna quella sull’anatomia di un documento.

La risposta dell’unità a questi due problemi ha dunque due parti. Per il primo, un ambiente installato e collaudato, e un sorgente la cui struttura si capisce pezzo per pezzo, cosicché nulla in esso è una formula magica. Per il secondo, un metodo: leggere il log dal primo errore, collocare l’errore nel sorgente, riconoscere la regola violata e, se il messaggio non basta, isolare la causa disattivando parti del sorgente. Nessuna delle due parti richiede di memorizzare istruzioni; entrambe richiedono di leggere il sorgente come lo legge il motore.

L’unità nelle discipline

Il ciclo che l’unità insegna è lo stesso in tutte le discipline, e ciò che cambia dall’una all’altra è soltanto ciò che si scrive. Una relazione di laboratorio di chimica, un saggio di filosofia con un centinaio di note a piè di pagina, un commento a un passo di Cicerone con il testo latino e la sua traduzione, un elaborato di economia con tabelle, una tesi di storia con documenti d’archivio e un articolo di matematica con teoremi cominciano allo stesso modo: una cartella, un file sorgente con il suo preambolo e il suo corpo, una compilazione e la lettura del suo log. Allo stesso modo, gli errori di questa unità, una graffa non chiusa, un carattere riservato scritto così com’è, un pacchetto caricato fuori posto, compaiono in qualunque di quei documenti, senza distinzione di disciplina.

Per questo ciò che l’unità insegna si usa negli altri corsi del sito. Gli elaborati e gli appunti di Logica Aristotelica o di Fondamenti di Meccanica possono essere scritti in LaTeX fin dalla prima settimana; in Analisi dei Dati con R, i risultati di un’analisi si incorporano in un documento composto; e in Programmazione in C++ I il ciclo è, nell’essenziale, lo stesso: si scrive un sorgente, un compilatore lo legge, e i suoi messaggi, che rimandano a numeri di riga, si leggono con il metodo che questa unità insegna.

Dove conduce

Al termine dell’unità il documento minimo sarà un punto di partenza noto, e le unità successive vi costruiranno sopra. La seconda si occuperà del testo stesso: le lingue e le scritture, fra cui il greco e il latino, i caratteri tipografici, le note a piè di pagina e le citazioni lunghe. La terza, della struttura dei documenti lunghi, con i loro capitoli, il loro indice e i loro riferimenti interni, distribuiti in più file. La quarta, della scrittura della matematica e della logica con la notazione corretta; la quinta, delle tabelle e delle figure; la sesta, della bibliografia e delle convenzioni di citazione di ciascuna disciplina; e la settima, delle classi di documento adatte a ciascun genere accademico, dalle presentazioni alle lettere e ai poster. In tutte, ogni nuova istruzione sarà scritta, compilata e, quando fallisce, corretta con ciò che si è imparato in questa.