summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/yb-book/yb-book.cls
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/yb-book/yb-book.cls')
-rw-r--r--macros/latex/contrib/yb-book/yb-book.cls341
1 files changed, 0 insertions, 341 deletions
diff --git a/macros/latex/contrib/yb-book/yb-book.cls b/macros/latex/contrib/yb-book/yb-book.cls
deleted file mode 100644
index 4b99e80514..0000000000
--- a/macros/latex/contrib/yb-book/yb-book.cls
+++ /dev/null
@@ -1,341 +0,0 @@
-% (The MIT License)
-%
-% Copyright (c) 2021-2022 Yegor Bugayenko
-%
-% Permission is hereby granted, free of charge, to any person obtaining a copy
-% of this software and associated documentation files (the 'Software'), to deal
-% in the Software without restriction, including without limitation the rights
-% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-% copies of the Software, and to permit persons to whom the Software is
-% furnished to do so, subject to the following conditions:
-%
-% The above copyright notice and this permission notice shall be included in all
-% copies or substantial portions of the Software.
-%
-% THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-% SOFTWARE.
-
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{yb-book}[2022/01/03 0.1.0 YB Branded Book Style]
-
-\RequirePackage{xkeyval}
-
-\makeatletter
-\newif\ifyb@draft
-\DeclareOptionX{draft}{\yb@drafttrue}
-\newif\ifyb@compact
-\DeclareOptionX{compact}{\yb@compacttrue}
-\newif\ifyb@manuscript
-\DeclareOptionX{manuscript}{\yb@manuscripttrue}
-\ProcessOptionsX
-\makeatother
-
-\makeatletter\ifyb@draft
- \PassOptionsToClass{11pt}{book}
- \PassOptionsToClass{oneside}{book}
-\else
- \ifyb@manuscript
- \PassOptionsToClass{12pt}{book}
- \PassOptionsToClass{oneside}{book}
- \else
- \PassOptionsToClass{11pt}{book}
- \PassOptionsToClass{twoside}{book}
- \fi
-\fi\makeatother
-
-\LoadClass{book}
-
-\RequirePackage{geometry}
- \geometry{paperwidth=6in, paperheight=9in, bindingoffset=0.25in, left=0.75in, right=0.75in, top=0.75in, bottom=1.25in}
- \makeatletter\ifyb@draft
- \geometry{a4paper, margin=1in, left=1.5in}
- \else
- \ifyb@manuscript
- \geometry{a4paper, margin=1.2in}
- \fi
- \fi\makeatother
-
-\RequirePackage[T1]{fontenc}
-\RequirePackage[utf8]{inputenc}
-\RequirePackage{anyfontsize}
-\RequirePackage{tikz}
- \usetikzlibrary{positioning}
- \usetikzlibrary{shapes}
- \usetikzlibrary{fit}
-\RequirePackage{chngcntr}
- \counterwithout{footnote}{chapter}
-\RequirePackage{lastpage}
-\RequirePackage{paralist}
-\RequirePackage{xcolor}
-\RequirePackage{graphicx}
-\RequirePackage{setspace}
- \setstretch{1.2}
- \makeatletter\ifyb@draft\setstretch{1.1}\fi\makeatother
- \makeatletter\ifyb@compact\setstretch{1.0}\fi\makeatother
- \makeatletter\ifyb@manuscript\setstretch{1.1}\fi\makeatother
-\RequirePackage{textcomp}
-\RequirePackage[inline]{enumitem}
- \setlist{nosep}
-\RequirePackage{float}
-\RequirePackage[normalem]{ulem}
-\RequirePackage{qrcode}
-\RequirePackage{wrapfig}
- \pagestyle{plain}
-\RequirePackage{xfp}
-\RequirePackage{soul} % in order to use \st{} to strikethrough
-\RequirePackage{xifthen}
-\RequirePackage[autostyle=try]{csquotes}
-
-\RequirePackage[indexing=cite,style=authoryear,natbib=true,maxnames=1,minnames=1,doi=false,url=false,isbn=false,isbn=false]{biblatex}
- \DeclareCiteCommand{\citetitle}
- {\boolfalse{citetracker}%
- \boolfalse{pagetracker}%
- \usebibmacro{prenote}}
- {\ifciteindex
- {\indexnames{labelname}}
- {}%
- \printfield[citetitle]{labeltitle}}
- {\multicitedelim}
- {\usebibmacro{postnote}}
- \DeclareCiteCommand*{\citetitle}
- {\boolfalse{citetracker}%
- \boolfalse{pagetracker}%
- \usebibmacro{prenote}}
- {\ifciteindex
- {\indexnames{labelname}}
- {}%
- \printfield[citetitle]{title}}
- {\multicitedelim}
- {\usebibmacro{postnote}}
-\RequirePackage{imakeidx}
- \renewbibmacro*{citeindex}{\indexnames{labelname}{}}
- \makeindex
- \indexsetup{othercode={\hyphenpenalty=10000}}
-
-\newenvironment{condensed}{%
- \begingroup\setstretch{1.0}%
- % This lsstyle is defined by 'letterspace' in microtype
- \lsstyle}{\endgroup}
-
-\makeatletter\ifyb@draft\else
- \RequirePackage[letterspace=-50]{microtype}
-\fi\makeatother
-
-\makeatletter\ifyb@manuscript
- \RequirePackage[tt=false,type1=true]{libertine}
-\fi\makeatother
-
-\RequirePackage[bottom,perpage,multiple]{footmisc}
- % see https://tex.stackexchange.com/questions/40072/incompatibility-between-footmisc-option-multiple-and-hyperref/62091#62091
- \makeatletter\let\yb@oldfootnote\footnote\makeatother
- \makeatletter\newcommand\yb@nexttoken\relax\makeatother
- \makeatletter\newcommand\yb@isfootnote{%
- \ifx\footnote\yb@nexttoken\textsuperscript{,}\fi}\makeatother
- \makeatletter\renewcommand\footnote[1]{%
- \yb@oldfootnote{#1}\futurelet\yb@nexttoken\yb@isfootnote}\makeatother
-
-\makeatletter
- \let\yb@oldsection\section
- \ifyb@draft
- \RequirePackage[medium]{titlesec}
- \else
- \RequirePackage[raggedright]{titlesec}
- \titlespacing{\section}{0in}{6pt}{6pt}[1in]
- \renewcommand\section{\newpage\yb@oldsection}
- \fi
-\makeatother
-
-\makeatletter\ifyb@compact
- \renewcommand\section{\vspace{2em}\yb@oldsection}
-\fi\makeatother
-
-\makeatletter\ifyb@draft
- \RequirePackage{fancyhdr}
- \pagestyle{fancy}
- \renewcommand\headrulewidth{0pt}
- \renewcommand\footrulewidth{0pt}
- \fancyhf{}
- \fancyhead[L,C,LO,CO]{}
- \fancyhead[R,RO]{
- \begin{textblock}{4}(11.5,1)
- \begin{tikzpicture}
- \node [color=gray, rotate=270, font=\ttfamily\scriptsize, text width=5in] at (0,0) {
- Copyright \textcopyright{} \the\year{} by \theauthor{}.
- All rights reserved. No part of the contents of this book may be
- reproduced or transmitted in any form or by any means without the
- written permission of the publisher.
- This particular manuscript is printed for
- \textbf{\thereviewer{}} and may be used only for one-time review. The
- manuscript has to be destroyed after the review.
- };
- \end{tikzpicture}
- \end{textblock}
- }
- \fancyfoot[C,CO]{\small\ttfamily page \#\thepage{} of \pageref{LastPage}}
-\fi\makeatother
-
-\renewcommand\maketitle{
- {\LARGE\textbf{\thetitle}}
- \\[1em]
- by \theauthor{}
- \\[4em]
- \ifx\thevolume\empty\else%
- Volume \thevolume{}\\
- \fi
- \ifx\thedate\empty\else%
- Rendered on \thedate{}
- \fi
- \ifx\theversion\empty\else%
- \\
- Ver. \theversion{}
- \fi
-}
-
-\makeatletter\newcommand\ybPrintTitlePage{
- \ifyb@draft\else
- \begin{titlepage}
- \ttfamily
- \vspace*{\fill}
- \noindent
- {\Huge\textbf{\thetitle}}
- \\[1em]
- by \theauthor{}
- \\[4em]
- \ifx\thevolume\empty\else%
- Volume \thevolume{}\\
- \fi
- \ifx\thedate\empty\else%
- \thedate{}
- \fi
- \ifx\thedate\empty\else%
- \\
- \theversion{}
- \fi
- \vspace*{\fill}
- \end{titlepage}
- \fi
-}\makeatother
-
-\makeatletter\newcommand\ybPrintTOC{
- \ifyb@draft\else
- \ifyb@compact\else\cleardoublepage\fi
- {\setstretch{0.7}\tableofcontents}
- \fi
-}\makeatother
-
-\makeatletter\newcommand\ybPrintIndex[1][Index]{
- \ifyb@draft\else
- \cleardoublepage
- {
- \setstretch{1.0}
- \small
- \addcontentsline{toc}{chapter}{#1}
- \printindex
- }
- \fi
-}\makeatother
-
-\newcommand\ybPrintIcons{%
- \ifdefempty{\theemail{}}{}{%
- \includegraphics[height=1em]{images/icon-email.pdf}%
- \theemail{}%
- }%
- \includegraphics[height=1em]{images/icon-twitter.pdf}%
- \includegraphics[height=1em]{images/icon-linkedin.pdf}%
- \includegraphics[height=1em]{images/icon-github.pdf}%
- \includegraphics[height=1em]{images/icon-instagram.pdf}%
- \includegraphics[height=1em]{images/icon-facebook.pdf}%
- \thesocial{}%
-}
-
-% quotes
-\RequirePackage{wrapfig}
-\RequirePackage{mdframed}
-\RequirePackage{changepage}
- \strictpagecheck
-\mdfdefinestyle{quoteodd}{backgroundcolor=black!0,
- leftmargin=6pt,rightmargin=0pt,
- innerleftmargin=6pt,innerrightmargin=0pt,
- innertopmargin=0pt,innerbottommargin=0pt,
- skipabove=0pt,skipbelow=0pt,
- linewidth=2pt,
- topline=false,bottomline=false,rightline=false}
-\mdfdefinestyle{quoteeven}{backgroundcolor=black!0,
- rightmargin=6pt,leftmargin=0pt,
- innerrightmargin=6pt,innerleftmargin=0pt,
- innertopmargin=0pt,innerbottommargin=0pt,
- skipabove=0pt,skipbelow=0pt,
- linewidth=2pt,
- topline=false,bottomline=false,leftline=false}
-\makeatletter\newcommand\ybQuote[3]{%
- \ifthenelse{\isempty{#3}}{}{
- \ifx\hfuzz#2\hfuzz%
- \index{#3}%
- \else%
- \index{#3, #2}%
- \fi%
- }%
- \def\yb@body{%
- \raggedright%
- \ifx\hfuzz#3\hfuzz%
- #1%
- \else%
- ``#1''\\\raggedleft---#2 #3%
- \fi%
- }
- \ifyb@draft%
- \begin{wrapfigure}{r}{0.4\textwidth}%
- \begin{mdframed}[style=quoteodd]%
- \yb@body%
- \end{mdframed}%
- \end{wrapfigure}%
- \else%
- \begin{wrapfigure}{o}[12pt]{0.4\textwidth}%
- \sffamily\checkoddpage%
- \ifoddpage%
- \begin{mdframed}[style=quoteodd]\yb@body\end{mdframed}%
- \else%
- \begin{mdframed}[style=quoteeven]\yb@body\end{mdframed}%
- \fi%
- \vspace{-12pt}
- \end{wrapfigure}%
- \fi%
-}\makeatother
-
-\makeatletter\newcommand\ybPrintBibliography{%
- \AtNextBibliography{\small}%
- \raggedright%
- \ifyb@manuscript%
- \setlength\bibitemsep{0pt}%
- \newpage%
- \begin{multicols}{2}{\setstretch{1.0}\printbibliography}\end{multicols}
- \else
- \printbibliography
- \fi
-}\makeatother
-
-\AtBeginDocument{%
- \raggedbottom%
- \setlength\topskip{0mm}%
- \setlength\parindent{0pt}%
- \setlength\parskip{6pt}%
- \interfootnotelinepenalty=10000%
-}
-
-\newcommand*\thetitle{\textbackslash{}thetitle}
-\newcommand*\thevolume{}
-\newcommand*\thedate{}
-\newcommand*\theemail{\textbackslash{}theemail}
-\newcommand*\thesocial{\textbackslash{}thesocial}
-\newcommand*\theversion{\textbackslash{}theversion}
-\newcommand*\theauthor{\textbackslash{}theauthor}
-\newcommand*\thereviewer{\textbackslash{}thereviewer}
-\newcommand*\theyear{\textbackslash{}theyear}
-\newcommand*\theprice{\textbackslash{}theprice}
-
-\endinput