R-CMD-check / R CMD check (push) Successful in 3m52s
Integrate Civilytics Reveal.js slide extension, HTML/PDF/Typst document themes, and _brand.yml into the package under inst/quarto/. Three new helper functions (use_civilytics_revealjs, use_civilytics_theme, use_civilytics_brand) copy assets into a user's Quarto project. Logos are stored once in inst/img/ and distributed at install time.
113 lines
3.2 KiB
TeX
113 lines
3.2 KiB
TeX
% =============================================================
|
|
% Civilytics — LaTeX preamble for Quarto PDF
|
|
% Usage in YAML:
|
|
% format:
|
|
% pdf:
|
|
% include-in-header: quarto/latex/civilytics.tex
|
|
% include-before-body: quarto/latex/civilytics-title.tex
|
|
% Requires: xelatex or lualatex (for system fonts).
|
|
% =============================================================
|
|
|
|
\usepackage{xcolor}
|
|
\usepackage{fontspec}
|
|
\usepackage{titlesec}
|
|
\usepackage{titling}
|
|
\usepackage{fancyhdr}
|
|
\usepackage{enumitem}
|
|
\usepackage{booktabs}
|
|
\usepackage{caption}
|
|
\usepackage[hidelinks]{hyperref}
|
|
\usepackage{microtype}
|
|
\usepackage{tcolorbox}
|
|
\tcbuselibrary{skins,breakable}
|
|
|
|
% --- Civilytics palette ---
|
|
\definecolor{paper}{HTML}{FAF7F2}
|
|
\definecolor{paper2}{HTML}{F2EDE4}
|
|
\definecolor{ink}{HTML}{0E1A2B}
|
|
\definecolor{ink2}{HTML}{2B3A52}
|
|
\definecolor{ink3}{HTML}{5A6A82}
|
|
\definecolor{rule}{HTML}{D6CEBD}
|
|
\definecolor{ruleStrong}{HTML}{B8AE97}
|
|
\definecolor{navy}{HTML}{22406A}
|
|
\definecolor{ember}{HTML}{C25311}
|
|
\definecolor{emberDark}{HTML}{923D00}
|
|
\definecolor{teal}{HTML}{1F6F70}
|
|
\definecolor{plum}{HTML}{6B3A5E}
|
|
|
|
% --- Page color ---
|
|
\pagecolor{paper}
|
|
\color{ink}
|
|
|
|
% --- Fonts (require local install or fontspec lookup) ---
|
|
\setmainfont{Source Serif 4}[
|
|
UprightFont = *,
|
|
ItalicFont = * Italic,
|
|
BoldFont = * SemiBold,
|
|
BoldItalicFont = * SemiBold Italic,
|
|
Ligatures = TeX,
|
|
]
|
|
\setsansfont{Inter}[Ligatures = TeX]
|
|
\setmonofont{JetBrains Mono}[Scale = 0.92]
|
|
\newfontfamily\displayfont{Libre Franklin}[Ligatures = TeX]
|
|
|
|
% --- Hyperlinks ---
|
|
\hypersetup{
|
|
colorlinks = true,
|
|
linkcolor = navy,
|
|
urlcolor = navy,
|
|
citecolor = navy,
|
|
filecolor = navy,
|
|
}
|
|
|
|
% --- Section headings ---
|
|
\titleformat{\section}[block]
|
|
{\bfseries\Large\displayfont\color{ink}}
|
|
{}{0pt}
|
|
{\titlerule[0.4pt]\vspace{4pt}}[\vspace{-6pt}]
|
|
\titleformat{\subsection}[block]
|
|
{\bfseries\large\displayfont\color{ink}}{}{0pt}{}
|
|
\titleformat{\subsubsection}[block]
|
|
{\bfseries\normalsize\displayfont\color{ink}}{}{0pt}{}
|
|
|
|
% --- Page header / footer ---
|
|
\pagestyle{fancy}
|
|
\fancyhf{}
|
|
\renewcommand{\headrulewidth}{0pt}
|
|
\renewcommand{\footrulewidth}{0pt}
|
|
\fancyhead[L]{\sffamily\scriptsize\color{ink3}\MakeUppercase{Civilytics Consulting}}
|
|
\fancyhead[R]{\sffamily\scriptsize\color{ink3}\thetitle}
|
|
\fancyfoot[L]{\sffamily\scriptsize\color{ink3}civilytics.consulting}
|
|
\fancyfoot[C]{\sffamily\scriptsize\color{ink3}\thepage}
|
|
\fancyfoot[R]{\sffamily\scriptsize\color{ink3}\textcopyright\ 2026}
|
|
|
|
% --- Captions ---
|
|
\captionsetup{
|
|
font={sf,small,color=ink3},
|
|
labelfont={sf,bf,color=ink3},
|
|
labelsep=period,
|
|
justification=raggedright,
|
|
singlelinecheck=false,
|
|
}
|
|
|
|
% --- Pullquote ---
|
|
\newtcolorbox{pullquote}{
|
|
enhanced, breakable, frame hidden, colback=paper,
|
|
borderline west = {2pt}{0pt}{ember},
|
|
left=14pt, right=4pt, top=4pt, bottom=4pt,
|
|
fontupper={\itshape\rmfamily\large\color{ink}},
|
|
}
|
|
|
|
% --- Code blocks (Pandoc + listings or minted both inherit colors below) ---
|
|
\definecolor{codebg}{HTML}{0E1A2B}
|
|
\definecolor{codefg}{HTML}{FAF7F2}
|
|
|
|
% --- Lists tighter ---
|
|
\setlist{itemsep=2pt, topsep=4pt}
|
|
|
|
% --- Tabular numerals ---
|
|
\newcommand{\tnum}[1]{{\addfontfeature{Numbers={Tabular,Lining}}#1}}
|
|
|
|
% --- Ember accent rule above section starts ---
|
|
\newcommand{\emberrule}{{\color{ember}\rule{60pt}{3pt}}\par\vspace{4pt}}
|