summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Krupcale <mkrupcale@matthewkrupcale.com>2019-03-12 22:56:35 -0400
committerMatthew Krupcale <mkrupcale@matthewkrupcale.com>2019-03-14 16:45:47 -0400
commit7282cc8ecdd9dee8b7c94523f76d3add2d8ec318 (patch)
tree03fdd2ecaaff848b8f21aa7f72b2563ab97dad37
parent3f942daf19da45d9b8097dd9c4e44e2d09f6848a (diff)
downloadbuild2-style-generate-latex.tar.gz
build2-style-generate-latex.tar.xz
build2-style-generate-latex.zip
Add LaTeX prologues and epilogues.generate-latex
* doc-{prologue,epilogue}: Prologue and epilogue for build2 LaTeX documentation. * man-{prologue,epilogue}: Prologue and epilogue for build2 LaTeX manual pages.
-rw-r--r--doc-epilogue.tex1
-rw-r--r--doc-prologue.tex133
-rw-r--r--man-epilogue.tex11
-rw-r--r--man-prologue.tex81
4 files changed, 226 insertions, 0 deletions
diff --git a/doc-epilogue.tex b/doc-epilogue.tex
new file mode 100644
index 0000000..6b47932
--- /dev/null
+++ b/doc-epilogue.tex
@@ -0,0 +1 @@
+\end{document}
diff --git a/doc-prologue.tex b/doc-prologue.tex
new file mode 100644
index 0000000..1e44c84
--- /dev/null
+++ b/doc-prologue.tex
@@ -0,0 +1,133 @@
+\documentclass[a4paper,twoside,english]{book}
+
+\usepackage{calc}
+
+% set page margins
+
+\newcommand\papersize[1]{%
+ TT\fi
+ \uppercase{\ifdim\csname #1@PAPER\endcsname}=\paperheight
+}
+\makeatletter
+\@namedef{A4@PAPER}{297mm}
+\@namedef{LETTER@PAPER}{11in}
+\makeatother
+
+\newlength{\papermargins}
+\if\papersize{a4}
+\setlength{\papermargins}{25mm}
+\fi
+\if\papersize{letter}
+\setlength{\papermargins}{1in}
+\fi
+\usepackage[margin=\papermargins]{geometry}
+
+\setlength{\marginparwidth}{\papermargins-2\marginparsep}
+
+% input and font encoding
+
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+\usepackage{babel}
+
+% Unicode box drawings
+\usepackage{pmboxdraw}
+
+\usepackage[unicode=true,pdfusetitle,pdfsubject={$subject$}]{hyperref}
+
+% title page
+
+\makeatletter
+\renewcommand\maketitle{\begin{titlepage}%
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \let \footnote \thanks
+ \null\vfil
+ \vskip 60\p@
+ \begin{center}%
+ {\LARGE \@title \par}%
+ \vskip 3em%
+ {\large
+ \lineskip .75em%
+ \begin{tabular}[t]{c}%
+ \@author
+ \end{tabular}\par}%
+ \vskip 1.5em%
+ {\large \@date \par}% % Set date in \large size.
+ \end{center}\par
+ \@thanks
+ \vfil
+ {\copyright \par}%
+ {\doclicense \par}%
+ {\version \par}%
+ \docdescription\null%
+ \end{titlepage}%
+ \setcounter{footnote}{0}%
+ \global\let\thanks\relax
+ \global\let\maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\title\relax
+ \global\let\author\relax
+ \global\let\date\relax
+ \global\let\and\relax
+}
+\makeatother
+
+% make single quotes upright in verbatim
+\usepackage{upquote}
+% \textquotesingle
+\usepackage{textcomp}
+
+% document definitions
+\def\doctitle{The \texttt{build2} $title$}
+\def\docauthor{Code Synthesis Ltd}
+\def\copyright{Copyright © 2014-2019 \href{https://codesynthesis.com}{\docauthor}}
+\def\version{Revision \texttt{$version$}, $date$}
+\def\docdescription{This revision of the document describes the \texttt{build2}
+ build system \texttt{$version$.x} series}
+\def\doclicense{Permission is granted to copy, distribute and/or modify this
+ document under the terms of the MIT License.}
+
+% headers and footers
+
+\usepackage{fancyhdr}
+\pagestyle{fancy}
+\fancypagestyle{plain}{%
+ \fancyhf{}
+ \fancyfoot[LE,RO]{\thepage}
+ \fancyfoot[CE,CO]{\doctitle}
+ \fancyfoot[LO,RE]{\version}
+ \renewcommand{\headrulewidth}{0pt}
+ \renewcommand{\footrulewidth}{0pt}
+}
+
+\fancyfoot[LE,RO]{\thepage}
+\fancyfoot[CE,CO]{\doctitle}
+\fancyfoot[LO,RE]{\version}
+\fancyhead[LE,RO]{\nouppercase{\rightmark}}
+
+% boxes
+
+\usepackage{parskip}
+\usepackage{tcolorbox}
+\tcbuselibrary{breakable,skins}
+\tcbset{
+ breakable,
+ enhanced,
+ fonttitle=\bfseries}
+
+\setcounter{secnumdepth}{3}
+\setcounter{tocdepth}{3}
+
+\begin{document}
+
+\title{\doctitle}
+\author{\docauthor}
+\date{$date$}
+
+\maketitle
+
+$TOC$
diff --git a/man-epilogue.tex b/man-epilogue.tex
new file mode 100644
index 0000000..6afdf66
--- /dev/null
+++ b/man-epilogue.tex
@@ -0,0 +1,11 @@
+\section*{BUGS}
+
+\bugs
+
+\section*{COPYRIGHT}
+
+\copyright
+
+\noindent\doclicense
+
+\end{document}
diff --git a/man-prologue.tex b/man-prologue.tex
new file mode 100644
index 0000000..64fc656
--- /dev/null
+++ b/man-prologue.tex
@@ -0,0 +1,81 @@
+\documentclass[a4paper,english]{article}
+
+% set page margins
+
+\newcommand\papersize[1]{%
+ TT\fi
+ \uppercase{\ifdim\csname #1@PAPER\endcsname}=\paperheight
+}
+\makeatletter
+\@namedef{A4@PAPER}{297mm}
+\@namedef{LETTER@PAPER}{11in}
+\makeatother
+
+\newlength{\papermargins}
+\if\papersize{a4}
+\setlength{\papermargins}{25mm}
+\else
+\if\papersize{letter}
+\setlength{\papermargins}{1in}
+\fi
+\fi
+\usepackage[margin=\papermargins]{geometry}
+
+% input and font encoding
+
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+\usepackage{babel}
+
+% Unicode box drawings
+\usepackage{pmboxdraw}
+
+\usepackage[unicode=true,pdfusetitle]{hyperref}
+
+% make single quotes upright in verbatim
+\usepackage{upquote}
+% \textquotesingle
+\usepackage{textcomp}
+
+% document definitions
+\def\mansection{\texttt{\textbf{$name$($section$)}}}
+\def\doctitle{\mansection{} $project$ $version$}
+\def\docname{\texttt{\textbf{$name$}} -- $summary$}
+\def\docauthor{Code Synthesis Ltd}
+\def\bugs{Send bug reports to the \href{mailto:users@build2.org}{users@build2.org}
+ mailing list.}
+\def\copyright{Copyright © 2014-2019 \href{https://codesynthesis.com}{\docauthor}}
+\def\doclicense{Permission is granted to copy, distribute and/or modify this
+ document under the terms of the MIT License.}
+
+% headers and footers
+
+\usepackage{fancyhdr}
+\pagestyle{fancy}
+\fancypagestyle{plain}{%
+ \fancyhf{}
+ \fancyfoot[L]{$project$ $version$}
+ \fancyfoot[C]{$date$}
+ \fancyfoot[R]{\thepage}
+ \renewcommand{\headrulewidth}{0pt}
+ \renewcommand{\footrulewidth}{0pt}
+}
+
+\fancyfoot[L]{$project$ $version$}
+\fancyfoot[C]{$date$}
+\fancyfoot[R]{\thepage}
+\fancyhead[L,R]{\mansection}
+\fancyhead[C]{General Commands Manual}
+
+\begin{document}
+
+\title{\doctitle}
+\author{\docauthor}
+\date{$date$}
+
+\maketitle
+
+\section*{NAME}
+
+\docname
+