LaTeX - Tworzenie dokumentu z wielu plików źródłowych
Podczas tworzenia w Latex-u nieco bardziej złożonych dokumentów, wygodnie jest skorzystać z możliwości rozbicia go na wiele plików źródłowych (np. każdy rozdział w osobnym pliku). Dzięki temu tworzymy z dokumentu uporządkowaną strukturę przez co łatwiej taki dokument edytować, bo wiadomo jaka treść w którym miejscu się znajduje. Dziś pokażę, jak ja mam w zwyczaju podchodzić do tego zagadnienia.
Co wybrać? include? czy input?
Praca na wielu plikach w Latex-u polega na stworzeniu dokumentu głównego i wczytaniu do niego jego poszczególnych części, tych zawartych w osobnych plikach. Do osiągnięcia tego prowadzą dwie ścieżki, przez dwie komendy: \include oraz \input. Ja zazwyczaj idę tę drugą drogą korzystając z \input i to na niej oprę dane w tym artykule przykłady. Powiedzmy jednak najpierw...
Co te polecanie łączy, a czym się różnią?
Zacznijmy od wspólnych cech tych dwóch poleceń. Główne z nich, są dwie. Po pierwsze, gdy kompilator odnajduje w dokumencie głównym polecenie wczytania podpliku, to zostawia na moment dokument główny, a zajmuje się właśnie tym dokumentem wczytywanym i dopiero gdy z nim skończy, wraca do dokumentu głównego. Ma to swoje konsekwencje w drugiej cesze wspólnej tych dwóch poleceń. Jest nią fakt, że wszystkie ustawienia dotyczące formatowania zawarte w dokumencie głównym, obowiązują i są stosowane wobec dokumentów pochodnych. I to jest kolejna zaleta rozbijania dokumentu na wile plików - style definiujemy tylko w pliku głównym, a dalej skupiamy się już jedynie na treści dokumentu, a nie jego oprawie wizualnej.
Co je zatem różni? Na polecenie \include nałożone jest pewne ograniczenie, polegające na tym, że w pliku pochodnym wczytanym za pomocą tego polecenia, nie możemy już więcej używać \include i dalej zagnieżdżać dokumenty pochodne. Możemy jednak używać \input. I takie nie mogę, ale jednak mogę, nie podoba mi się (możliwe, że po prostu nie dotarł do mnie jakiś bardziej abstrakcyjny sens takiego działania) i zawsze używam \input, które daje mi dowolność. Inna sprawa, że nie ma co przesadzać z takim wielokrotnym zagnieżdżaniem - to może się okazać niezdrowe za przyczyną radykalnie rosnącej złożoności. Ponadto polecenie
Hmm... a jak mają wyglądać te pliki?
Normalnie :) Dokument główny wygląda jak zwykły dokument główny. Nie trzeba nawet żadnych dodatkowych bibliotek. Jeśli zaś idzie o dokumenty pochodne, to zawierają one jedynie esencjonalną treść do wczytania, czyli już bez żadnych \begin{document} etc. Z resztą spójrzmy na przykładDokument główny:
\begin{document}
\title{ \textbf{Tytuł dokumentu} \\
stworzonego z wielu plików wsadowych
}
% Wstęp
\section{Wstęp}
\subsection{Wprowadzenie}
\input{./wstep.tex}
\newpage
% Właściwa treść
\section{O co tak naprawdę chodzi?}
\subsection{Założenia wstępne}
\input{./zalozenia.tex}
\newpage
% ...
\end{document}
Dokument wczytywany (wstep.tex):
Dokument wczytywany (zalozenia.tex):
\item Założenie pierwsze
\item Założenie drugie
\item I w końcu całożenie trzecie
\end{itemize}
Przykład jak widać mało wyszukany, ale mam nadzieję, że czytelny ;)
Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!