blob: c1865ec4ca26d1e792bc912748b63a7f08ca3081 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{school-assignment}[2024-01-20 class school-assignment]
% based on article
\LoadClass{article}
% default word page setup
\PassOptionsToPackage{margin=1in}{geometry}
\PassOptionsToPackage{a4paper}{geometry}
% confusing to acrobat/firefox users
\PassOptionsToPackage{hidelinks}{hyperref}
\PassOptionsToPackage{english}{babel}
% frequently used packages
\RequirePackage{geometry}
\RequirePackage{float}
\RequirePackage{babel}
\RequirePackage{siunitx}
\RequirePackage{csquotes}
\RequirePackage{parskip}
\RequirePackage{fontspec}
\RequirePackage{tabularx}
\RequirePackage{booktabs}
\RequirePackage{needspace}
\RequirePackage{hyperref}
\RequirePackage{microtype}
\RequirePackage{smartref}
% font style
\setmainfont{TeX Gyre Schola}
\setmonofont[Scale=0.85]{JetBrainsMono Nerd Font}
% fix fonts w/ siunitx
\sisetup{detect-all = true}
% no indented paragraphs, just skip
\parindent=0mm
\bigskipamount=7mm
\medskipamount=4mm
% \maketitle format
\makeatletter
\let\@project\relax
\def\project#1{\def\@project{#1}}
\let\@organization\relax
\def\organization#1{\def\@organization{#1}}
\let\@version\relax
\def\version#1{\def\@version{#1}}
\def\@maketitle{
\centering
\vspace*{2in}
{
{
\bfseries\Huge
\strut\@title\strut
}\\% no parskip
{
\Large
\strut\@project\strut
}
}
\vspace{1in}
{
{
\def\and{\par}
\parskip=0.5ex
\strut\@author\strut
}
\vspace{2em}
{\strut\@organization\strut}
}
\vfill
\flushright
{
{
\strut{}Version \@version\strut
}
{
\strut\@date\strut
}
}
\vspace*{2in}
}
\makeatother
% always start with title page
\AtBeginDocument{
\clearpage
\begin{titlepage}
\maketitle
\thispagestyle{empty}
\end{titlepage}
}
|