Jak stworzyć spis treści w LaTeX?

Dowiedz się, jak krok po kroku stworzyć automatyczny spis treści w LaTeX – od podstawowych komend po personalizację wyglądu i typowe błędy.
21 czerwca 2024
blog

Wprowadzenie do automatycznego tworzenia spisu treści w LaTeX

LaTeX to zaawansowany system składania tekstu, który automatyzuje wiele aspektów tworzenia profesjonalnych dokumentów. Jedną z jego kluczowych zalet jest możliwość generowania spisu treści w sposób automatyczny, bez potrzeby ręcznego śledzenia numeracji rozdziałów i stron.

Automatyczny spis treści w LaTeX opiera się na strukturze dokumentu, którą definiuje się poprzez specjalne komendy, takie jak \section, \subsection czy \chapter. Na ich podstawie LaTeX może samodzielnie wygenerować hierarchiczny wykaz zawartości dokumentu, który aktualizuje się automatycznie przy każdej kompilacji pliku źródłowego.

Największą zaletą takiego rozwiązania jest jego elastyczność i skalowalność — niezależnie od długości dokumentu, spis treści pozostaje aktualny i zgodny ze strukturą tekstu. Dodatkowo użytkownik ma możliwość dostosowania wyglądu i zawartości spisu do własnych potrzeb.

Tworzenie spisu treści w LaTeX nie wymaga zaawansowanej wiedzy programistycznej — wystarczy znajomość kilku podstawowych komend, które pozwalają łatwo kontrolować strukturę i układ dokumentu.

W kolejnych częściach omówione zostaną szczegóły dotyczące użycia odpowiednich komend, wpływu kompilacji na aktualność spisu treści oraz sposoby jego modyfikacji i rozszerzania.

Użycie komendy \tableofcontents

Tworzenie spisu treści w LaTeX odbywa się automatycznie przy użyciu jednej, bardzo prostej komendy: \tableofcontents. Wstawienie jej w odpowiednim miejscu dokumentu powoduje wygenerowanie spisu treści na podstawie struktury dokumentu, takiej jak rozdziały, sekcje czy podsekcje.

Komenda ta powinna zostać użyta po zdefiniowaniu nagłówków, które mają się pojawić w spisie treści, jednak zwykle umieszcza się ją na początku dokumentu głównego, tuż po stronie tytułowej lub wstępie. Wygenerowany spis treści zawiera tytuły sekcji wraz z numerami stron, na których się one znajdują.

Warto zwrócić uwagę na to, że \tableofcontents działa wyłącznie w dokumentach, które zostały odpowiednio sformatowane i zawierają elementy strukturalne, takie jak \section czy \chapter. Bez nich spis treści pozostanie pusty.

Przykładowe użycie tej komendy w dokumencie LaTeX może wyglądać następująco:

\begin{document}
\maketitle
\tableofcontents
\section{Wstęp}
...

Warto pamiętać, że samo dodanie komendy \tableofcontents nie wystarczy — spis treści jest generowany na podstawie danych zebranych podczas kompilacji dokumentu, dlatego jego prawidłowe wyświetlenie może wymagać kilkukrotnego przetworzenia pliku.

Struktura dokumentu: \section, \subsection i inne

LaTeX umożliwia logiczne i hierarchiczne porządkowanie treści dokumentu przy pomocy dedykowanych komend strukturalnych. Mają one kluczowe znaczenie nie tylko dla czytelności, ale również dla poprawnego wygenerowania spisu treści. Każdy poziom struktury odpowiada innemu poziomowi szczegółowości treści w dokumencie.

Komenda Opis Poziom w hierarchii Dodawana do spisu treści
\part Najwyższy poziom podziału, często używany w książkach 0 Tak
\chapter Podział na rozdziały (tylko w klasie book i report) 1 Tak
\section Główne sekcje dokumentu 2 Tak
\subsection Podsekcje w obrębie sekcji 3 Tak
\subsubsection Dalszy podział treści 4 Tak
\paragraph Krótkie nagłówki w obrębie podpodsekcji 5 Nie domyślnie
\subparagraph Najniższy poziom podziału 6 Nie domyślnie

Odpowiednie użycie tych komend pozwala na czytelne przedstawienie struktury dokumentu oraz automatyczne uwzględnienie tytułów w spisie treści. Przykładowo:

\section{Wstęp}
\subsection{Cel pracy}
\subsubsection{Zakres badań}

Powyższy kod utworzy czytelny podział treści, który zostanie odwzorowany w automatycznie generowanym spisie treści. Warto pamiętać, że niektóre klasy dokumentów (np. article) nie obsługują wszystkich poziomów, takich jak \chapter. Jeśli chcesz szybko rozwinąć swoje umiejętności edytorskie, warto również zapoznać się z Kurs Język HTML - projektowanie stron - poziom podstawowy.

Wpływ kompilacji na poprawność spisu treści

Automatyczne generowanie spisu treści w LaTeX wymaga odpowiedniego zarządzania procesem kompilacji. W przeciwieństwie do edytorów typu WYSIWYG, LaTeX tworzy spis zawartości na podstawie informacji zebranych podczas pierwszej i kolejnych kompilacji dokumentu. Niewłaściwa liczba kompilacji może skutkować brakiem spisu treści lub jego niepełną wersją.

Podstawowy proces kompilacji wymaga przynajmniej dwóch przebiegów:

  • Pierwsza kompilacja – LaTeX analizuje dokument, wykrywa struktury takie jak \section, \subsection itd., i zapisuje te informacje do pliku pomocniczego (.toc).
  • Druga kompilacja – system odczytuje dane z pliku .toc i generuje spis treści na podstawie zebranych wcześniej informacji.

Jeśli dokument zawiera wiele odwołań krzyżowych, nowych sekcji lub elementów wpływających na układ stron, może być konieczna trzecia lub kolejna kompilacja, aby spis treści był dokładny i w pełni zgodny z zawartością.

Oto przykładowa sekwencja poleceń kompilujących dokument w systemie opartym na pdflatex:

pdflatex moj_plik.tex
pdflatex moj_plik.tex

W przypadku korzystania z edytorów graficznych, takich jak TeXstudio czy Overleaf, proces ten często wykonywany jest automatycznie, jednak warto mieć świadomość jego działania, szczególnie przy większych dokumentach.

W poniższej tabeli przedstawiono wpływ liczby kompilacji na efekt końcowy spisu treści:

Liczba kompilacji Efekt
1 Plik .toc utworzony, ale spis treści nie jest jeszcze widoczny lub jest niekompletny
2 Spis treści wygenerowany poprawnie na podstawie .toc
3+ Spis treści aktualizowany przy zmianach struktury dokumentu lub numeracji stron

Podsumowując, odpowiednia liczba kompilacji ma kluczowe znaczenie dla poprawnego wygenerowania i aktualizacji spisu treści w dokumentach LaTeX.

Dostosowywanie wyglądu spisu treści za pomocą pakietu tocloft

Pakiet tocloft umożliwia precyzyjne dostosowanie wyglądu spisu treści, spisu ilustracji oraz spisu tabel w dokumentach LaTeX. Pozwala on m.in. na zmianę czcionki, odstępów, wcięć, a także wyglądu kropek prowadzących do numerów stron. Dzięki temu użytkownicy mogą lepiej dostosować styl dokumentu do wymagań wydawniczych lub własnych preferencji estetycznych. Jeśli interesujesz się edytowaniem i formatowaniem dokumentów, warto również rozważyć udział w Kursie Front-end Developer – zagadnienia z zakresu programowania w języku PHP, elementy HTML5 i CSS i efektywne wykorzystanie podstawowej znajomości JavaScript.

Najczęstsze zastosowania pakietu tocloft obejmują:

  • zmianę odstępów między pozycjami spisu,
  • dostosowanie wcięć i wyrównania tytułów sekcji,
  • modyfikację stylu i rozmiaru czcionki w spisie,
  • usunięcie lub zmiana kropek między tytułem a numerem strony,
  • dodawanie własnych typów wpisów do spisu (np. niestandardowe sekcje).

Poniżej znajduje się przykładowy kod ilustrujący podstawowe użycie pakietu tocloft:

\usepackage{tocloft}
% Zmiana czcionki wpisów spisu treści
\renewcommand{\cftsecfont}{\bfseries}
% Dodanie większego odstępu między wpisami
\setlength{\cftbeforesecskip}{10pt}

Aby ułatwić porównanie możliwości pakietu tocloft z domyślnym wyglądem spisu treści, poniższa tabela przedstawia wybrane różnice:

Funkcja Domyślny LaTeX Z pakietem tocloft
Odstępy między wpisami Stałe, nieedytowalne Dowolnie modyfikowalne
Styl czcionki Domyślny styl dokumentu Możliwość zmiany dla każdej sekcji
Wyrównanie i wcięcia Automatyczne Pełna kontrola
Kropki prowadzące Domyślnie włączone Można usunąć lub zmienić

Dzięki pakietowi tocloft, użytkownik może dostosować spis treści do swoich indywidualnych potrzeb bez konieczności edytowania stylów globalnych dokumentu. Jest to szczególnie przydatne w przypadku prac dyplomowych, książek naukowych czy publikacji z konkretnymi wytycznymi formatowania.

Tworzenie spisu ilustracji i tabel

Oprócz spisu treści, LaTeX umożliwia automatyczne generowanie również spisu ilustracji oraz spisu tabel. Funkcje te są szczególnie przydatne w dokumentach naukowych, technicznych czy pracach dyplomowych, gdzie występuje dużo elementów graficznych i tabelarycznych.

Podstawowa różnica między tymi dwoma spisami polega na rodzaju zawartości, którą prezentują:

Typ spisu Elementy uwzględniane Domyślna komenda
Spis ilustracji Obiekty w środowisku figure \listoffigures
Spis tabel Obiekty w środowisku table \listoftables

Oba rodzaje spisów tworzone są automatycznie na podstawie podpisów (captionów) przypisanych do ilustracji i tabel. Aby dany obiekt został uwzględniony w odpowiednim spisie, musi posiadać podpis utworzony komendą \caption{...}.

Przykładowe użycie dla ilustracji:

\begin{figure}[h]
  \centering
  \includegraphics{obrazek.png}
  \caption{Przykładowa ilustracja}
  \label{fig:przyklad}
\end{figure}

Aby wygenerować spis ilustracji i spis tabel, należy umieścić w dokumencie odpowiednie komendy:

\listoffigures
\listoftables

Warto pamiętać, że podobnie jak spis treści, spisy ilustracji i tabel są aktualizowane w trakcie kompilacji – dlatego po dodaniu nowych elementów graficznych lub tabel należy dokument skompilować co najmniej dwukrotnie, aby zawartość spisów została uzupełniona o nowe pozycje.

Przykładowy kod dokumentu z automatycznym spisem treści

Aby utworzyć automatyczny spis treści w LaTeX, wystarczy użyć kilku podstawowych komend i zachować odpowiednią strukturę dokumentu. Poniżej przedstawiony przykład demonstruje, jak w prosty sposób można wygenerować spis treści bez konieczności jego ręcznego tworzenia.

W dokumencie LaTeX, spis treści generowany jest automatycznie na podstawie użycia komend takich jak \section, \subsection czy \chapter (w dokumentach klas typu book lub report). Kluczowym elementem jest komenda \tableofcontents, która umieszcza spis w wybranym miejscu dokumentu.

Oto przykład minimalnego dokumentu LaTeX z automatycznym spisem treści:

\documentclass{article}

\begin{document}

\tableofcontents

\section{Wprowadzenie}
Treść sekcji wprowadzającej.

\section{Metodyka}
Treść drugiej sekcji.

\subsection{Źródła danych}
Treść podsekcji.

\end{document}

Jak widać, wystarczy kilka linii kodu, by wygenerować uporządkowany spis treści. Warto pamiętać, że wygenerowanie i poprawne wyświetlenie spisu może wymagać kilkukrotnej kompilacji dokumentu, aby LaTeX mógł zebrać wszystkie potrzebne informacje o strukturze.

W zależności od rodzaju tworzonego dokumentu i klasy użytej w jego nagłówku (article, report, book), struktura i wygląd spisu treści mogą się różnić. Dzięki temu LaTeX oferuje dużą elastyczność przy formatowaniu dokumentów naukowych, technicznych czy edukacyjnych.

Praktyczne wskazówki i najczęstsze błędy

Tworzenie spisu treści w LaTeX może wydawać się proste dzięki automatyzacji, jednak w praktyce użytkownicy często napotykają błędy wynikające z braku znajomości kilku podstawowych zasad. Poniżej przedstawiamy praktyczne porady oraz najczęściej popełniane błędy, które warto mieć na uwadze podczas pracy z dokumentem.

  • Używaj odpowiednich komend strukturalnych: aby spis treści działał prawidłowo, należy korzystać z wbudowanych komend takich jak \section, \subsection, \chapter (dla klas książkowych), zamiast tworzyć nagłówki ręcznie lub stosować niestandardowe makra.
  • Pamiętaj o wielokrotnej kompilacji: LaTeX aktualizuje spis treści dopiero po przetworzeniu pliku pomocniczego (.toc), dlatego pełna aktualizacja spisu wymaga przynajmniej dwóch kompilacji.
  • Nie modyfikuj ręcznie pliku .toc: chociaż technicznie możliwe, edycja tego pliku może prowadzić do błędów składniowych i problemów z kompilacją – wszelkie zmiany należy wprowadzać w głównym pliku .tex.
  • Unikaj błędnych stylów dokumentu: niektóre klasy dokumentów (np. article) nie obsługują komendy \chapter, co może wpłynąć na poprawność spisu treści, jeśli użyjesz niewłaściwych struktur.
  • Pozwól pakietom zarządzać wyglądem: zamiast ręcznie zmieniać formatowanie spisu, lepiej skorzystać z dedykowanych pakietów, które oferują większą elastyczność i bezpieczeństwo kompozycyjne.

Unikanie powyższych błędów pozwala na sprawniejsze generowanie profesjonalnie wyglądających dokumentów i ułatwia późniejsze modyfikacje zawartości lub układu tekstu.

Majczęściej zadawane pytania i odpowiedzi odnośnie Jak stworzyć spis treści w LaTeX?

Jak dodać spis treści w LaTeX w najprostszy sposób?

Najprostszy sposób to użycie komendy \tableofcontents. Wstawia się ją w miejscu, w którym ma pojawić się spis treści, zwykle po stronie tytułowej lub na początku dokumentu. Aby spis nie był pusty, dokument musi zawierać nagłówki strukturalne, takie jak \section, \subsection albo \chapter.

Dlaczego spis treści w LaTeX nie pojawia się od razu po pierwszej kompilacji?

Spis treści zwykle nie pojawia się od razu, ponieważ LaTeX najpierw zapisuje dane o strukturze dokumentu do pliku pomocniczego. Dopiero podczas kolejnej kompilacji odczytuje te informacje i tworzy właściwy spis. Jeśli zmienisz układ sekcji lub numerację stron, czasem potrzebna jest także trzecia kompilacja, aby wszystko zostało poprawnie zaktualizowane.

Jakie nagłówki są automatycznie dodawane do spisu treści w LaTeX?

Do spisu treści trafiają przede wszystkim standardowe komendy strukturalne LaTeX. Najczęściej są to:

  • \part
  • \chapter w klasach book i report
  • \section
  • \subsection
  • \subsubsection

Niższe poziomy, takie jak \paragraph i \subparagraph, nie są domyślnie uwzględniane w spisie.

Czy komenda \chapter działa w każdym dokumencie LaTeX?

Nie, komenda \chapter nie działa w każdej klasie dokumentu. Artykuł wyjaśnia, że jest ona obsługiwana w klasach takich jak book i report, ale nie w klasie article. Jeśli użyjesz niewłaściwej komendy dla danej klasy, może to wpłynąć na strukturę dokumentu i poprawność spisu treści.

Jak zmienić wygląd spisu treści w LaTeX bez ręcznego formatowania?

Wygląd spisu treści najlepiej zmieniać za pomocą pakietu tocloft. Pozwala on dostosować czcionkę, odstępy, wcięcia i kropki prowadzące do numerów stron. Dzięki temu nie trzeba ręcznie przerabiać stylów dokumentu. To praktyczne rozwiązanie, gdy dokument ma spełniać określone wymagania edytorskie lub ma mieć bardziej dopracowany układ.

Jak zrobić spis ilustracji i spis tabel w LaTeX?

Spis ilustracji i spis tabel tworzy się automatycznie przy użyciu osobnych komend. W dokumencie należy użyć:

  • \listoffigures dla ilustracji,
  • \listoftables dla tabel.

Aby element pojawił się w odpowiednim spisie, musi znajdować się w środowisku figure lub table i mieć podpis dodany przez \caption{...}.

Gdzie najlepiej umieścić komendę \tableofcontents w dokumencie?

Komendę \tableofcontents najlepiej umieścić na początku dokumentu, zwykle po stronie tytułowej. Taka lokalizacja jest najczęściej spotykana i ułatwia czytelnikowi szybkie przejście do wybranych części tekstu. Artykuł wskazuje, że spis powinien znaleźć się w logicznym miejscu, ale jego zawartość i tak zależy od użytych wcześniej komend strukturalnych.

Jakich błędów unikać przy tworzeniu spisu treści w LaTeX?

Najczęstsze błędy to ręczne tworzenie nagłówków i pomijanie dodatkowej kompilacji. W praktyce warto unikać kilku problemów:

  • używania zwykłego tekstu zamiast \section i podobnych komend,
  • edytowania pliku .toc ręcznie,
  • stosowania \chapter w klasie article,
  • ręcznego formatowania spisu zamiast użycia pakietów.

Dzięki temu spis będzie stabilny i zgodny ze strukturą dokumentu.

icon

Formularz kontaktowyContact form

Imię *Name
NazwiskoSurname
Adres e-mail *E-mail address
Telefon *Phone number
UwagiComments