From bd286013e355d5059988fa530dddde69b9c90e61 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 23 Apr 2020 21:05:50 +0000 Subject: epigraph-keys (23apr20) git-svn-id: svn://tug.org/texlive/trunk@54851 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/epigraph-keys/README | 19 +++ .../doc/latex/epigraph-keys/epigraph-keys.pdf | Bin 0 -> 308968 bytes .../doc/latex/epigraph-keys/epigraph-keys.tex | 134 +++++++++++++++++++ .../tex/latex/epigraph-keys/epigraph-keys.sty | 145 +++++++++++++++++++++ Master/tlpkg/bin/tlpkg-ctan-check | 2 +- Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc | 1 + Master/tlpkg/tlpsrc/epigraph-keys.tlpsrc | 0 7 files changed, 300 insertions(+), 1 deletion(-) create mode 100644 Master/texmf-dist/doc/latex/epigraph-keys/README create mode 100644 Master/texmf-dist/doc/latex/epigraph-keys/epigraph-keys.pdf create mode 100644 Master/texmf-dist/doc/latex/epigraph-keys/epigraph-keys.tex create mode 100644 Master/texmf-dist/tex/latex/epigraph-keys/epigraph-keys.sty create mode 100644 Master/tlpkg/tlpsrc/epigraph-keys.tlpsrc diff --git a/Master/texmf-dist/doc/latex/epigraph-keys/README b/Master/texmf-dist/doc/latex/epigraph-keys/README new file mode 100644 index 00000000000..b6026194c61 --- /dev/null +++ b/Master/texmf-dist/doc/latex/epigraph-keys/README @@ -0,0 +1,19 @@ +Epigraph keys +v1.0 +22 April 2020 + +Authors: +Ben McKay + +Maintainer: +Ben McKay + +E-mail: +b.mckay@ucc.ie + +Licence: +Released under the LaTeX Project Public License v1.3c or later. +See http://www.latex-project.org/lppl.txt + +The epigraph-keys package lays out epigraphs: quotations across a page, usually to open or close a chapter. +It is intended as a simple replacement for the more sophisticated epigraphs package. diff --git a/Master/texmf-dist/doc/latex/epigraph-keys/epigraph-keys.pdf b/Master/texmf-dist/doc/latex/epigraph-keys/epigraph-keys.pdf new file mode 100644 index 00000000000..dd288a6e7e7 Binary files /dev/null and b/Master/texmf-dist/doc/latex/epigraph-keys/epigraph-keys.pdf differ diff --git a/Master/texmf-dist/doc/latex/epigraph-keys/epigraph-keys.tex b/Master/texmf-dist/doc/latex/epigraph-keys/epigraph-keys.tex new file mode 100644 index 00000000000..d6163afbb73 --- /dev/null +++ b/Master/texmf-dist/doc/latex/epigraph-keys/epigraph-keys.tex @@ -0,0 +1,134 @@ +\documentclass{article} +\title{The {\texttt{epigraph-keys}} package} +\author{Benjamin McKay} +\date{\today} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{fixmath} +\usepackage[mathscr]{eucal} +\usepackage[% +activate={true,nocompatibility},% +final,% +tracking=true,% +kerning=true,% +spacing=true,% +factor=1100,% +stretch=10,% +shrink=10]{microtype} +\microtypecontext{spacing=nonfrench} +\usepackage{siunitx} +\usepackage{epigraph-keys} +\usepackage{tcolorbox} +\usepackage{fancyvrb-ex} +\tcbuselibrary{listings} +\usepackage{xcolor} +\usepackage{booktabs} +\usepackage{colortbl} +\arrayrulecolor{gray!30} +\definecolor{outerrule}{gray}{0.8} +\usepackage{pgfornament} +\begin{document} +\maketitle +\tableofcontents +\abstract{The \texttt{epigraph-keys} package lays out epigraphs: quotations across a page, usually to open or close a chapter. +It is intended as a simple replacement for the more sophisticated \texttt{epigraphs} package.} +\section{Introduction} +\epigraph[author={Ludwig Wittgenstein}, source={Culture and Value}]{With my full philosophical rucksack I can only climb slowly up the mountain of mathematics.} +Load with \verb!\usepackage{epigraph-keys}!. +\begin{tcblisting}{title={Simple example}} +\epigraph[ + author={Ludwig Wittgenstein}, + source={Culture and Value}] + {With my full philosophical rucksack I can only + climb slowly up the mountain of mathematics.} +\end{tcblisting} +\begin{tcblisting}{title={Example with translation}} +\epigraph[ + author={Paul Painlev\'e}, + source={Analyse des travaux scientifiques}, + translation={The shortest and easiest path + between any two facts about the real domain + passes through the complex domain.}] + {Entre deux v\'erit\'es du domaine r\'eel, le + chemin le plus facile et le plus court passe + bien souvent par le domaine complexe.} +\end{tcblisting} +\newpage +\section{Lots of epigraphs} +If you want to lay out a series of epigraphs, use an \verb!epigraphs! environment: +\begin{Example}[% +frame=single,% +framesep=3mm,% +framerule=2mm,% +rulecolor=\color{outerrule}] +\begin{epigraphs} + \qitem[ + author={Hermann Weyl}, + source={Invariants}, + etc={Duke Mathematical Journal 5, + 1939, 489--502}] + {In these days the angel of topology and the + devil of abstract algebra fight for the soul + of every individual discipline of + mathematics.} + \qitem[ + author={Goethe}, + source={Faust}] + {--- and so who are you, after all? \\ + --- I am part of the power which forever + wills evil and forever works good.} + \qitem[ + source={Quran}, + etc={2:1/2:6-2:10 \emph{The Cow}}] + {This Book is not to be doubted.} +\end{epigraphs} +\end{Example} +\newpage +\section{Options} +\begin{tcblisting}{title={Options}} +\pgfkeys{ + /epigraph, + after skip={1cm}, + before skip={0mm}, + author and source indent=2cm, + text indent=1cm, + width=\linewidth, + style={\large}, + quote style={\itshape}, + translation style={}, + dash={\tikz[baseline=-.3em] + \node[inner sep=0pt] + {\pgfornament[width=1cm]{11}};} +} +\epigraph[ + author={Goethe}, + source={Faust}] + {\begin{enumerate} + \item[---] + and so who are you, after all? + \item[---] + I am part of the power which + forever wills evil and forever + works good. + \end{enumerate}} +\end{tcblisting} +\begin{tabular}{@{}>{\ttfamily}l>{}l>{\ttfamily}l<{}p{4.5cm}@{}} +\toprule +\multicolumn{1}{@{}l}{Option}&Type&\multicolumn{1}{l}{Default}&Significance\\ +\cmidrule(r){1-1}\cmidrule(lr){2-2}\cmidrule(lr){3-3}\cmidrule(l){4-4} +author&text&&author's name\\ +source&text&&source of quotation\\ +etc&text&&additional information on the source or author of the quotation\\ +after skip&length&\textbackslash{}baselineskip&vertical space below epigraph\\ +before skip&length&0mm&vertical space above epigraph\\ +author and source indent&length&1.5cm&Indentation before author's name and source of quotation\\ +text indent&length&2cm&Indentation before quote\\ +width&length&\textbackslash{}linewidth&width of the entire epigraph\\ +style¯o&\textbackslash{}small&style of the entire epigraph\\ +quote style¯o&\textbackslash{}itshape&style of the quotation part\\ +translation style¯o&\{\}&style of the translation part\\ +dash¯o&\verb!---!&Macro to set the slash before the author's name\\ +\bottomrule +\end{tabular} +\end{document} diff --git a/Master/texmf-dist/tex/latex/epigraph-keys/epigraph-keys.sty b/Master/texmf-dist/tex/latex/epigraph-keys/epigraph-keys.sty new file mode 100644 index 00000000000..3dceba738e3 --- /dev/null +++ b/Master/texmf-dist/tex/latex/epigraph-keys/epigraph-keys.sty @@ -0,0 +1,145 @@ +% Benjamin McKay +% b.mckay@ucc.ie +% see epigraph-keys.pdf or epigraph-keys.tex for more information. +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{epigraph-keys}[2020/04/22 v1.0 Epigraphs using key values] +\RequirePackage{enumitem} +\RequirePackage{pgfkeys} +\RequirePackage{conditionals} +\RequirePackage{microtype} + +\ProcessOptions\relax + +\makeatletter +{\catcode`\!=8 % funny catcode so ! will be a delimiter + \catcode`\Q=3 % funny catcode so Q will be a delimiter +\long\gdef\given#1{88\fi\Ifbl@nk#1QQQ\empty!} +\long\gdef\blank#1{88\fi\Ifbl@nk#1QQ..!}% if null or spaces +\long\gdef\nil#1{\IfN@Ught#1* {#1}!}% if null +\long\gdef\IfN@Ught#1 #2!{\blank{#2}} +\long\gdef\Ifbl@nk#1#2Q#3!{\ifx#3}% same as above +} +\makeatother + +% The expression \if\expblank{...} x \else y \if gives x when ... expands out to be blank space. +\def\expblank{\expandafter\blank\expandafter} +\def\expgiven{\expandafter\given\expandafter} +\def\expnil{\expandafter\nil\expandafter} +\def\beforeepigraphskip{0pt} +\def\afterepigraphskip{\baselineskip} +\def\epigraphtextindent{2cm} +\def\epigraphauthorsourceindent{1.5cm} +\def\epigraphtextwidth{\linewidth} +\def\epigraphstyle{\small} +\def\epigraphdash{---} +\def\epigraphquotefont{\itshape} +\def\epigraphtranslationfont{} + +\pgfkeys{ + /epigraph/.is family, + /epigraph, + default/.style = { + author = {}, + source = {}, + etc = {}, + translation = {}, + }, + author/.store in = \epigraphauthor, + source/.store in = \epigraphsource, + etc/.store in = \epigraphetc, + translation/.store in = \epigraphtranslation, + before skip/.store in = \beforeepigraphskip, + before skip/.default = 0pt, + after skip/.store in = \afterepigraphskip, + after skip/.default = \baselineskip, + text indent/.store in = \epigraphtextindent, + text indent/.default = 2cm, + author and source indent/.store in = \epigraphauthorsourceindent, + author and source indent/.default = 1.5cm, + width/.store in = \epigraphtextwidth, + width/.default = \linewidth, + style/.store in = \epigraphstyle, + style/.default = \small, + dash/.store in = \epigraphdash, + dash/.default = ---, + quote style/.store in = \epigraphquotefont, + quote style/.default = {}, + translation style/.store in = \epigraphtranslationfont, + translation style/.default = {}, +} + +\ifdefined\epigraph\else\xdef\epigraph{}\fi +\renewcommand{\epigraph}[2][]{ + \pgfkeys{/epigraph,default,#1} + \epigraphstyle\vspace{\beforeepigraphskip} + \begin{enumerate}[leftmargin=\epigraphtextindent] + \item[] + {%% + \epigraphquotefont{}% + \begin{minipage}{\epigraphtextwidth}% + #2% + \end{minipage}% + }%% + \if\expblank{\epigraphtranslation} + \else + \item[] + {% + \epigraphtranslationfont% + {%%%% + \begin{minipage}{\epigraphtextwidth}% + \epigraphtranslation% + \end{minipage} + }%%%% + }% + \fi + \if\expblank{\epigraphauthor} + \if\expblank{\epigraphsource} + \if\expblank{\epigraphetc} + \else\epigraphetc + \fi + \else + \begin{enumerate}[leftmargin=\epigraphauthorsourceindent]% + \item[\epigraphdash]% + {%% + \smallerSmallCapsTracking{}\textsc{\epigraphsource} + }%% + \if\expblank{\epigraphetc}% + \else{}, \epigraphetc + \fi + \end{enumerate} + \fi + \else + \begin{enumerate}[leftmargin=\epigraphauthorsourceindent]% + \item[\epigraphdash] \epigraphauthor \\ + \if\expblank{\epigraphsource}% + \if\expblank{\epigraphetc}% + \else\epigraphetc% + \fi% + \else% + \begingroup + \smallerSmallCapsTracking{}\textsc{\epigraphsource}% + \endgroup + \if\expblank{\epigraphetc}% + \else% + \begingroup% + , \epigraphetc + \endgroup + \fi + \fi + \end{enumerate} + \fi + \end{enumerate} + \vspace{\afterepigraphskip} + \par\noindent +} + +\newcommand{\smallerSmallCapsTracking}% +{% +\SetTracking{encoding={*}, shape=sc}{20}% +}% + +\ifdefined\epigraphs\else\xdef\epigraphs{}\fi +\renewenvironment{epigraphs}{\begin{enumerate}}{\end{enumerate}} +\ifdefined\qitem\else\xdef\qitem{}\fi +\renewcommand{\qitem}[2][]{\item[]\epigraph[#1]{#2}} + diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index a8cc8b50705..1ff44c96d63 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -268,7 +268,7 @@ my @TLP_working = qw( endnotes endnotes-hy endnotesj endofproofwd engpron engrec engtlc enigma enotez enumitem enumitem-zref envbig environ envlab - epigrafica epigram epigraph epiolmec eplain + epigrafica epigram epigraph epigraph-keys epiolmec eplain epsdice epsf epsf-dvipdfmx epsincl epslatex-fr epspdfconversion epstopdf epstopdf-pkg eqell eqexpl eqlist eqnalign eqname eqnarray eqnnumwarn eqparbox diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc index 6354c581fc9..50eaaecd43b 100644 --- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc @@ -382,6 +382,7 @@ depend envbig depend environ depend envlab depend epigraph +depend epigraph-keys depend epiolmec depend eqell depend eqlist diff --git a/Master/tlpkg/tlpsrc/epigraph-keys.tlpsrc b/Master/tlpkg/tlpsrc/epigraph-keys.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d -- cgit v1.2.3