> 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/sv/dokumentstruktur/07-management-in-a-large-project.md).

# Hantering i ett stort projekt

## Introduktion

I stora projekt, såsom böcker, gör det lättare att rätta fel och göra fler ändringar om du håller delarna av dokumentet i flera .tex-filer. Det är enklare att hitta ett visst ord eller ett visst element i en kort fil. För detta syfte förklarar den här artikeln hur man hanterar stora projekt.

## Att mata in och inkludera filer

Standardverktygen för att infoga en LaTeX-fil i en annan är `\input` och `\include`.

**kommandot input**

\input{filename}

Använd detta kommando i dokumentets brödtext för att infoga innehållet i en annan fil med namnet `filename.tex`; den här filen ska inte innehålla någon LaTeX-preamblekod (dvs. ingen `\documentclass`, `\begin{document}` eller `\end{document}` ). LaTeX börjar inte en ny sida innan materialet i `filename.tex`. `\input` låter dig nästla `\input` kommandon i filer som redan matas in av rotfilen.

**kommandot include**

\include{filename}

Använd detta kommando i dokumentets brödtext för att infoga innehållet i en annan fil med namnet `filename.tex`; även den här filen ska inte innehålla någon LaTeX-preamble. LaTeX börjar en ny sida innan det inmatade materialet från `filename.tex`. Se till att inte ta med filändelsen `.tex` i filnamnet, eftersom detta stoppar filen från att matas in (ändelsen kan valfritt inkluderas med `inmatnings` och `import`). Det går inte att nästla `include` kommandon. Varje fil som `\include`d har sin egen .aux-fil som lagrar information om skapade etiketter och innehåll för innehållsförteckningen, figurlistan osv. Du kan använda `\includeonly` med en kommaseparerad lista över filnamn (se till att det inte finns några inledande eller avslutande blanksteg). Om du gör detta kommer LaTeX bara att bearbeta filerna i den listan. Detta kan användas för att öka kompileringshastigheten om du bara arbetar med en liten del av ett större dokument. Sidnummer och korsreferenser kommer dock fortfarande att fungera, eftersom .aux-filerna för utelämnade filer fortfarande kommer att bearbetas.

[Öppna ett exempel på ett stort projekt på 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=)

## Preamble i en separat fil

Om dokumentets preamble har många användardefinierade kommandon eller termdefinitioner för [ordlistan](/latex/sv/dokumentstruktur/05-glossaries.md)kan du lägga den i en separat fil. Det rätta sättet är att skapa ett eget paket, vilket är en fil med tillägget .sty. Låt oss se ett exempel:

```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}

%Sidhuvudsformat
\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{} % ta bort allt
\renewcommand{\headrulewidth}{0pt} % ta bort linjerna också
\renewcommand{\footrulewidth}{0pt}}

%gör kommandona \proof, \qedsymbol och \theoremstyle tillgängliga
\usepackage{amsthm}

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

%Definition av lemma och lemmaräknare
\newtheorem{lemma}{Lemma}[section]

%Räknare för definitioner
\theoremstyle{definition}
\newtheorem{definition}{Definition}[section]

%Räknare för korollarium
\newtheorem{corolary}{Korollarium}[section]

%Kommandon för naturliga tal, heltal, topologi, konvexhölje, Boll, disk, dimension, rand och några fler
\newcommand{\E}{{\mathcal{E}}}
\newcommand{\F}{{\mathcal{F}}}
...

%Exempelmiljö
\theoremstyle{remark}
\newtheorem{examle}{Exempel}

%Räknare för exempel
\newcommand{\reiniciar}{\setcounter{example}{0}}
```

Alla kommandon i den här filen skulle ha kunnat placeras i preamble, men huvudfilen skulle ha blivit förvirrande på grund av den stora mängden kod, och att hitta dokumentets faktiska brödtext i en så stor fil skulle vara en besvärlig uppgift.

Den här filen skulle också kunna placeras i en vanlig .tex-fil och importeras med kommandot `import` (se [nästa avsnitt](#importing-files)), men en .sty-fil förhindrar möjliga fel om filen av misstag importeras mer än en gång.

Observera att den första raden i exemplet är

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

detta betyder att vi måste importera detta paket som *exempel* i huvudfilen, dvs. med kommandot

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

som visas i [introduktionen](#introduction).

*Obs: En .sty-fil är mycket mer flexibel, den kan användas för att definiera dina egna makron och valfria parametrar kan skickas med, se* [*Skriv ditt eget paket*](/latex/sv/klassfiler/03-writing-your-own-package.md).

[Öppna ett exempel på ett stort projekt på 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=)

## Användning av paketet import

Som nämnt ovan är standardverktygen för att infoga en LaTeX-fil i en annan `\input` och `\include`, men dessa är känsliga för fel om nästlad filimport behövs. Av den anledningen kan du vilja överväga paketet **import**.

Nedan finns ett exempel på en bok vars avsnitt och användardefinierade kommandon lagras i separata filer, och där bildfilerna för varje kapitel lagras i separata mappar tillsammans med .tex-filen för varje kapitel.

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

\usepackage{makeidx}
\makeindex

\begin{document}

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

\clearpage
\thispagestyle{empty}

\tableofcontents

\mainmatter
\chapter{Första kapitlet}
\import{sections/}{section1-1.tex}
\import{sections/}{section1-2.tex}

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

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

\backmatter

\import{./}{bibliography.tex}

\end{document}
```

Som du ser är exemplet en bok med tre kapitel och flera avsnitt i en prydlig huvudfil som hämtar externa filer för att generera det slutliga dokumentet. Kommandot `\frontmatter` i bokklassdokumentet används för dokumentets första sidor, sidnumreringsstilen sätts till romerska siffror av detta kommando; kommandot `\mainmatter` återställer sidnumreringen och ändrar stilen till arabiska, `\backmatter` inaktiverar kapitelnumreringen (lämpligt för bibliografin och bilagorna).

```latex
\chapter{Första kapitlet}
\import{sections/}{section1-1.tex}
\import{sections/}{section1-2.tex}
```

Först, lägg till denna rad i dokumentets preamble:

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

Använd sedan `\import{ }{ }`. Den första parametern inom klamrarna är katalogen där filen finns, den kan vara relativ till den aktuella arbetskatalogen eller absolut. Den andra parametern är namnet på filen som ska importeras

Det finns också kommandot `\subimport` som har samma syntax, men om det används i någon av filerna som importeras i huvudfilen kommer sökvägen att vara relativ till just den underfilen. Nedan är till exempel innehållet i filen "section1-1.tex" som importerades i det föregående exemplet:

```latex
\section{Första avsnittet}

Nedan visas ett enkelt 3D-diagram

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

[...]
```

Som du ser importerar den här filen en [pgf-plot](/latex/sv/faltspecifikt/08-pgfplots-package.md) fil som heter "plot1.tex" och som skapar ett 3D-diagram. Denna fil importeras från

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

ur mappen "img", som finns i mappen "sections".

Om `\import` användes i stället skulle sökvägen *img/* vara relativ till huvudfilen, i stället för mappen "sections" där "section1-1.tex" är sparad.

[Öppna ett exempel på ett stort projekt på 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=)

## Vidare läsning

För mer information, se:

* [LaTeX-projekt med flera filer](/latex/sv/dokumentstruktur/08-multi-file-latex-projects.md)
* [Korsreferenser till avsnitt och ekvationer](/latex/sv/dokumentstruktur/03-cross-referencing-sections-equations-and-floats.md)
* [Sakregister](/latex/sv/dokumentstruktur/04-indices.md)
* [Ordlistor](/latex/sv/dokumentstruktur/05-glossaries.md)
* [Hyperlänkar](/latex/sv/dokumentstruktur/09-hyperlinks.md)
* [Sidnumrering](/latex/sv/formatering/03-page-numbering.md)
* [Ensidiga och dubbelsidiga dokument](/latex/sv/formatering/08-single-sided-and-double-sided-documents.md)
* [Flera kolumner](/latex/sv/formatering/09-multiple-columns.md)
* [Styckeformatering](/latex/sv/formatering/04-articles-how-to-change-paragraph-spacing-in-latex.md)
* [Sidstorlek och marginaler](/latex/sv/formatering/07-page-size-and-margins.md)
* [Räknare](/latex/sv/formatering/10-counters.md)
* [Marginalanteckningar](/latex/sv/formatering/15-margin-notes.md)
* [Fetstil, kursiv och understrykning](/latex/sv/latex-grunder/03-bold-italics-and-underlining.md)
* [Teckenstorlekar, typsnittsfamiljer och stilar](/latex/sv/typsnitt/01-font-sizes-families-and-styles.md)
* [Typsnitt](/latex/sv/typsnitt/02-font-typefaces.md)
* [Stöd för moderna typsnitt med XeLaTeX](/latex/sv/typsnitt/03-xelatex.md)
* [Stöd för internationella språk](/latex/sv/sprak/03-international-language-support.md)
* [Teckenstorlekar, typsnittsfamiljer och stilar](/latex/sv/typsnitt/01-font-sizes-families-and-styles.md)
* [Skriv ditt eget paket](/latex/sv/klassfiler/03-writing-your-own-package.md)
* [Skriv din egen klass](/latex/sv/klassfiler/04-writing-your-own-class.md)
* [Den inte så korta introduktionen till LaTeX2ε](http://www.ctan.org/tex-archive/info/lshort/)
* [`import` paketdokumentation](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/sv/dokumentstruktur/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.
