You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
afgl/report/mathreport.cls

82 lines
2.8 KiB
TeX

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{mathreport}[2023/10/27 Custom Typographic Math Report Class]
% Pass unknown options to the base article class
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
\ProcessOptions\relax
\LoadClass[11pt, letterpaper]{article}
% =========================================================
% 1. TYPOGRAPHY & FONTS (The Foundation)
% =========================================================
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
% Palatino (Text and Math) with Old Style Figures
\RequirePackage[osf,sc]{mathpazo}
\RequirePackage{tgpagella}
% Open up the leading (line spacing) for readability
\linespread{1.15}
% Microtype: The secret sauce for perfect justification
\RequirePackage[activate={true,nocompatibility},final,tracking=true,kerning=true,spacing=true]{microtype}
\SetTracking{encoding={*}, shape=sc}{40} % Spacing for Small Caps
% =========================================================
% 2. PAGE GEOMETRY (The Measure)
% =========================================================
% We enforce wide margins to keep line length ~66 characters
\RequirePackage[top=1.5in, bottom=1.5in, left=1.8in, right=1.8in]{geometry}
% =========================================================
% 3. MATHEMATICS
% =========================================================
\RequirePackage{amsmath, amssymb, amsthm, mathtools, bm}
% Custom Theorem Style: Italic body, Small Caps header
\newtheoremstyle{eleganttheorem}
{12pt}{12pt}{\itshape}{}{\scshape}{.}{0.5em}{}
\theoremstyle{eleganttheorem}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{corollary}[theorem]{Corollary}
\theoremstyle{definition}
\newtheorem{definition}{Definition}[section]
% =========================================================
% 4. SECTION HEADINGS
% =========================================================
\RequirePackage{titlesec}
% Section: Centered, Large, Small Caps
\titleformat{\section}[block]{\large\scshape\centering}{\thesection.}{1em}{}
\titlespacing*{\section}{0pt}{2em}{1.5em}
% Subsection: Left aligned, Italic
\titleformat{\subsection}[block]{\normalsize\itshape}{\thesubsection}{1em}{}
\titlespacing*{\subsection}{0pt}{1.5em}{0.5em}
% =========================================================
% 5. UTILITIES
% =========================================================
\RequirePackage{booktabs} % Good tables
\RequirePackage{caption} % Caption styling
\captionsetup{font={small,it}, labelfont={sc}, labelsep=period}
\RequirePackage[dvipsnames]{xcolor}
% Hyperlinks
\RequirePackage{hyperref}
\hypersetup{
colorlinks=true,
linkcolor=Maroon,
citecolor=Maroon,
urlcolor=MidnightBlue
}
\RequirePackage{cleveref}
% Bibliography
\RequirePackage[style=authoryear, backend=biber]{biblatex}