Initial commit
This commit is contained in:
268
lib/abdokoma.sty
Normal file
268
lib/abdokoma.sty
Normal file
@@ -0,0 +1,268 @@
|
||||
% ----------------------------------------------------------------------- %
|
||||
% File: koma.sty KOMA customizations %
|
||||
% Author: Abdó Roig-Maranges <abdo.roig@gmail.com> 2012-2013 %
|
||||
% ----------------------------------------------------------------------- %
|
||||
|
||||
\NeedsTeXFormat{LaTeX2e}
|
||||
\ProvidesPackage{abdokoma}
|
||||
|
||||
|
||||
|
||||
% ----------------------------------------------------------------------- %
|
||||
% Layout %
|
||||
% ----------------------------------------------------------------------- %
|
||||
|
||||
% Linespread
|
||||
\newcommand{\widelinespread}{\linespread{1.3}}
|
||||
\newcommand{\regularlinespread}{\linespread{1}}
|
||||
|
||||
|
||||
|
||||
% ----------------------------------------------------------------------- %
|
||||
% Options %
|
||||
% ----------------------------------------------------------------------- %
|
||||
|
||||
% Hooks
|
||||
\providecommand{\hyperrefhook}{}
|
||||
\providecommand{\sectioninghook}{}
|
||||
|
||||
|
||||
% Draft option
|
||||
\DeclareOption{draft}{
|
||||
\ExecuteOptions{regularspread}
|
||||
\PassOptionsToPackage{showkeys}{draftools}
|
||||
}
|
||||
|
||||
|
||||
% Line spread options
|
||||
\DeclareOption{widespread}{
|
||||
\widelinespread
|
||||
}
|
||||
\DeclareOption{regularspread}{
|
||||
\regularlinespread
|
||||
}
|
||||
|
||||
|
||||
% Hyperref option
|
||||
\DeclareOption{hyperref}{
|
||||
\PassOptionsToPackage{final}{hyperref}
|
||||
\renewcommand{\hyperrefhook}{%
|
||||
\hypersetup{%
|
||||
pdfencoding=auto,%
|
||||
unicode,%
|
||||
psdextra,%
|
||||
pdftitle={\@title},%
|
||||
pdfauthor={\@author},%
|
||||
colorlinks,%
|
||||
citecolor=citecolor,%
|
||||
filecolor=filecolor,%
|
||||
linkcolor=linkcolor,%
|
||||
urlcolor=urlcolor%
|
||||
}%
|
||||
}
|
||||
}
|
||||
|
||||
\DeclareOption{nohyperref}{
|
||||
\PassOptionsToPackage{draft}{hyperref}
|
||||
\renewcommand{\hyperrefhook}{}
|
||||
}
|
||||
|
||||
% Sectioning depth (tocdepth3 means paragraph is depth 3, after section and
|
||||
% subsection)
|
||||
\DeclareOption{tocdepth3}{
|
||||
\renewcommand{\sectioninghook}{
|
||||
\setupsectioning{3}
|
||||
\@ifclassloaded{scrreprt}{\setupchapterpart}{}
|
||||
\@ifclassloaded{scrbook}{\setupchapterpart}{}
|
||||
}
|
||||
}
|
||||
|
||||
\DeclareOption{tocdepth2}{
|
||||
\renewcommand{\sectioninghook}{
|
||||
\setupsectioning{2}
|
||||
\@ifclassloaded{scrreprt}{\setupchapterpart}{}
|
||||
\@ifclassloaded{scrbook}{\setupchapterpart}{}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
% Defaults
|
||||
\ExecuteOptions{tocdepth3}
|
||||
\ExecuteOptions{hyperref}
|
||||
\ExecuteOptions{regularspread}
|
||||
|
||||
|
||||
% Process options of the package.
|
||||
\ProcessOptions
|
||||
|
||||
% Delay options to be processed.
|
||||
\AtBeginDocument{\setupheader}
|
||||
|
||||
|
||||
|
||||
% ----------------------------------------------------------------------- %
|
||||
% Package loading %
|
||||
% ----------------------------------------------------------------------- %
|
||||
|
||||
% NOTE: without etex, tikz + beamer complain about not enough room for dimendions.
|
||||
\RequirePackage{etex} % etex stuff
|
||||
\RequirePackage{iftex} % conditionals on tex engine
|
||||
\RequirePackage{ifpdf} % conditional on pdf output
|
||||
|
||||
% NOTE: needed on texlive 2016 due to some packages not following recent lualatex changes.
|
||||
\ifLuaTeX
|
||||
\RequirePackage{luatex85}
|
||||
\fi
|
||||
|
||||
\RequirePackage{babel} % language support
|
||||
\RequirePackage[nodayofweek]{datetime} % date formating
|
||||
|
||||
%\RequirePackage{etoolbox} % e-tex tools
|
||||
%\RequirePackage{ifthen} % Make decisions inside latex
|
||||
%\RequirePackage{calc} % Arithmetic with lengths
|
||||
%\RequirePackage{xparse} % Extended command definitions
|
||||
%\RequirePackage{xkeyval} % Use of Key value pairs
|
||||
|
||||
% page layout
|
||||
\RequirePackage{geometry} % Geometry of the page
|
||||
\RequirePackage[automark]{scrpage2} % Customizing headings
|
||||
\RequirePackage{titletoc} % Tweaking TOC
|
||||
|
||||
% bibliography
|
||||
\RequirePackage[autostyle]{csquotes} % quotation (required by biblatex).
|
||||
\RequirePackage[ % Bibliography
|
||||
backend=biber,
|
||||
style=numeric,
|
||||
url=false,
|
||||
doi=true,
|
||||
eprint=true
|
||||
]{biblatex}
|
||||
|
||||
% biblatex tweaks
|
||||
\renewbibmacro{in:}{}
|
||||
|
||||
% ams
|
||||
\RequirePackage{amsmath} % AMS stuff
|
||||
|
||||
% graphics and color
|
||||
\RequirePackage{xcolor} % provides color
|
||||
\RequirePackage{graphicx} % Include external graphics
|
||||
|
||||
\ifpdf
|
||||
\RequirePackage{tikz} % Graphics
|
||||
\usetikzlibrary{matrix}
|
||||
\usetikzlibrary{calc}
|
||||
\usetikzlibrary{decorations.markings}
|
||||
\usetikzlibrary{cd}
|
||||
\tikzcdset{arrow style=tikz}
|
||||
\fi
|
||||
|
||||
% personal
|
||||
\RequirePackage{abdocolor} % Custom colors
|
||||
\RequirePackage{abdoalias} % My aliases
|
||||
\RequirePackage{abdofonts} % My font settings
|
||||
\RequirePackage{abdothms} % My theorems
|
||||
\RequirePackage{draftools} % Various draft tools
|
||||
|
||||
% typesetting tools
|
||||
\RequirePackage{url} % provides URL typesetting
|
||||
|
||||
% NOTE: hyperref must load last, or it breaks showkeys...
|
||||
\RequirePackage{hyperref}
|
||||
|
||||
% NOTE: but cleveref must load after hyperref
|
||||
\RequirePackage[ % Smart references
|
||||
noabbrev,
|
||||
capitalise
|
||||
]{cleveref}
|
||||
|
||||
|
||||
|
||||
% ----------------------------------------------------------------------- %
|
||||
% Visual appearence %
|
||||
% ----------------------------------------------------------------------- %
|
||||
|
||||
% change emph
|
||||
\let\emphold\emph
|
||||
\renewcommand{\emph}[1]{\textbf{\color{emphcolor}#1}}
|
||||
|
||||
|
||||
\newcommand{\setupheader}{%
|
||||
\setkomafont{pageheadfoot}{\sffamily}
|
||||
\pagestyle{scrheadings}%
|
||||
\setheadsepline{0.0pt}%
|
||||
\ihead{\headmark} \chead{} \ohead{}%
|
||||
%\ifoot{} \cfoot{} \ofoot{}%
|
||||
}
|
||||
|
||||
|
||||
\newcommand{\setupsectioning}[1]{
|
||||
% section colors
|
||||
\addtokomafont{section}{\color{section1color}}
|
||||
\addtokomafont{subsection}{\color{section2color}}
|
||||
\addtokomafont{subsubsection}{\color{section3color}}
|
||||
\addtokomafont{paragraph}{\color{paragraphcolor}}
|
||||
\pagecolor{backgroundcolor}
|
||||
\color{textcolor}
|
||||
|
||||
\setcounter{tocdepth}{4}
|
||||
|
||||
\renewcommand*{\toclevel@section}{1}
|
||||
\renewcommand*{\toclevel@subsection}{2}
|
||||
|
||||
\def\sectioning@argument{#1}
|
||||
\if\sectioning@argument2
|
||||
\def\sectioning@paragraphmargin{2.5em}
|
||||
\renewcommand*{\toclevel@paragraph}{2}
|
||||
\else
|
||||
\def\sectioning@paragraphmargin{4.5em}
|
||||
\renewcommand*{\toclevel@paragraph}{3}
|
||||
\fi
|
||||
|
||||
% table of contents style (titletoc)
|
||||
\titlecontents{section}[1em]{\bfseries\sffamily\vspace*{1ex}}{\thecontentslabel. }
|
||||
{}{\titlerule*[1pc]{}\thecontentspage}[]
|
||||
|
||||
\titlecontents{subsection}[2.5em]{}{\sffamily\thecontentslabel. }
|
||||
{}{\ \titlerule*[1em]{$\cdot$}\ \thecontentspage}[]
|
||||
|
||||
\titlecontents*{paragraph}[\sectioning@paragraphmargin]{\sffamily\itshape\small}{\thecontentslabel. }
|
||||
{}{\, \thecontentspage}[\hspace*{0.5em} -- \hspace*{0.5em}]
|
||||
}
|
||||
|
||||
|
||||
\newcommand{\setupchapterpart}{
|
||||
% chapter and part colors
|
||||
\addtokomafont{part}{\color{chaptercolor}}
|
||||
\addtokomafont{chapter}{\color{chaptercolor}}
|
||||
|
||||
% table of contents style
|
||||
\renewcommand*{\toclevel@part}{-1}
|
||||
\titlecontents{part}[0pt]{\bfseries\sffamily\Large\vspace*{1ex}}{\thecontentslabel. }
|
||||
{}{}[]
|
||||
|
||||
\renewcommand*{\toclevel@chapter}{0}
|
||||
\titlecontents{chapter}[0pt]{\bfseries\sffamily\vspace*{1ex}}{\thecontentslabel. }
|
||||
{}{\titlerule*[1pc]{}\thecontentspage}[]
|
||||
}
|
||||
|
||||
|
||||
|
||||
% ----------------------------------------------------------------------- %
|
||||
% Miscelania %
|
||||
% ----------------------------------------------------------------------- %
|
||||
|
||||
% Unnumbereds footnotes
|
||||
\def\unfootnote{\xdef\@thefnmark{}\@footnotetext}
|
||||
|
||||
|
||||
% Shortcut to select a tex-title and an alternate string to embed in pdf's
|
||||
\newcommand{\texorpdf}[2]{\texorpdfstring{#1}{#2}}
|
||||
|
||||
|
||||
|
||||
% ----------------------------------------------------------------------- %
|
||||
% Run hooks %
|
||||
% ----------------------------------------------------------------------- %
|
||||
\hyperrefhook
|
||||
\sectioninghook
|
||||
Reference in New Issue
Block a user