@slide(layout=chapter-slide) @number 4 @title Project structure @slide(layout=content-and-preview) @title Goal @content Create a bigger LaTeX project and … * prevent LaTeX documents from growing monstrously 👹 * keep the overview over the project structure @preview {style="padding: .2em; height: 100vh"} @slide(layout=content-and-preview) @title Main file 👑 @content * contains basic structure * includes separate sections with \ `\input{path/to/file}` ``` {.lang-tex .hljs data-sourcefile=main.tex} \documentclass{article} \usepackage{babel} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \title{A Title} \begin{document} \maketitle \tableofcontents \input{section1.tex} \input{section2.tex} \end{document} ``` @preview  @slide(layout=content-and-preview) @title File with a section @content * contains **no preamble** * contains **no** `\begin{document}` or `\end{document}` ``` {.hljs .lang-tex data-sourcefile=part1.tex} \section{This is section 1} A paragraph about the content of section 1. % … ``` ``` {.hljs .lang-tex data-sourcefile=part2.tex} \section{This is section 2} A paragraph about the content of section 2. % … ``` @preview {.thin-padding} @slide(layout=content-and-preview-with-category) @category Excursion @title Specifying file paths 👣 @content * important for `\input{}`, but later also for other media types * file and folder structure = tree structure 🌳 * with `\input{}`, you can specify the path relative to the main file
In **LaTeX,** you have to use UNIX-style paths. They are separated by a forward slash: `path/to/file`. We will use those from here on.
@preview  @slide(layout=content-and-preview-with-category) @category Excursion @title Specifying file paths 👣 @content`main.tex` → `part1.tex`
`main.tex` → `part1.tex` (in a subfolder)
./sections/part1.tex@preview  @slide(layout=content-and-preview-with-category) @category Excursion @title Specifying file paths 👣 @content
`main.tex` → `part1.tex` (from one subfolder into a different subfolder)
../sections/part1.tex**Two dots ‘`..`’** represent the parent folder of the current folder (in this case: `latex`, parent of `main`).
Spaces in file paths have to be escaped using a backslash: `path/to/a\␣file`.