Commit 3f176539 authored by Johnson, Seth R.'s avatar Johnson, Seth R.
Browse files

Separate styling from placement

This allows the style to be reused for sphinx-generated content.
parent 27852264
Loading
Loading
Loading
Loading
+140 −0
Original line number Diff line number Diff line
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% File  : ornltm/ornltm/ornltm-style.sty
% Author: Seth R Johnson
% Date  : Sat Oct 13 13:04:10 2018
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesPackage{ornltm-style}[2018/10/13 package ORNL Technical Memorandum style]

\ProcessOptions\relax

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% GEOMETRY
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\RequirePackage{geometry}
\geometry{margin=1in,footskip=.75in}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% FONTS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% ams math must be loaded before txfonts
\RequirePackage{amsmath}

% Use Times for math font and text font.
\RequirePackage[T1]{fontenc}
\RequirePackage{txfonts}

% Bold math must be loaded after Times font
\RequirePackage{bm}

% Bold sans-serif
\newcommand{\textbsf}[1]{{\bfseries\sffamily #1}}
% Bold italics
\newcommand{\textbi}[1]{{\bfseries\itshape #1}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% COLORS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\RequirePackage{color} % colored fonts and boxes

% ORNL official green color
\definecolor{ornlgreen}{RGB}{0,121,52}

% Add pretty link colors if hyperref is loaded
\@ifpackageloaded{hyperref}{\hypersetup{
	colorlinks,
  linkcolor=[rgb]{0.01,0.05,0.1},
	citecolor=[rgb]{0.780,0.647,0.258},
	urlcolor=[rgb]{0.325,0.494,0.658}
}}{}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% LINE SPACING
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Do not indent paragraphs
% Note: do NOT use the parskip package: it breaks tocloft; the parfill option
% also breaks \hfill!

\setlength\parskip{0.5\baselineskip \@plus 0.25\baselineskip \@minus 0.25\baselineskip}
\setlength\parindent\z@
\setlength\partopsep\z@

% Update spacing in lists.
\def\@listI{\leftmargin\leftmargini
   \topsep\z@ \parsep\parskip \itemsep\z@}
\let\@listi\@listI
\@listi
     
\def\@listii{\leftmargin\leftmarginii
   \labelwidth\leftmarginii\advance\labelwidth-\labelsep
   \topsep\z@ \parsep\parskip \itemsep\z@}
     
\def\@listiii{\leftmargin\leftmarginiii
    \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
    \topsep\z@ \parsep\parskip \itemsep\z@}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% TABLE OF CONTENTS STYLING
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\RequirePackage{tocloft} % table of contents styling
      
% Make the contents, figure, and table titles uppercase and centered
\renewcommand\cfttoctitlefont{\noindent\hspace*{\fill}\bfseries\MakeUppercase}
\renewcommand\cftloftitlefont{\noindent\hspace*{\fill}\bfseries\MakeUppercase}
\renewcommand\cftlottitlefont{\noindent\hspace*{\fill}\bfseries\MakeUppercase}
\renewcommand\cftaftertoctitle{\hspace*{\fill}}
\renewcommand\cftafterloftitle{\hspace*{\fill}}
\renewcommand\cftafterlottitle{\hspace*{\fill}}
% Use plain font style and regular size
\renewcommand\cftsecfont{}
% Add a dot after section numbers
\renewcommand\cftsecaftersnum{.}
% Squish section lines together
\setlength\cftbeforesecskip{0pt}
% Add leaders to all sections and subsections in the TOC.
\renewcommand\cftsecleader{\cftdotfill{\cftdotsep}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% TITLE STYLES 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\RequirePackage{titlesec} % title modification: use text size
      
% Show five levels of depth in title labels
\setcounter{secnumdepth}{5} 
            
% You may need to use the \texorpdfstring when using hyperref and
% unusual titles.
\titleformat{\section}{\centering\bf}{\thetitle.}{1ex}{\MakeUppercase}[]
\titleformat{\subsection}{\bf}{\thetitle}{1ex}{\MakeUppercase}[]
\titleformat{\subsubsection}{\bf}{\thetitle}{1ex}{\MakeUppercase}[]
\titleformat{\paragraph}{\bf}{\thetitle}{1ex}{}[]
\titleformat{\subparagraph}{\bf\itshape}{\relax}{0pt}{}[]

% Update spacing to account for our custom parskip.
\titlespacing{\section}{\z@}{\parskip}{\z@}
\titlespacing{\subsection}{\z@}{\parskip}{\z@}
\titlespacing{\subsubsection}{\z@}{0.5\parskip}{\z@}
\titlespacing{\paragraph}{\z@}{0.5\parskip}{\z@}
\titlespacing{\subparagraph}{\z@}{0.5\parskip}{\z@}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% CAPTION STYLES
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\RequirePackage[font=bf,labelsep=period]{caption}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\endinput

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% end of ornltm/ornltm/ornltm-style.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+14 −102
Original line number Diff line number Diff line
% !TEX root = ornl-template-example.tex
% !TEX root = ../example/ornl-template-example.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% File  : Exnihilo/environment/latex/ornltm.cls
% File  : ornltm.cls
% Author: Seth R Johnson
% Date  : Fri Sep 16 17:09:22 2016
%
@@ -8,105 +8,27 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesClass{ornltm}[2016/09/16 ORNL Technical Memorandum class]
\ProvidesClass{ornltm}[2018/10/13 ORNL Technical Memorandum class]

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% GEOMETRY
% OPTIONS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\ProcessOptions\relax
\LoadClass[11pt,letterpaper]{article}
\RequirePackage[margin=1in,footskip=.75in]{geometry}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% FONTS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% ams math must be loaded before txfonts
\RequirePackage{amsmath}

% Use Times for math font and text font.
\RequirePackage[T1]{fontenc}
\RequirePackage{txfonts}

% Bold math must be loaded after Times font
\RequirePackage{bm}

% Bold sans-serif
\newcommand{\textbsf}[1]{{\bfseries\sffamily #1}}
% Bold italics
\newcommand{\textbi}[1]{{\bfseries\itshape #1}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% STYLING
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\RequirePackage{color} % colored fonts and boxes
\RequirePackage{wallpaper} % background on cover page
\RequirePackage{fancyhdr} % headers and footers
\RequirePackage{emptypage} % hide footers on blank pages
\RequirePackage[font=bf,labelsep=period]{caption}
\RequirePackage{titlesec} % title modification: use text size
\RequirePackage[pdfusetitle]{hyperref} % url and links in PDF
\RequirePackage{tocloft} % table of contents styling
\RequirePackage[shortcuts,acronym,nonumberlist,nogroupskip,nopostdot]{glossaries} % acronym support

% ORNL official green color
\definecolor{ornlgreen}{RGB}{0,121,52}

% Email URL command
\newcommand{\email}[1]{\href{mailto:#1}{#1}}

% Add pretty link colors
\hypersetup{
	colorlinks,
  linkcolor=[rgb]{0.01,0.05,0.1},
	citecolor=[rgb]{0.780,0.647,0.258},
	urlcolor=[rgb]{0.325,0.494,0.658}
}

% Do not indent paragraphs
% Note: do NOT use the parskip package: it breaks tocloft; the parfill option
% also breaks \hfill!

\setlength\parskip{0.5\baselineskip \@plus 0.25\baselineskip \@minus 0.25\baselineskip}
\setlength\parindent\z@
\setlength\partopsep\z@

% Update spacing in lists.
\def\@listI{\leftmargin\leftmargini
   \topsep\z@ \parsep\parskip \itemsep\z@}
\let\@listi\@listI
\@listi
     
\def\@listii{\leftmargin\leftmarginii
   \labelwidth\leftmarginii\advance\labelwidth-\labelsep
   \topsep\z@ \parsep\parskip \itemsep\z@}
     
\def\@listiii{\leftmargin\leftmarginiii
    \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
    \topsep\z@ \parsep\parskip \itemsep\z@}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% TITLE STYLES 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Show five levels of depth in title labels
\setcounter{secnumdepth}{5} 
            
% You may need to use the \texorpdfstring when using hyperref and
% unusual titles.
\titleformat{\section}{\centering\bf}{\thetitle.}{1ex}{\MakeUppercase}[]
\titleformat{\subsection}{\bf}{\thetitle}{1ex}{\MakeUppercase}[]
\titleformat{\subsubsection}{\bf}{\thetitle}{1ex}{\MakeUppercase}[]
\titleformat{\paragraph}{\bf}{\thetitle}{1ex}{}[]
\titleformat{\subparagraph}{\bf\itshape}{\relax}{0pt}{}[]

% Update spacing to account for our custom parskip.
\titlespacing{\section}{\z@}{\parskip}{\z@}
\titlespacing{\subsection}{\z@}{\parskip}{\z@}
\titlespacing{\subsubsection}{\z@}{0.5\parskip}{\z@}
\titlespacing{\paragraph}{\z@}{0.5\parskip}{\z@}
\titlespacing{\subparagraph}{\z@}{0.5\parskip}{\z@}
% Load document style
\RequirePackage{ornltm-style}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% VARIABLES
@@ -254,6 +176,11 @@ treated as a draft.}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% OSTI
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Email URL command
\newcommand{\email}[1]{\href{mailto:#1}{#1}}

% Create page
\def\makeostipage{%
\begin{titlepage}
  \centering\sffamily\small
@@ -369,7 +296,7 @@ under contract DE-AC05-00OR22725

\newcommand\frontmatter{%
  \@mainmatterfalse%
  \def\and{\\}
  \renewcommand\and{\\}
  \makecoverpage%
  \makeostipage%
  \maketitlepage%
@@ -399,22 +326,6 @@ under contract DE-AC05-00OR22725
% TABLE OF CONTENTS, LIST OF FIGURES, LIST OF TABLES
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Make the contents, figure, and table titles uppercase and centered
\renewcommand\cfttoctitlefont{\noindent\hspace*{\fill}\bfseries\MakeUppercase}
\renewcommand\cftloftitlefont{\noindent\hspace*{\fill}\bfseries\MakeUppercase}
\renewcommand\cftlottitlefont{\noindent\hspace*{\fill}\bfseries\MakeUppercase}
\renewcommand\cftaftertoctitle{\hspace*{\fill}}
\renewcommand\cftafterloftitle{\hspace*{\fill}}
\renewcommand\cftafterlottitle{\hspace*{\fill}}
% Use plain font style and regular size
\renewcommand\cftsecfont{}
% Add a dot after section numbers
\renewcommand\cftsecaftersnum{.}
% Squish section lines together
\setlength\cftbeforesecskip{0pt}
% Add leaders to all sections and subsections in the TOC.
\renewcommand\cftsecleader{\cftdotfill{\cftdotsep}}

% Clear the page before TOC if it is in the ``front matter''
\AtBeginDocument{%
\let\@origcfttoc\tableofcontents
@@ -516,6 +427,7 @@ under contract DE-AC05-00OR22725
  \let\section\@appendixsection
}

\endinput
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% end of Exnihilo/environment/latex/ornltm.cls
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%