> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/pl/struktura-dokumentu/07-management-in-a-large-project.md).

# Zarządzanie w dużym projekcie

## Wstęp

W dużych projektach, takich jak książki, trzymanie części dokumentu w kilku plikach .tex ułatwia zadanie poprawiania błędów i wprowadzania dalszych zmian. Łatwiej jest znaleźć konkretne słowo lub element w krótkim pliku. W tym celu ten artykuł wyjaśnia, jak zarządzać dużymi projektami.

## Wczytywanie i dołączanie plików

Standardowymi narzędziami do wstawienia pliku LaTeX do innego są `\input` i `\include`.

**polecenie \input**

\input{filename}

Użyj tego polecenia w treści dokumentu, aby wstawić zawartość innego pliku o nazwie `filename.tex`; ten plik nie powinien zawierać żadnego kodu preambuły LaTeX (tzn. żadnego `\documentclass`, `\begin{document}` lub `\end{document}` ). LaTeX nie rozpocznie nowej strony przed przetworzeniem materiału w `filename.tex`. `\input` pozwala zagnieżdżać `\input` polecenia w plikach, które są już wczytywane przez plik główny.

**polecenie \include**

\include{filename}

Użyj tego polecenia w treści dokumentu, aby wstawić zawartość innego pliku o nazwie `filename.tex`; ponownie ten plik nie powinien zawierać preambuły LaTeX. LaTeX rozpocznie nową stronę przed przetworzeniem materiału wczytanego z `filename.tex`. Upewnij się, że nie dołączasz rozszerzenia `.tex` w nazwie pliku, ponieważ spowoduje to, że plik nie zostanie wczytany (rozszerzenie można opcjonalnie podać przy użyciu `wejściowe` i `import`). Nie można zagnieżdżać `include` wczytany ma własny plik .aux przechowujący informacje o utworzonych etykietach oraz zawartość spisu treści, spisu rysunków itd. Możesz użyć `\include`Każdy plik, który zostaje `\includeonly` z listą nazw plików oddzielonych przecinkami (upewnij się, że nie ma spacji na początku ani na końcu). Jeśli to zrobisz, LaTeX będzie przetwarzał tylko pliki zawarte na tej liście. Można to wykorzystać do przyspieszenia kompilacji, jeśli pracujesz tylko nad małą częścią większego dokumentu. Numery stron i odwołania krzyżowe nadal będą jednak działać, ponieważ pliki .aux pominiętych plików nadal będą przetwarzane.

[Otwórz przykład dużego projektu w Overleaf](https://www.overleaf.com/project/new/template/20618?id=70769185\&templateName=Managing+a+large+project+on+Overleaf\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

## Preambuła w osobnym pliku

Jeśli preambuła twojego dokumentu zawiera wiele poleceń zdefiniowanych przez użytkownika lub definicji terminów do [glosariusza](/latex/pl/struktura-dokumentu/05-glossaries.md), możesz umieścić ją w osobnym pliku. Właściwym sposobem jest utworzenie własnego pakietu, czyli pliku z rozszerzeniem .sty. Spójrzmy na przykład:

```latex
\ProvidesPackage{example}

\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage[latin1]{inputenc}
\usepackage[spanish, english]{babel}
\usepackage{graphicx}
\usepackage{blindtext}
\usepackage{textcomp}
\usepackage{pgfplots}

\pgfplotsset{width=10cm,compat=1.9}

%Style nagłówków
\usepackage{fancyhdr}
\setlength{\headheight}{15pt}
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\sectionmark}[1]{\markright{#1}{}}
\fancyhf{}
\fancyhead[LE,RO]{\thepage}
\fancyhead[RE]{\textbf{\textit{\nouppercase{\leftmark}}}}
\fancyhead[LO]{\textbf{\textit{\nouppercase{\rightmark}}}}
\fancypagestyle{plain}{ %
\fancyhf{} % usuń wszystko
\renewcommand{\headrulewidth}{0pt} % usuń również linie
\renewcommand{\footrulewidth}{0pt}}

%udostępnia polecenia \proof, \qedsymbol i \theoremstyle
\usepackage{amsthm}

%Linijka
\newcommand{\HRule}{\rule{\linewidth}{0.5mm}}

%Definicja lematu i licznik lematów
\newtheorem{lemma}{Lemat}[section]

%Licznik definicji
\theoremstyle{definition}
\newtheorem{definition}{Definicja}[section]

%Licznik wniosków
\newtheorem{corolary}{Wniosek}[section]

%Polecenia dla liczb naturalnych, całkowitych, topologii, otoczki wypukłej, kuli, dysku, wymiaru, brzegu i kilku innych
\newcommand{\E}{{\mathcal{E}}}
\newcommand{\F}{{\mathcal{F}}}
...

%Środowisko przykładu
\theoremstyle{remark}
\newtheorem{examle}{Przykład}

%Licznik przykładów
\newcommand{\reiniciar}{\setcounter{example}{0}}
```

Wszystkie polecenia w tym pliku mogłyby zostać umieszczone w preambule, ale plik główny stałby się przez tę dużą ilość kodu nieczytelny, a odnalezienie właściwej treści dokumentu w tak dużym pliku byłoby uciążliwym zadaniem.

Ten plik można by również umieścić w zwykłym pliku .tex i zaimportować za pomocą polecenia `import` (zobacz [następny rozdział](#importing-files)), ale plik .sty zapobiega możliwym błędom, jeśli plik zostanie przypadkowo zaimportowany więcej niż raz.

Zauważ, że pierwsza linia przykładu to

```latex
\ProvidesPackage{example}
```

oznacza to, że musimy zaimportować ten pakiet jako *przykładzie* w pliku głównym, tzn. za pomocą polecenia

```latex
\usepackage{example}
```

jak pokazano w [wprowadzeniu](#introduction).

*Uwaga: plik .sty jest znacznie bardziej elastyczny; można go użyć do definiowania własnych makr, a opcjonalne parametry mogą być przekazywane; zobacz* [*Pisanie własnego pakietu*](/latex/pl/pliki-klas/03-writing-your-own-package.md).

[Otwórz przykład dużego projektu w Overleaf](https://www.overleaf.com/project/new/template/20618?id=70769185\&templateName=Managing+a+large+project+on+Overleaf\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

## Korzystanie z pakietu import

Jak wspomniano powyżej, standardowymi narzędziami do wstawienia pliku LaTeX do innego są `\input` i `\include`, ale są one podatne na błędy, jeśli potrzebne jest zagnieżdżone importowanie plików. Z tego powodu warto rozważyć pakiet **import**.

Poniżej znajduje się przykład książki, której sekcje i polecenia zdefiniowane przez użytkownika są przechowywane w osobnych plikach, a pliki obrazów dla każdego rozdziału są przechowywane w osobnych folderach wraz z plikiem .tex dla każdego rozdziału.

```latex
\documentclass[a4paper,11pt]{book}
\usepackage{import}
\usepackage{example}

\usepackage{makeidx}
\makeindex

\begin{document}

\frontmatter
\import{./}{title.tex}

\clearpage
\thispagestyle{empty}

\tableofcontents

\mainmatter
\chapter{First chapter}
\import{sections/}{section1-1.tex}
\import{sections/}{section1-2.tex}

\chapter{Additional chapter}
\import{sections/}{section2-1.tex}

\chapter{Last chapter}
\import{sections/}{section3-1.tex}

\backmatter

\import{./}{bibliography.tex}

\end{document}
```

Jak widać, przykład przedstawia książkę z trzema rozdziałami i kilkoma sekcjami w przejrzystym pliku głównym, który pobiera zewnętrzne pliki, aby wygenerować końcowy dokument. Polecenie `\frontmatter` w klasie dokumentu book jest używane dla pierwszych stron dokumentu; to polecenie ustawia styl numeracji stron na cyfry rzymskie; polecenie `\mainmatter` resetuje numerację stron i zmienia styl na arabski, `\backmatter` wyłącza numerację rozdziałów (odpowiednie dla bibliografii i dodatków).

```latex
\chapter{First chapter}
\import{sections/}{section1-1.tex}
\import{sections/}{section1-2.tex}
```

Najpierw dodaj tę linię do preambuły swojego dokumentu:

```latex
\usepackage{import}
```

Następnie użyj `\import{ }{ }`. Pierwszy parametr w nawiasach klamrowych to katalog, w którym znajduje się plik; może on być względny względem bieżącego katalogu roboczego albo absolutny. Drugi parametr to nazwa pliku do zaimportowania

Dostępne jest również polecenie `\subimport` które ma tę samą składnię, ale jeśli zostanie użyte w jednym z plików importowanych w pliku głównym, ścieżka będzie względna względem tego podpliku. Na przykład poniżej znajduje się zawartość pliku „section1-1.tex”, który został zaimportowany w poprzednim przykładzie:

```latex
\section{Pierwsza sekcja}

Poniżej znajduje się prosty wykres 3D

\begin{figure}[h]
\centering
\subimport{img/}{plot1.tex}
\caption{Podpis}
\label{fig:my_label}
\end{figure}

[...]
```

Jak widać, ten plik importuje [wykres PGF](/latex/pl/specyficzne-dla-dziedziny/08-pgfplots-package.md) plik o nazwie „plot1.tex”, który tworzy wykres 3D. Ten plik jest importowany

```latex
\subimport{img/}{plot1.tex}
```

z folderu „img”, znajdującego się w folderze „sections”.

Jeśli `\import` zostałoby użyte zamiast tego, ścieżka *img/* byłaby względna względem pliku głównego, zamiast względem folderu „sections”, w którym zapisany jest „section1-1.tex”.

[Otwórz przykład dużego projektu w Overleaf](https://www.overleaf.com/project/new/template/20618?id=70769185\&templateName=Managing+a+large+project+on+Overleaf\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

## Dalsza lektura

Więcej informacji znajdziesz w:

* [Wieloplikowe projekty LaTeX](/latex/pl/struktura-dokumentu/08-multi-file-latex-projects.md)
* [Odwołania krzyżowe do sekcji i równań](/latex/pl/struktura-dokumentu/03-cross-referencing-sections-equations-and-floats.md)
* [Indeksy](/latex/pl/struktura-dokumentu/04-indices.md)
* [Glosariusze](/latex/pl/struktura-dokumentu/05-glossaries.md)
* [Hiperłącza](/latex/pl/struktura-dokumentu/09-hyperlinks.md)
* [Numeracja stron](/latex/pl/formatowanie/03-page-numbering.md)
* [Dokumenty jednostronne i dwustronne](/latex/pl/formatowanie/08-single-sided-and-double-sided-documents.md)
* [Wiele kolumn](/latex/pl/formatowanie/09-multiple-columns.md)
* [Formatowanie akapitów](/latex/pl/formatowanie/04-articles-how-to-change-paragraph-spacing-in-latex.md)
* [Rozmiar strony i marginesy](/latex/pl/formatowanie/07-page-size-and-margins.md)
* [Liczniki](/latex/pl/formatowanie/10-counters.md)
* [Notatki na marginesie](/latex/pl/formatowanie/15-margin-notes.md)
* [Pogrubienie, kursywa i podkreślenie](/latex/pl/podstawy-latex-a/03-bold-italics-and-underlining.md)
* [Rozmiary czcionek, kroje i style](/latex/pl/czcionki/01-font-sizes-families-and-styles.md)
* [Kroje pisma](/latex/pl/czcionki/02-font-typefaces.md)
* [Obsługa nowoczesnych czcionek w XeLaTeX](/latex/pl/czcionki/03-xelatex.md)
* [Obsługa języków międzynarodowych](/latex/pl/jezyki/03-international-language-support.md)
* [Rozmiary czcionek, kroje i style](/latex/pl/czcionki/01-font-sizes-families-and-styles.md)
* [Pisanie własnego pakietu](/latex/pl/pliki-klas/03-writing-your-own-package.md)
* [Pisanie własnej klasy](/latex/pl/pliki-klas/04-writing-your-own-class.md)
* [Niezbyt krótki wstęp do LaTeX2ε](http://www.ctan.org/tex-archive/info/lshort/)
* [`import` dokumentacja pakietu](ftp://sunsite.icm.edu.pl/pub/CTAN/macros/latex/contrib/import/import.pdf)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/pl/struktura-dokumentu/07-management-in-a-large-project.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
