Vai al contenuto

Progetti con più file

Tieni il preambolo e \begin{document} in main.tex e richiama gli altri file con \input{chapters/intro} o \include{chapters/intro}; Scissor LaTeX li unisce in un unico documento prima della composizione.

Perché dividere un documento

Su una tesi o un report lungo si lavora meglio a pezzi: un file per capitolo, uno per il preambolo, uno per l’appendice. LaTeX ha due comandi per farlo, ed entrambi funzionano in Scissor LaTeX.

ComandoCosa faIn Scissor LaTeX
\input{file}Inserisce il testo del file proprio qui, come se lo avessi scritto tu.Funziona, anche nel preambolo e annidato.
\include{file}Inizia una nuova pagina, inserisce qui il testo del file e chiude la pagina.Funziona. Interruzioni di pagina consecutive diventano una sola, quindi non ci sono pagine vuote.
\includeonly{a,b}Tralascia ogni \include che non è nell’elenco.Ignorato: tutti i file vengono inclusi.
\subfile{file} (subfiles)Come \input, per file che si compilano anche da soli.Non supportato: saltato con un messaggio. Usa \input.
\import{dir/}{file} (import)\input relativo a un’altra cartella.Non supportato: saltato con un messaggio.

Un piccolo progetto

Un progetto tipico ha un file principale e una cartella di capitoli:

TEXT
main.tex
preamble.tex
chapters/intro.tex
chapters/method.tex
refs.bib

Il file principale contiene la classe, il preambolo e il corpo del documento, e richiama il resto:

LaTeX
\documentclass{report}
\input{preamble}

\title{Rainfall at Two Sites}
\author{Erika Mustermann}

\begin{document}
\maketitle
\input{chapters/intro}
\input{chapters/method}
\bibliographystyle{plain}
\bibliography{refs}
\end{document}

Ogni file di capitolo contiene solo la sua parte di testo, senza preambolo e senza \begin{document}:

LaTeX
\chapter{Introduction}
\label{chap:intro}
Rain gauges were read every morning for 44 days.
The method is described in Chapter~\ref{chap:method}.

Scissor LaTeX sostituisce ogni \input e \include con il testo del file e compone il risultato come un unico documento. Etichette, riferimenti e citazioni funzionano tra un file e l’altro, perché per il compositore è tutto un unico testo.

L’aspetto del documento unito

Ecco cosa compone l’editor quando main.tex richiama due file di capitolo con \input: il testo di entrambi i file, in ordine. (L’esempio è scritto come un solo file per poterlo mostrare qui.) In un report o in un book, \chapter fa iniziare da solo ogni capitolo su una nuova pagina.

Due file di capitolo uniti in un unico documento

\documentclass{report}
\begin{document}
\chapter{Introduction}
\label{chap:intro}
Rain gauges were read every morning for 44 days.
The method is described in Chapter~\ref{chap:method}.
\chapter{Method}
\label{chap:method}
Each gauge was emptied after reading, as noted in
Chapter~\ref{chap:intro}.
\end{document}
Composto da Scissor LaTeX: Due file di capitolo uniti in un unico documento
Pagina 2

Come vengono trovati i nomi dei file

  • I percorsi sono relativi alla cartella principale del progetto, così come in LaTeX sono relativi alla cartella del file principale, anche all’interno dei file annidati.
  • L’estensione .tex si può omettere: \input{chapters/intro} trova chapters/intro.tex.
  • Le virgolette attorno a un nome, come in \input{"my file"}, vengono rimosse.
  • Un file mancante viene elencato come errore nella scheda Problemi, con la riga dell’\input. Il resto del documento viene comunque composto.
  • Un file che include sé stesso, direttamente o tramite altri, viene tralasciato con un messaggio, e l’annidamento si ferma dopo 24 livelli.

subfiles e \includeonly

Il pacchetto subfiles permette di compilare ogni capitolo da solo. Scissor LaTeX non segue \subfile: il comando viene saltato e la scheda Problemi segnala che un file non è stato incluso.

\subfile non viene seguito

\documentclass{article}
\usepackage{subfiles}
\begin{document}
The chapter below is not included:
\subfile{chapters/intro}
Replace it with an \verb|\input| line.
\end{document}

Scheda Problemi: 1 included file is not part of this conversion

Per lavorare su un capitolo alla volta, commenta le altre righe \include con %. \includeonly viene accettato ma non ha effetto: ogni file incluso viene composto. Lo stesso vale per \lstinputlisting e \inputminted, che vengono saltati con lo stesso messaggio (vedi Listati di codice).

Altri file nel progetto

Immagini, file .bib e file di dati possono stare in qualsiasi cartella; richiamali con il loro percorso dalla cartella principale, come \includegraphics{figures/plot.png}. Per le citazioni vengono usati tutti i file .bib del progetto, qualunque sia il nome indicato da \bibliography (vedi Bibliografia). Per portare qui un intero progetto da un’installazione TeX, vedi Progetti e file.

Cosa cambia rispetto a un’installazione TeX

I manuali dei pacchetti correlati sono su CTAN: subfiles e import.

Domande e risposte

Qual è la differenza tra \input e \include?

\input incolla il testo del file al suo posto. \include inoltre inizia e chiude una nuova pagina attorno a esso, e in un’installazione TeX funziona con \includeonly. In Scissor LaTeX entrambi funzionano per i capitoli; \includeonly viene ignorato, quindi ogni \include viene composto.

Perché il mio file di \input non viene trovato?

Controlla il percorso dalla cartella principale del progetto e l’ortografia, comprese le maiuscole. La scheda Problemi mostra il nome cercato e la riga dell’\input.

subfiles funziona in Scissor LaTeX?

No. Sostituisci \subfile{...} con \input{...}; i file dei capitoli non hanno allora bisogno di un preambolo proprio.

Ogni esempio di questa pagina viene composto da Scissor LaTeX quando il sito viene generato. Ultimo aggiornamento: 2026-11-07.