%% Pandoc LaTeX Template %% Usage: pandoc input.md -o output.pdf --template=template_first-skyfritt-example.tex \documentclass[12pt, a4paper]{article} %% ── Encoding & language ─────────────────────────────────────────────────────── \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[english]{babel} %% ── Page geometry ───────────────────────────────────────────────────────────── %% A4 at 12pt Roboto. Text width ~155mm → ~68 chars/line, within the %% 45–75 char optimal range (Bringhurst). Bottom is slightly deeper than %% top to give the page number visual breathing room and anchor the page. \usepackage[ a4paper, top = 27mm, bottom = 32mm, left = 28mm, right = 28mm, footskip = 14mm ]{geometry} %% ── Font: Roboto (requires XeLaTeX or LuaLaTeX) ────────────────────────────── \usepackage{fontspec} \setmainfont{Roboto}[ UprightFont = *-Regular, BoldFont = *-Bold, ItalicFont = *-Italic, BoldItalicFont = *-BoldItalic ] \setsansfont{Roboto} \setmonofont{Menlo}[Scale=0.9] %% ── Colours ─────────────────────────────────────────────────────────────────── \usepackage{xcolor} \definecolor{accent}{HTML}{2C3E50} \definecolor{muted}{HTML}{7F8C8D} \definecolor{vertbar}{HTML}{297ab3} %% ── Hyperlinks ──────────────────────────────────────────────────────────────── \usepackage[ colorlinks = true, linkcolor = accent, urlcolor = accent, citecolor = accent ]{hyperref} %% ── Page footer only ────────────────────────────────────────────────────────── %% No header. Page number centred in the footer at footnotesize so it %% sits quietly without competing with the text. \usepackage{fancyhdr} \pagestyle{fancy} \fancyhf{} \fancyfoot[C]{\footnotesize\textcolor{muted}{\thepage}} \renewcommand{\headrulewidth}{0pt} \renewcommand{\footrulewidth}{0pt} %% ── Section styling ─────────────────────────────────────────────────────────── \usepackage{titlesec} \titleformat{\section} {\large\bfseries\color{accent}}{\thesection}{1em}{\MakeUppercase}[\titlerule] \newcommand{\sectionbreak}{\clearpage} \titleformat{\subsection} {\normalsize\bfseries\color{accent}}{\thesubsection}{1em}{} \titleformat{\subsubsection} {\normalsize\itshape}{\thesubsubsection}{1em}{} %% ── Table of contents styling ───────────────────────────────────────────────── \usepackage{tocloft} \renewcommand{\cftsecfont}{\bfseries} \renewcommand{\cftsecpagefont}{\bfseries} \setlength{\cftbeforesecskip}{4pt} %% ── Section numbering ───────────────────────────────────────────────────────── %% By default sections are NOT auto-numbered, because Markdown headings already %% carry their own numbers (e.g. "## 1. Introduction"). %% Pass --number-sections to pandoc to enable LaTeX auto-numbering instead. $if(numbersections)$ \setcounter{secnumdepth}{$if(secnumdepth)$$secnumdepth$$else$3$endif$} $else$ \setcounter{secnumdepth}{0} $endif$ %% ── Tables ──────────────────────────────────────────────────────────────────── \usepackage{booktabs} \usepackage{longtable} \usepackage{array} \usepackage{caption} \usepackage{colortbl} %% Table colours \definecolor{tableheadbg}{HTML}{2C3E50} %% same as accent — dark header \definecolor{tablerowA}{HTML}{FFFFFF} %% white rows \definecolor{tablerowB}{HTML}{F0F3F4} %% very light grey alternate rows \definecolor{tablerule}{HTML}{BDC3C7} %% light rule colour %% Caption styling \captionsetup[table]{ font = {small, color=muted}, labelfont = bf, position = above, skip = 4pt } %% Tighten row height slightly and add a hint of left/right cell padding \setlength{\tabcolsep}{10pt} \renewcommand{\arraystretch}{1.35} %% Wrap every longtable in alternating-row colours. %% Row 1 (the header) gets the dark accent background; from row 2 onward %% rows alternate tablerowA / tablerowB. \AtBeginEnvironment{longtable}{% \rowcolors{2}{tablerowB}{tablerowA}% \arrayrulecolor{tablerule}% } %% Style the header row: white bold text on dark accent background. %% \rowcolor in row 1 overrides the \rowcolors cycling for that row only. \newcommand{\tableheader}{% \rowcolor{tableheadbg}% \color{white}\bfseries% } %% Pandoc emits \toprule / \midrule / \bottomrule from booktabs. %% Override rule weights to match the softer palette. \setlength{\heavyrulewidth}{0.8pt} \setlength{\lightrulewidth}{0.4pt} \setlength{\cmidrulewidth}{0.4pt} \makeatletter \newcounter{none} \makeatother %% ── Graphics & figures ──────────────────────────────────────────────────────── \usepackage{graphicx} \usepackage{float} \makeatletter \def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi} \makeatother \setkeys{Gin}{width=\maxwidth, keepaspectratio} \usepackage{etoolbox} \usepackage{tikz} %% ── Code listings ───────────────────────────────────────────────────────────── \usepackage{fancyvrb} \usepackage{listings} \lstset{ basicstyle = \small\ttfamily, breaklines = true, frame = single, rulecolor = \color{muted}, commentstyle = \color{muted}, keywordstyle = \color{accent}\bfseries } %% ── Pandoc shims ────────────────────────────────────────────────────────────── \providecommand{\tightlist}{% \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}} $if(highlighting-macros)$ $highlighting-macros$ $endif$ %% ── Blockquotes ─────────────────────────────────────────────────────────────── \AtBeginEnvironment{quote}{\fontsize{11pt}{13.2pt}\selectfont} %% ── Spacing ─────────────────────────────────────────────────────────────────── \usepackage{parskip} \setlength{\parskip}{6pt} \usepackage{setspace} \onehalfspacing %% ══════════════════════════════════════════════════════════════════════════════ %% DOCUMENT %% ══════════════════════════════════════════════════════════════════════════════ \begin{document} %% ── Title page ──────────────────────────────────────────────────────────────── \begin{titlepage} \thispagestyle{empty} %% ── Full-height left vertical bar ───────────────────────────────────────── \begin{tikzpicture}[remember picture, overlay] \fill[vertbar] (current page.north west) rectangle ++(1.27cm, -29.70cm); \end{tikzpicture} \raggedright \vspace*{4cm} {\Huge\bfseries\color{accent} $title$ \par} \vspace{0.5cm} {\color{vertbar}\rule{3.31cm}{0.2cm}} \vspace{1cm} $if(subtitle)$ {\large\itshape $subtitle$ \par} \vspace{1cm} $endif$ $if(author)$ {\large $for(author)$$author$$sep$ \\ $endfor$ \par} \vspace{0.5cm} $endif$ $if(date)$ {\normalsize\textcolor{muted}{$date$} \par} $endif$ \vfill $if(description)$ \begin{minipage}{0.7\textwidth} \raggedright\small\textcolor{muted}{$description$} \end{minipage} $endif$ \end{titlepage} %% ── Table of contents ───────────────────────────────────────────────────────── \clearpage \tableofcontents \clearpage %% ── Main content ────────────────────────────────────────────────────────────── $body$ \end{document}