-
Notifications
You must be signed in to change notification settings - Fork 0
/
preamble.sty
153 lines (119 loc) · 4.45 KB
/
preamble.sty
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
\ProvidesPackage{preamble}
\let\proof\relax
\let\endproof\relax
\RequirePackage{ifthen} % for optional arguments, etc
\RequirePackage[pdftex]{graphicx}
\RequirePackage{amsthm}
\RequirePackage{amsmath}
\RequirePackage{amsfonts}
\RequirePackage{amssymb}
\RequirePackage{nicefrac,xfrac}
\RequirePackage{mathtools}
\RequirePackage{commath}
\RequirePackage{soul}
\RequirePackage{bbm} % math font for 1 vector
\RequirePackage{enumerate}
\RequirePackage{enumitem} % added to get alpha enumerated lists
\RequirePackage{arydshln} % dashed lines in arrays...
\RequirePackage{calrsfs} % fancy curly fonts...
\RequirePackage{scrextend} % block indents...
\RequirePackage{xcolor} % colours!
\RequirePackage{booktabs} % Horizontal rules in tables
\RequirePackage{siunitx} % Unit formatting (m/s, etc)
% \RequirePackage{tikz-cd} % drawing...
% \RequirePackage{quiver} % drawing graphs supported by website https://q.uiver.app/
\RequirePackage[sort,compress]{cite}
\RequirePackage{subdepth} % fix subscript heights when no superscript present
% \RequirePackage{lmodern}
\RequirePackage[font=footnotesize,labelfont=bf]{caption}
\RequirePackage{subcaption}
\RequirePackage{listings}
% \RequirePackage[parfill]{parskip}
\RequirePackage{float}
% \RequirePackage{algorithmicx}
\RequirePackage{algorithm}
% \algrenewcommand\algorithmicindent{0.5em}%
\RequirePackage[noend]{algpseudocode}
% N.B. HYPERREF MUST BE THE LAST PACKAGE LOADED; ADD ADDITIONAL PKGS ABOVE
\usepackage[pdftex,pagebackref=false]{hyperref} % with basic options
%\usepackage[pdftex,pagebackref=true]{hyperref}
% N.B. pagebackref=true provides links back from the References to the body text. This can cause trouble for printing.
\DeclareMathOperator*{\argmax}{arg\,max}
\DeclareMathOperator*{\argmin}{arg\,min}
\DeclarePairedDelimiter{\ceil}{\lceil}{\rceil}
\DeclarePairedDelimiter{\floor}{\lfloor}{\rfloor}
\theoremstyle{plain}
\setlength{\topsep}{3pt}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{lem}{Lemma}[theorem]
\newtheorem{lemma}{Lemma}[theorem]
\newtheorem{cor}{Corollary}[theorem]
\newtheorem{corollary}{Corollary}[theorem]
\newtheorem{conj}{Conjecture}[theorem]
\newtheorem{claim}{Claim}[theorem]
\newtheorem{observation}{Observation}[theorem]
\newtheorem{assumption}{Assumption}[theorem]
\newtheorem{proposition}{Proposition}[section]
\newtheorem{prop}{Proposition}[section]
\newtheorem{algo}{Algorithm}[section]
\newtheorem{rem}{Remark}[section]
\newtheorem{remark}{Remark}[section]
\newtheorem{definition}{Definition}[section]
\newtheorem{defn}{Definition}[section]
\newtheorem{problem}{Problem}[section]
\newtheorem{prob}{Problem}[section]
\newtheorem{subprob}{Sub Problem}[prob]
\newtheorem{sol}{Solution}[section]
\newtheorem*{rem*}{Remark}
\newcommand{\ASnote}[1]{{\color{blue}#1}}
\newcommand{\BGnote}[1]{{\color{teal}#1}}
% Figure labelling options
% \RequirePackage{alphalph} \renewcommand*{\thesubfigure}{\alphalph{\value{subfigure}}}%
%%% numeric
% \renewcommand*{\thesubfigure}{(\arabic{subfigure})}
%%% prefixed with main fig number
%\renewcommand*{\thesubfigure}{(\thefigure.\arabic{subfigure})}
\newcommand{\blue}[1]{{\color{blue} #1}}
\newcommand{\red}[1]{{\color{red} #1}}
\newcommand{\imp}[1]{{\color{red} #1}}
\newcommand{\huh}[1]{{\color{teal} #1}}
\newcommand{\Eg}{\text{E.g.,}~}
\newcommand{\eg}{\text{e.g.,}~}
\newcommand{\ie}{\text{i.e.,}~}
\newcommand{\etc}{etc.}
\newcommand{\real}{\mathbb{R}}
\newcommand{\prb}{\mathbb{P}}
\newcommand{\E}{\mathbb{E}}
\newcommand{\rth}{^{\text{th}}}
\newcommand{\inc}{{\color{red}{[INC]}}}
\newcommand{\rpm}{\raisebox{.2ex}{$\scriptstyle\pm$}}
\newcommand{\rmp}{\raisebox{.2ex}{$\scriptstyle\mp$}}
\newcommand{\q}{\paragraph{Question:}}
\newcommand{\unk}[1][]{%
\ifthenelse{ \equal{#1}{} }
{\red{$^{\emph{[Citation?]~}}$}}
{\red{$^{\emph{[#1?]~}}$}}
}
\newcommand\oprocendsymbol{\hbox{$\bullet$}}
\newcommand\oprocend{\relax\ifmmode\else\unskip\hfill\fi\oprocendsymbol}
\def\eqoprocend{\tag*{$\bullet$}}
\newcommand{\separator}{{\center{
\rule{1.0cm}{1pt}~\rule{0.2cm}{6pt}~\rule{1.0cm}{1pt}\\
}}}
\newcommand{\referee}[1]{\;
\begin{minipage}[t]{.95\textwidth}
``{\color{blue} #1}''
\end{minipage}\medskip
}
\newcommand{\res}{\textbf{Response: }}
% Fix the mathcal alphabet to something more readable....
\DeclareMathAlphabet{\mathcal}{OMS}{cmsy}{m}{n}
\@ifundefined{ifproofing} {%
\newif\ifproofing
}{%
} % \proofing defined
\ifproofing
\newcommand{\flag}[1]{\red{\vspace{4mm}\textsc{{#1}}\\\vspace{4mm}}}
\else
\newcommand{\flag}[1]{}
\fi