\NeedsTeXFormat{LaTeX2e} \ProvidesPackage{PrimeTeX/packages/Fonts}[2025-06-24] % Specify Fonts \RequirePackage{fontspec} \NewDocumentCommand{\fontpath}{}{PrimeTeX/fonts} % Main font: Roboto Serif \setmainfont{RobotoSerif}[ Path = {\fontpath/RobotoSerif/}, Extension = .ttf, UprightFont = *-Light, BoldFont = *-SemiBold, ItalicFont = *-LightItalic, BoldItalicFont = *-SemiBoldItalic, ] % Sans serif font: Roboto \setsansfont{Roboto}[ Path = {\fontpath/Roboto/}, Extension = .ttf, UprightFont = *-Regular, BoldFont = *-Bold, ItalicFont = *-Italic, BoldItalicFont = *-BoldItalic, ] % Monospace font: Roboto Mono \setmonofont{RobotoMono}[ Path = {\fontpath/RobotoMono/}, Extension = .ttf, UprightFont = *-Regular, BoldFont = *-Bold, ItalicFont = *-Italic, BoldItalicFont = *-BoldItalic, ] % Headings & Titles font: Roboto Slab \newfontfamily{\sbfamily}{RobotoSlab}[ Path = {\fontpath/}, Extension = .ttf, UprightFont = RobotoSlab/RobotoSlab-SemiBold, BoldFont = RobotoSlab/RobotoSlab-Black, % Roboto Slab doesn't have any italic form, so use % the Roboto Serif version. ItalicFont = RobotoSerif/RobotoSerif-SemiBoldItalic, BoldItalicFont = RobotoSerif/RobotoSerif-ExtraBoldItalic, ] \NewDocumentCommand{\serif}{m}{\textrm{#1}} \NewDocumentCommand{\sans}{m}{\textsf{#1}} \NewDocumentCommand{\mono}{m}{\texttt{#1}} \NewDocumentCommand{\slab}{m}{{\sbfamily{}#1}} \NewDocumentCommand{\code}{m}{\mono{\small{}#1}} \NewDocumentCommand{\objref}{m}{{\sans{\strong{#1}}}} \RequirePackage{amssymb}