en:rusturen:how-to-latex

Back to Rustrips

How-to-LaTeX

There are a lot of advantage when using LaTeX for writing your playbook. LaTeX has a lot of awesome commands and macros that makes writing your playbook a lot easier. Simpply LaTeX is just beautifull. This section will cover a lot of basic LaTeX commands that are relevant for writing your playbook. It is expected that the reader has a basic understanding of LaTeX or at least has gone through this 30 min tutorial Overleaf.

We highly recommend that you write on Overleaf. One of the big advantages to using Overleaf is the ability to write simutationally like in google docs. Everyone has access to the playbook and can write at the same time. Overleaf even includes versioncontrol that enables you to quickly find a previous revision of the document if need be.

For efficiency's sake it is a good idea to split your LaTeX document into smaller files — as you would any other big LaTeX project. It is recommended to use one of the premade playbook templates. The template can be found on github and a read-only version on Overleaf which you can easily create a copy of.

The templates is already split into days, activities, front- and back-matter

fig
latex
  back-matter
  days
  front-matter
  settings
main.tex

The method of which you add a new page / activity to the playbook depends on which template you have chosen.

The template uses the subfiles package to easily split the document into smaller managable pieces. When compiling a subfile in LaTeX you only compile the working document and not the whole playbook which would take a long amount of time. To actually compile the whole document you need to compile the main.tex document.

The \subfile{} commands works by using the first parameter as the path to the file to add to the document. Therefor you write this command in the main.tex document if it is from the front- or back-matter. If it is an activity corresponding to a day you add it to the day's corresponding .tex document. Here is a breakdown of how busride.tex from day 1 is added:

First we have created the document latex/days/01_arrival/bustur.tex:

\documentclass[../../../main.tex]{subfiles}
 
\begin{document}
 
 % Information about the busride
 
\end{document}

Take notice to how the documentclass is defined. The number of ../ corresponds to how meany levels of folders you have to go from latex/days/01_arrival/bustur.tex to main.tex which is at the top. Here there are 3 folders we have to go through to get to main.tex hence 3 ../ in \documentclass[../../../main.tex]{Subfiles}.

Because it is an activity of day 1 we add it to latex/days/01_arrival.tex:

\documentclass[../../main.tex]{subfiles}
\begin{document}
 
\section{First day}
\subfile{01_arrival/01_timetable.tex}
\subfile{01_arrival/busride.tex}   % <----- busride is added here
\subfile{01_arrival/welcome_speech.tex}
\newpage
\subfile{01_arrival/starrun.tex}
 
\end{document}

It might seem a bit overwhelming at first to create new documents, but have a look at the template. It has a lot more examples of how each document is added. We highly recommend using the sufiles version because of the fact that the playbook is only compiling the working document. For a playbook of +100 pages you waste a lot of time compiling the playbook if you used the \input{} version. That time you could have used to write the playbook and sooner be done.

I denne skabelon bruges \input{} til at dele drejebogen op i flere dokumenter. For at tilføje en ekstra aktivitet, skal man blot skrive \input{sti-til-din-fil.tex} i enten main.tex eller i den tilhørende dags .tex fil. Her er et eksempel på hvordan bustur.tex er tilføjet til drejebogen

latex/dage/01_ankomst.tex

\section{Første dag}
\input{latex/dage/01_ankomst/01_tidsplan.tex}
\input{latex/dage/01_ankomst/bustur.tex}       % <--- Her er bustur tilføjet
\input{latex/dage/01_ankomst/velkomsttale.tex}
\newpage
\input{latex/dage/01_ankomst/natloeb.tex}

\input{} kommandoen vil nu tage alt hvad der står i bustur.tex og indsætte i drejebogen.

Det skal lige siges, at på samme måde som bustur.tex er tilføjet til 01_ankomst.tex er 01_ankomst.tex også tilføjet til main.tex med \input{} kommandoen.

The template includes the ability to add a colour to a vectors team and name. This makes it easier for the vector to distinguish when and where they are responsible for something and when their team is. To make these open the document latex/settings/code_names.tex and add the command:

\codename{command name}{colour}{name to be displayed}

This could for example be

\codename{\VEKTOREX}{lemon}{Munken}

You would then later in the document write \VEKTOREX to get

In latex/settings/code_names.tex there are also the following examples of different codenames

% KABS
\codename{\KABS}{lightblue}{KABS}
\codename{\KABSEKS}{lightblue}{Rustrip Name}
 
% VEKTORER
\codename{\VEKTOREX}{lemon}{Niels}
 
\codename{\ALLV}{mediumpurple}{All vectors}
 
% BUMSER
\codename{\BUMS}{lust}{Bums}
 
% TEAM
\codename{\vektorex}{lemon}{Stodderne}

To make it easier for yourself when writing the playbook you should make a system for the study line team and cross team. For example \niels would be the vector, \nielsS would be the study line team and \nielsC would be the cross team.

The most simple way of inserting an image in the playbook is with the command \includegraphics{fig/path/to/image.png}

The following is an example of how an image is inserted with a width of 7cm (the height will automatically adjusted) and adding the caption „is placed at the entrance door to Bakkedargest fælleshus, Bakkedraget 30.“

\begin{figure}[H]
  \centering
  \includegraphics[width=7cm]{fig/hjertestarter.jpg}
  \caption{is placed at the entrance door to Bakkedargest fælleshus, Bakkedraget 30.}
  \label{fig:AED}
\end{figure}

A more extensive guide for inserting images in LaTeX can be found here.

Tables are extremly useful for displaying contact information, rotation table, overview of russes etc. The following tables are examples of how to fill the tables in the playbook template.

If you are not proficient with LaTeX you could use Tabel Generator to fill the tables it might make it a bit easier.

When checking russes for the bus trip and the general overview it is important to have tables for which russes are on which study line and cross team. It will also be easier to find the vector of a corresponding rus if they are needed.

We recommend that you do not write these tables directly in you playbook but in a seperate document. There will often be very late rustrip sign ups — even some on the introduction day. If you wrote the tables in the playbook you would have to print out a new list anyways, so it would be much easier to just make a different document and print it the day before the rustrip.

Rotation tables are used to find out which teams go where at any given time during the star run. The following is an example of how one might make a rotation table using the playbook template.

\begin{table}[ht!]
\centering\small
\begin{tabular}{|l|l|l|l|l|l|l|} \hline
  \backslashbox{Round}{Post} & Post 1 & Post 2 & Post 3 & Post 4 & Post 5 & Post 6 \\ \hline
  1. Round 21:30-21:45 & \peterC   & \jakobC    & \teodoraC & \nielsC   & \fridaC & \makecell[l]{\melissaC \\ \lineaC }  \\ \hline
 
  2. Round 21:50-22:5 & \lineaC   & \peterC    & \jakobC   & \teodoraC & \nielsC   & \makecell[l]{ \fridaC \\ \melissaC } \\ \hline
 
  3. Round 22:10-22:25& \melissaC  & \lineaC    & \peterC   & \jakobC   & \teodoraC  & \makecell[l]{ \nielsC \\ \fridaC } \\ \hline
 
  4. Round 22:30-22:45 & \fridaC & \melissaC  & \lineaC   & \peterC   & \jakobC     & \makecell[l]{ \teodoraC \\ \nielsC } \\ \hline
 
  5. Round 22:50-23:05 & \nielsC & \fridaC   & \melissaC & \lineaC   & \peterC     & \makecell[l]{ \jakobC \\ \teodoraC }\\ \hline
 
  6. Round 23:10-23:25&\teodoraC & \nielsC & \fridaC   & \melissaC & \lineaC   & \makecell[l]{ \peterC\\ \jakobC }\\ \hline
 
  7. Round 23:30-23:45&\jakobC & \teodoraC & \nielsC & \fridaC   & \melissaC   & \makecell[l]{ \lineaC \\\peterC }\\ \hline
\end{tabular}
\caption{Rotation table}
\label{tab:rotation_table_starrun}
\end{table}

This compiles to the following table

Take note of how one makes line breaks inside a table. You have to use \makecell[l] to enable this. The l indicates that it is „left-aligned“.

It is a good idea to create a timetable for each day with a list of what happends when. The following is an example taken directly from the template.

\begin{tabularx}{\textwidth}{|p{1cm}|X|X|X|}
\hline
\textbf{Time}        & \textbf{Activity}  &   \textbf{Where/Notice/Materials} &   \textbf{Responsible} \\ \hline
\textbf{08:30}      & Vectors meet for breakfast fernet branca and breakfast  & Hos \VEKTOREX at William Demant (Akademivej 100B) & \VEKTOREX and \VEKTOREX \\ \hline
\textbf{09:30}      & Walk to the S-house                 & 101E & \ALLV \\ \hline
\textbf{10:15}      & Russes arrive & 101E, find your crossteam and badge distribution & \ALLV \\ \hline
\textbf{10:30}      & Remind the russes to use the bathroom, might be a long trip & 101E & \ALLV \\ \hline
\textbf{10:45}      & The bus arrives & Russes walk into the bus, \VEKTOREX counts the russes & \VEKTOREX \\ \hline
\textbf{11:00}      & Bus leaves from DTU & Practial information about the trip & \VEKTOREX \\ \hline
\textbf{11:30-13:00}& Bustrip & Speed-dating, jokes, bridge toast & \VEKTOREX \\ \hline
\textbf{13:00}      & Arrival at the cabin & Crossvector shows the team their sleeping accommodations & \ALLV \\ \hline
\textbf{13:30}      & \KABS's welcome speech & Dinning  hall. Introduction of Swamp machine and study start rules & \#RIPBuffalloBill \\ \hline
\textbf{13:45-14:30}& Lunch & Dinning hall & \BUMS \\ \hline
\textbf{14:30-15:30}& \vektorex cleans up after lunch & Free play for everyone else& \VEKTOREX \\ \hline
\textbf{15:30-17:00}& Team Spirit & All over the cabin. Paint banner and make a battle cry for the team & \VEKTOREX \\ \hline
\textbf{16:00}      & New vest shift & \VEKTOREX and \VEKTOREX downs a beverage & \VEKTOREX and \VEKTOREX \\ \hline
\textbf{17:00-17:30}& Cleanup and presentation of banners & The terrace & \VEKTOREX \\ \hline
\textbf{17:30-18:00}& \vektorex prepares dinner & Free play for everyone else & \VEKTOREX \\ \hline
\textbf{18:00-19:00}& Dinner & Where do you think? The dinning hall. Presentation of the gossip box (and memes) & \BUMS and gossip box responsible \\ \hline
\textbf{19:00-20:00}& \vektorex cleans up after dinner & Dinning hall and the kitchen & \VEKTOREX \\ \hline
\textbf{19:30}      & Caos meeting & Caos meeting room  & \ALLV, \KABS and \BUMS \\  \hline
\textbf{20:00-22:30}& Starrun & Plan for the starrun & \VEKTOREX is responsible for rotation \\ \hline
\textbf{22:00}      & SHUT ALL DOORS AND WINDOWS & We don't want to loose our cabin for next years rustrip & \ALLV \\ \hline
\textbf{22:30}      & Free play & Everywhere & \#freeofresponsibility \\ \hline
\textbf{23:30}      & Late night snack & Dinning hall / party room & \BUMS \\ \hline
\textbf{00:00}      & \ALLV stops drinking & \#responsiblevectors \#soberday \#cocioday &  \\ \hline
\textbf{ca. 02:30}  & Throw the Russians to bed &  & Those who haven't died yet \\ \hline
\end{tabularx}
\end{document}

This gives the table:

Vector information should be at one of the first pages in the playbook together with information about nearest hopsital, police, cabin daddy etc. Even though most of you have written the number of you probably have the teams phone numbers, what if your telephone is destroyed and you are in an emegency that need some other vectors?

The following is an example of how to create this list. It is also included in the template.

\subsection{Our telephone numbers}
 
\begin{tabular}{c|l}
% KABS
+45 00 00 00 00 & \Niels \\
+45 00 00 00 00 & \Peter \\
 
% Vektorer
+45 00 00 00 00 & \Teodora \\
+45 00 00 00 00 & \Melissa \\
+45 00 00 00 00 & \Linea\\
+45 00 00 00 00 & \Frida\\ 
+45 00 00 00 00 & \Jakob \\
 
% Bumser
+45 00 00 00 00 & \Viktor \\
+45 00 00 00 00 & \Munken \\
+45 00 00 00 00 & \Neel \\
+45 00 00 00 00 & \Matteo \\
 
\end{tabular}

This gives the following:

It happends a lot. You have a table to big for your page. What you can try to do is put it in landscape mode. Simply put you turn the page 90 degrees. You do this by surround the table with \begin{landscape} and \end{landscape}.

\begin{landscape}
   ...tabel...
\end{landscape}

Another option is to reduce the font size. This can also be combined with the above. The following is a list of all the default sizes you can operate with LaTeX.

\Huge
\huge
\LARGE
\Large
\large
\normalsize (standard)
\small
\footnotesize
\scriptsize
\tiny

There are 2 methods to change the font size in LaTeX

{\small This is some text with a small font size written `inline'}
 
\begin{small}
This is some text with a small font size written in a LaTeX enviroment
\end{small}

If you write just \small in your playbook ALL text afterwards (in the given enviroment) will be at the font size \small . The 2 methods above are ways of limiting how much of the text is affected.


Some times you want to write your playbook in multiple columns to utilize more of the page. It is very simple to do in the playbook template. Simply surround what you want in mutliple columns with \begin{multicols}{X} and \end{multicols}. The X is the amount of columns you want. The following is an example of writing in 2 columns

\begin{multicols}{2}
  This text is now in 2 columns
\end{multicols}

When making the material list we recommend using our custom mats enviroment. It automatically collects all materials written in the playbook and writes it at the end of the playbook.

To use the enviroment you simply write

\begin{mats}{DAY}{ACTIVITY}

For each item you want to add to the list you write

\mat{QUANTITY}{MATERIAL}

When you want to end your list you end the enviroment with

\end{mats}

Example of a post from a starrun where mats is used

{\large \textbf{Post 7: Fear Pong}} \\
\textbf{Postansvarlig:} \backupvictor and \carl \\
 
A game of beer pong without liquid. Underneath each cup there is a challenge you have to do aswell. If you wanted to turn it into a drinking game you can suggest the russes that they can drink a few sips every hit.\\
 
\begin{mats}{Tuesday}{Fear Pong}
   \mat{12}{plastic cups}
    \mat{1}{Ping pong balls}
    \mat{1}{Challenges}
    \mat{1}{Small weights to prevent the cups from falling over}
\end{mats}
 
\textbf{Challenge ideas are printed, ask \carl}

At the end of the playbook you can see Tuesday and Fear Pong where the materials are listed.


External links for extra help

The fastest method is most likely a Google search with your specific problem, stackoverflow and wiki-pages usually have great solutions to your problem/question. However here is a small collection of links that might be usefull


Emergency LaTeX support

Name mail
Niels Kjær Ersbøll niels@bund.nu
Rasmus Aagaard latex-student@student.dtu.dk

First draft made by Henriette Steenhoff the 26-06-2015, revised by Niels Kjær Ersbøll in 2020

  • en/rusturen/how-to-latex.txt
  • Sidst ændret: 2022-02-22 11:00
  • af niels