% ********** NO NEED TO EDIT THIS FILE UNLESS MODIFYING THE LAYOUT ! **********
% If you want to edit the course title, code and date, please edit 'data.tex'
% *****************************************************************************
% TeX build command:
% makeindex %.idx -s lib/std.ist|
% pdflatex -synctex=1 -interaction=nonstopmode %.tex|
% evince %.pdf|
% rm %.ilg %.ind %.aux %.synctex.gz
\documentclass[a4paper,10pt]{article}
\usepackage{fancyhdr}
\usepackage{multicol}
\usepackage{makeidx}
\usepackage{vmargin}
\usepackage{pdfescape}
\usepackage{forloop}
\usepackage{graphicx}
\usepackage[document]{ragged2e}
\usepackage[hidelinks]{hyperref}
% setmarginsrb{1}{2}{3}{4}{5}{6}{7}{8}
% 1) Left margin 5) Header heigth
% 2) Top margin 6) Distance between header and text
% 3) Right margin 7) Footer heigth
% 4) Bottom margin 8) Distance between text and footer
\setmarginsrb{1.5cm}{.8cm}{1.5cm}{1cm}{1.2cm}{0.5cm}{1.2cm}{1cm}
% import commands from config.text for defining course's title, code and date for use hereafter
\input{data.tex}
% additional commands for the document
\newcommand{\comment}[1]{} % allows to write comments in the .idx file
\def\contextnotesize{\scriptsize} % allows to set the size of text used to contextualize an entry
% additional commands for the index references
\newcommand{\blankline}[0]{\hspace{\linewidth}} % fills the reference line with blank
\newcommand{\book}[2]{\coursecode.#1--#2} % displays a code when using \book
\newcommand{\lab}[1]{L#1} % displays a code when using \lab
\newcounter{i}
\newcommand{\rate}[1]{ \forloop{i}{0}{\value{i}<#1}{$\star$} } % displays stars, e.g. for rating a tool
% additional commands for graphics in the index references
\DeclareGraphicsExtensions{.png}
\newcommand{\icon}[1]{\includegraphics[height=8pt]{lib/#1} }
\newcommand{\volume}[0]{\includegraphics[height=8pt]{lib/book} }
\newcommand{\linux}[0]{\includegraphics[height=8pt]{lib/linux} }
\newcommand{\mac}[0]{\includegraphics[height=8pt]{lib/mac} }
\newcommand{\win}[0]{\includegraphics[height=8pt]{lib/windows} }
\newcommand{\all}[0]{\includegraphics[height=9pt]{lib/cross-platform} }
\newcommand{\solar}[0]{\includegraphics[height=8pt]{lib/solaris} }
\newcommand{\script}[0]{\includegraphics[height=8pt]{lib/script} }
\newcommand{\python}[0]{\includegraphics[height=8pt]{lib/python} }
\newcommand{\ruby}[0]{\includegraphics[height=8pt]{lib/ruby} }
\newcommand{\powershell}[0]{\includegraphics[height=8pt]{lib/powershell} }
\newcommand{\dotnet}[0]{\includegraphics[height=8pt]{lib/dotnet} }
\newcommand{\go}[0]{\includegraphics[height=8pt]{lib/go} }
\newcommand{\perl}[0]{\includegraphics[height=8pt]{lib/perl} }
\newcommand{\portable}[0]{\includegraphics[height=8pt]{lib/portable} }
\newcommand{\option}[0]{\includegraphics[height=8pt]{lib/option} }
\newcommand{\app}[0]{\includegraphics[height=8pt]{lib/app} }
\newcommand{\tuto}[0]{\includegraphics[height=8pt]{lib/tuto} }
\newcommand{\web}[0]{\includegraphics[height=8pt]{lib/web} }
\newcommand{\cloud}[0]{\includegraphics[height=8pt]{lib/cloud} }
\newcommand{\coin}[0]{\includegraphics[height=6pt]{lib/dollar} }
\newcommand{\note}[0]{\includegraphics[height=8pt]{lib/note} }
\newcommand{\q}[0]{\includegraphics[height=6pt]{lib/question} }
\newcommand{\ios}[0]{\includegraphics[height=8pt]{lib/mac} }
\newcommand{\android}[0]{\includegraphics[height=8pt]{lib/android} }
\newcommand{\file}[0]{\includegraphics[height=8pt]{lib/file} }
\newcommand{\tool}[0]{\includegraphics[height=8pt]{lib/tool} }
\newcommand{\toolb}[0]{\includegraphics[height=8pt]{lib/tool_blue} }
\newcommand{\toolr}[0]{\includegraphics[height=8pt]{lib/tool_red} }
\newcommand{\malware}[0]{\includegraphics[height=8pt]{lib/malware} }
\newcommand{\individual}[0]{\includegraphics[height=8pt]{lib/individual} }
\newcommand{\group}[0]{\includegraphics[height=8pt]{lib/group} }
\newcommand{\executive}[0]{\includegraphics[height=8pt]{lib/executive} }
% licenses
\newcommand{\cc}[0]{\includegraphics[height=16pt]{lib/cc} }
\newcommand{\ccby}[0]{\includegraphics[height=16pt]{lib/cc-by} }
\newcommand{\ccbysa}[0]{\includegraphics[height=16pt]{lib/cc-by-sa} }
% miscellaneous additional commands and shortcuts
\newcommand{\bs}[0]{\textbackslash } % shortcut for \textbackslash
\newcommand{\cmd}[1]{\texttt{\normalsize #1}} % displays a text in command format (styled with Courrier New font)
\newcommand{\cmds}[1]{\texttt{\small #1}} % command in small format
\newcommand{\cmdxs}[1]{\texttt{\footnotesize #1}} % command in extra small format
\newcommand{\goto}[0]{$\to$ }
% document definition
\ifdefined\indexauthor \author{\indexauthor} \fi
\title{\coursetitle}
\date{\coursedate}
\fancyhf{}
\fancyhead[C]{\LARGE\textbf{\coursetitle}}
\fancyfoot[L]{\vskip-7pt\ccbysa}
\fancyfoot[C]{\thepage}
\fancyfoot[R]{\scriptsize\coursedate\\\courseversion}
\pagestyle{fancy}
\makeatletter
\renewenvironment{theindex}{%
\setlength{\columnseprule}{0cm}
\setlength{\columnsep}{1cm}
\setlength{\parindent}{0cm}
\setlength{\parskip}{0cm}
\thispagestyle{plain}
\let\item\@idxitem
\relax
\begin{multicols}{2}}%
{\end{multicols}}
\let\ps@plain\ps@fancy
\makeatother
\begin{document}
{\cc\hskip10pt\vbox{\scriptsize\raggedright %
\hbox{This work is licensed under a Creative Commons Attribution 4.0 International License\ifdefined\indexauthor , by \indexauthor \fi}
\hbox{Template available at \url{https://github.com/academic-templates/tex-course-index-template}}}
\vskip20pt
\printindex
\end{document}
PDF Preview
Create an account to compile and preview