summaryrefslogtreecommitdiff
path: root/bio.cls
diff options
context:
space:
mode:
Diffstat (limited to 'bio.cls')
-rw-r--r--bio.cls163
1 files changed, 163 insertions, 0 deletions
diff --git a/bio.cls b/bio.cls
index e69de29..1567990 100644
--- a/bio.cls
+++ b/bio.cls
@@ -0,0 +1,163 @@
+\ProvidesClass{bio}
+
+% --- basic ---------------------------------------------------------------------------------------
+
+% required: 10 to 12 point font
+
+\LoadClass[11pt, twoside, openright]{report}
+\RequirePackage[letterpaper, margin=1in]{geometry} % 1 inch margins required
+\RequirePackage{setspace}
+\RequirePackage{afterpage}
+\RequirePackage{xcolor}
+\RequirePackage{array}
+
+% --- layout --------------------------------------------------------------------------------------
+
+\let\stdchapter\chapter
+\renewcommand\chapter{\cleardoublepage\stdchapter}
+
+\let\stdsection\section
+\renewcommand\section{\clearpage\stdsection}
+
+\RequirePackage{afterpage}
+
+\newcommand\blankpage{%
+ \null
+ \thispagestyle{empty}%
+ \addtocounter{page}{-1}%
+ \newpage}
+
+% --- floats --------------------------------------------------------------------------------------
+
+% force all floats to center (see https://tex.stackexchange.com/a/53383)
+\makeatletter
+\g@addto@macro\@floatboxreset{\centering}
+\makeatother
+
+% --- headers -------------------------------------------------------------------------------------
+
+% required: page number in upper right, nothing else
+
+\RequirePackage{fancyhdr}
+\fancypagestyle{plain}{
+ \fancyhf{}
+ \fancyhead[R]{\thepage}
+ \fancyfoot{}
+ \renewcommand{\headrulewidth}{0pt}
+ \renewcommand{\footrulewidth}{0pt}
+}
+\pagestyle{plain}{\rhead{\thepage}}
+
+\setlength{\headheight}{14pt}
+
+% --- text ----------------------------------------------------------------------------------------
+
+% text
+\RequirePackage[utf8]{inputenc}
+\setlength\parindent{0pt}
+\setlength{\parskip}{1em}
+\renewcommand{\familydefault}{\sfdefault}
+
+\newcommand{\RomanNumeral}[1]{\textrm{\uppercase\expandafter{\romannumeral #1\relax}}}
+\RequirePackage{etoolbox}
+\AtBeginEnvironment{verse}{\singlespacing}
+
+\newenvironment{dquote}
+ {
+ \singlespacing
+ \it
+ }
+ {
+ }
+
+\newcommand{\dsignature}[1]{\hfill \normalfont{-- #1}}
+
+% --- tables --------------------------------------------------------------------------------------
+
+\BeforeBeginEnvironment{table}{\clearpage}
+\AfterEndEnvironment{table}{\clearpage}
+
+% --- lists ---------------------------------------------------------------------------------------
+
+\RequirePackage[shortlabels]{enumitem}
+\setlist[enumerate, 1]{nosep}
+\setlist[enumerate, 2]{nosep, topsep=-5ex}
+\setlist[enumerate, 3]{nosep, topsep=-5ex}
+\setlist[enumerate, 4]{nosep, topsep=-5ex}
+\newenvironment{denumerate}
+ {
+ \begin{enumerate}
+ \singlespacing
+ }
+ {
+ \end{enumerate}
+ }
+
+\setlist[itemize, 1]{nosep}
+\setlist[itemize, 2]{nosep, topsep=-5ex}
+\setlist[itemize, 3]{nosep, topsep=-5ex}
+\setlist[itemize, 4]{nosep, topsep=-5ex}
+\newenvironment{ditemize}
+ {
+ \begin{itemize}
+ \renewcommand{\labelitemi}{$\rightarrow$}
+ \singlespacing
+ }
+ {
+ \end{itemize}
+ }
+
+% --- graphics ------------------------------------------------------------------------------------
+
+\RequirePackage{graphics}
+\RequirePackage{graphicx}
+\RequirePackage{epsfig}
+\RequirePackage{epstopdf}
+\RequirePackage{etoc}
+\RequirePackage{tikz}
+\RequirePackage{pdflscape} % provides \begin{landscape}; \end{landscape}
+
+\BeforeBeginEnvironment{figure}{\clearpage}
+\AfterEndEnvironment{figure}{\clearpage}
+
+% for some reason this doesn't work...
+\newenvironment{lsfigure}
+ {
+ \begin{landscape}
+ \begin{figure}
+ }
+ {
+ \end{landscape}
+ \end{figure}
+ }
+
+% --- math ----------------------------------------------------------------------------------------
+
+\RequirePackage{amssymb}
+\RequirePackage{amsmath}
+\RequirePackage[cm]{sfmath}
+\RequirePackage{bm} % bold mathtype
+\DeclareMathOperator{\me}{e}
+
+% --- misc / ? ------------------------------------------------------------------------------------
+
+\RequirePackage[nottoc]{tocbibind}
+\RequirePackage{fixltx2e}
+\RequirePackage{pdfpages}
+\RequirePackage[utf8]{inputenc}
+
+% --- hyperref ------------------------------------------------------------------------------------
+
+\RequirePackage[colorlinks=true, linkcolor=black, urlcolor=blue, citecolor=black,
+anchorcolor=black]{hyperref}
+\RequirePackage[all]{hypcap} % helps hyperref work properly
+
+\renewcommand{\chapterautorefname}{Chapter}
+\renewcommand{\sectionautorefname}{Section}
+\renewcommand{\subsectionautorefname}{Section}
+\renewcommand{\subsubsectionautorefname}{Section}
+
+% --- bibliography --------------------------------------------------------------------------------
+
+\RequirePackage[backend=biber, natbib=true, sorting=none, maxbibnames=99, isbn=false]{biblatex}
+\bibliography{bibliography}