summaryrefslogtreecommitdiff
path: root/info/latex-doc-ptr/latex-doc-ptr.sty
diff options
context:
space:
mode:
Diffstat (limited to 'info/latex-doc-ptr/latex-doc-ptr.sty')
-rw-r--r--info/latex-doc-ptr/latex-doc-ptr.sty263
1 files changed, 223 insertions, 40 deletions
diff --git a/info/latex-doc-ptr/latex-doc-ptr.sty b/info/latex-doc-ptr/latex-doc-ptr.sty
index 097cfce602..c9982ad369 100644
--- a/info/latex-doc-ptr/latex-doc-ptr.sty
+++ b/info/latex-doc-ptr/latex-doc-ptr.sty
@@ -1,31 +1,132 @@
% latex-doc-ptr.sty style for LaTeX doc pointer document
-% Jim Hefferon public domain
-\usepackage[margin=1in]{geometry}
+% 2021-Jan-02 Jim Hefferon, Karl Berry public domain
+
+
+% include graphics
+\usepackage{graphicx} % needed for \XeLaTeX command
+
+% Color, for links and titles
+\usepackage{xcolor}
+% Color theme from Rodryggo Sylva
+% https://color.adobe.com/explore?page=2
+\definecolor{darkblue}{HTML}{274375} % {023059}
+\definecolor{lightblue}{HTML}{094085} %{023E73}
+% \definecolor{papyrus}{HTML}{D9D8D7}
+\definecolor{papyrus}{HTML}{E4E4E4}
+\definecolor{darkred}{HTML}{BF1E0F}
+\definecolor{lightred}{HTML}{F24141}
+% \pagecolor{papyrus}
-\usepackage{color,graphicx}
%\usepackage{dash}
-\usepackage{url}
+% \usepackage{url}
\usepackage{hyperref}
\hypersetup{colorlinks,breaklinks,
- linkcolor=black,citecolor=blue,
- filecolor=blue,urlcolor=blue,
+ linkcolor=black,citecolor=lightblue,
+ filecolor=blue,urlcolor=lightblue,
pdfpagemode=UseNone}
-\usepackage{tgbonum}
-
-\usepackage[para]{footmisc}
-% Change horiz room between fn mark and fn hskip from .5em
-% Suggested to RF making this settable
-\long\def\@makefntext#1{\leavevmode
-\@makefnmark\nobreak
-\hskip.05em\relax#1%
+
+% fonts
+% \usepackage{cochineal}
+\usepackage[light,lining]{spectral}
+\usepackage[T1]{fontenc}
+
+\usepackage{microtype}
+
+
+% ====== Page design =========
+% margins, multicolumn
+\usepackage[margin=1in]{geometry}
+\usepackage{multicol}
+\setlength{\columnsep}{2.5em}
+
+% space between paragraphs
+\setlength{\parskip}{.15ex plus .02ex minus .01ex}
+
+% Page headers and footers
+\pagestyle{empty}
+
+% Section titles
+\usepackage{titlesec}
+\titleformat{\section}[hang]{\color{black}\large\bf}{}{0pt}{}
+% \titlespacing{\section}{0pt}{2ex plus 0.1ex minus 0.05ex}{0.85ex plus 0.05ex}
+\titlespacing{\section}{0pt}{*2}{*0.66}
+
+\titleformat{\subsection}[runin]{\color{black}\normalsize\bf}{}{0.65em}{}
+% \titlespacing{\subsection}{0pt}{0.5ex plus 0.1ex minus 0.05ex}{0.15ex plus 0.05ex}
+\titlespacing{\subsection}{0pt}{*0.5}{*1}
+
+\setcounter{secnumdepth}{0} % Number the sections only if level -1 or less
+
+
+% footnotes and package macro\patchcmd{\@makefntext}{.5em}{0em}{}{}
+\usepackage{ragged2e}
+\usepackage{etoolbox} % for patchcmd
+\usepackage{endnotes}
+\usepackage[para, norule, hang]{footmisc} % from https://tex.stackexchange.com/a/60949
+\patchcmd{\@makefntext}{.5em}{0em}{}{}
+\def\theendnotes{\immediate\closeout\@enotes \global\@enotesopenfalse
+ \begingroup
+ \makeatletter
+ \edef\@tempa{`\string >}%
+ \ifnum\catcode\@tempa=12%
+ \let\@ResetGT\relax
+ \else
+ \edef\@ResetGT{\noexpand\catcode\@tempa=\the\catcode\@tempa}%
+ \@makeother\>%
+ \fi
+ \def\@doanenote##1##2>{\def\@theenmark{##1}\begingroup
+ \@ResetGT
+ \edef\@currentlabel{\csname p@endnote\endcsname\@theenmark}%
+ \enoteformat}
+ \def\@endanenote{\hspace{0.65em plus 0.1em}\endgroup}%
+ \enoteheading
+ \enotesize % worth a look: \RaggedRight
+ \input{\jobname.ent}%
+ \endgroup}
+% ENDNOTE INDENT
+% \patchcmd{\enoteformat}{1.8em}{0em}{}{}
+% \def\makeenmark{\hbox{XX$^\theenmark$}}
+\def\enoteformat{\rightskip\z@ \leftskip\z@ \parindent=0em
+ \leavevmode\hbox{\makeenmark}}
+
+\renewcommand\enoteheading{% from https://tex.stackexchange.com/a/62425
+ \setcounter{secnumdepth}{-2}
+ \section{\notesname}
+ % \mbox{}\par\vskip-\baselineskip
+ \mbox{}\par\vspace{-1.08\baselineskip}% \vskip-0.9\baselineskip
+ \let\@afterindentfalse\@afterindenttrue
}
+\renewcommand{\notesname}{Package names, for texdoc}
+% \long\def\@makefntext#1{\leavevmode
+% \@makefnmark\nobreak
+% \hskip.04em\relax#1%
+% }
+
+% computer code
+\usepackage{listings}
+\lstset{basicstyle = \small\ttfamily,
+ keepspaces=true,
+ columns=fullflexible,
+ xleftmargin=10pt}
+\usepackage{upquote}
+
+% Get ISO dates
+\usepackage[style=iso]{datetime2}
+
+% Definitions for this doc
+
+% Refer to texdoc
+\newcommand{\texdoc}[1]{\footnote{\protect\pkg{#1}}}
+\let\footnote=\endnote
-\newcommand{\texdoc}[1]{\/\footnote{\protect\texttt{#1}}}
+% Name package by CTAN and texdoc name
+\newcommand{\pkglink}[2]{\href{https://ctan.org/pkg/#1}{\texttt{#2}}}
+% \newcommand{\pkg}[1]{\href{https://ctan.org/pkg/#1}{\texttt{#1}}}
+\newcommand{\pkg}[1]{\pkglink{#1}{#1}}
-\setlength{\parskip}{-.25ex plus -.05ex minus -.05ex}
% \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}
% optional * [ALTHEADING]{HEADING}
% Generic command to start a section.
@@ -46,20 +147,16 @@
% is normally defined to \@startsection + its first six arguments.
% \makeatletter
-\def\section{\@startsection {section}{1}{\z@}{-3ex plus -.45ex minus
- -.20ex}{4.75ex plus .45ex minus .20ex}{\centering\Large\bf}}
-\def\subsection{\@startsection {subsection}{2}{\z@}{-2.5ex plus -.15ex minus
- -.10ex}{.80ex plus .1ex}{\centering\large\bf}}
-\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-.85ex plus -.15ex minus
- -.05ex}{-.75em}{\normalsize\sc}}
+% \def\section{\@startsection {section}{1}{\z@}{-3ex plus -.45ex minus
+% -.20ex}{4.75ex plus .45ex minus .20ex}{\centering\Large\bf}}
+% \def\subsection{\@startsection {subsection}{2}{\z@}{-2.5ex plus -.15ex minus
+% -.10ex}{.80ex plus .1ex}{\centering\large\bf}}
+% \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-.85ex plus -.15ex minus
+% -.05ex}{-.75em}{\normalsize\sc}}
% \makeatother
-\setcounter{secnumdepth}{0} % Number the sections only if level -1 or less
-\setlength{\parskip}{.85ex plus .15ex minus .05ex}
-
-\pagestyle{empty}
-\newcommand{\program}[1]{\texttt{#1}}
-\newcommand{\package}[1]{\textit{#1}}
+% \newcommand{\program}[1]{\texttt{#1}}
+% \newcommand{\package}[1]{\textit{#1}}
% Used for backslash
\newcommand\SLASH{\char`\\}
% Last thing before the document: define the \XeTeX logo (stolen from
@@ -70,24 +167,110 @@
% least a chance to look ok.
%
% \begin{macrocode}
+% \def\tubreflect#1{%
+% \ifx\reflectbox\relax
+% \errmessage{A graphics package must be loaded for \string\XeTeX}%
+% \else
+% \ifdim \fontdimen1\font>0pt
+% \raise 1.35ex \hbox{\kern.1em\rotatebox{180}{#1}}\kern-.1em
+% \else
+% \reflectbox{#1}%
+% \fi
+% \fi
+% }
+% \def\tubhideheight#1{\setbox0=\hbox{#1}\ht0=0pt \dp0=0pt \box0 }
+% \DeclareRobustCommand\Xe[1]{\leavevmode
+% \tubhideheight{\hbox{X%
+% \setbox0=\hbox{\TeX}\setbox1=\hbox{E}%
+% \lower\dp0\hbox{\raise\dp1\hbox{\kern-.125em\tubreflect{E}}}%
+% \kern-.1667em #1}}}
+% \newcommand{\xetex}{\Xe\TeX}
+% \newcommand{\pdftex}{pdf\TeX}
+% \newcommand{\luatex}{Lua\TeX}
+% \newcommand{\texworks}{\TeX{}works}
+
+
+
+% Logos and acronyms, some of them to match TUGboat commands
+% \RequirePackage{mflogo} % for MetaPost \MP
+
+% \newcommand\pdfLaTeX{pdf\LaTeX}
+% \newcommand\PDFLaTeX{\pdfLaTeX}
+% \newcommand\LuaLaTeX{Lua\LaTeX}
+
+% Stuff from ltugboat.cls
+\def\smc{\sc}
+\def\ninepoint{\small}
+\DeclareRobustCommand{\SMC}{%
+ \ifx\@currsize\normalsize\small\else
+ \ifx\@currsize\small\footnotesize\else
+ \ifx\@currsize\footnotesize\scriptsize\else
+ \ifx\@currsize\large\normalsize\else
+ \ifx\@currsize\Large\large\else
+ \ifx\@currsize\LARGE\Large\else
+ \ifx\@currsize\scriptsize\tiny\else
+ \ifx\@currsize\tiny\tiny\else
+ \ifx\@currsize\huge\LARGE\else
+ \ifx\@currsize\Huge\huge\else
+ \small\SMC@unknown@warning
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+}
+\newcommand{\SMC@unknown@warning}{\TBWarning{\string\SMC: nonstandard
+ text font size command -- using \string\small}}
+\newcommand{\textSMC}[1]{{\SMC #1}}
+\newcommand{\acro}[1]{\textSMC{#1}\@}
+
\def\tubreflect#1{%
- \ifx\reflectbox\relax
- \errmessage{A graphics package must be loaded for \string\XeTeX}%
- \else
+ \@ifundefined{reflectbox}{%
+ \TBerror{A graphics package must be loaded for \string\XeTeX}%
+ }{%
\ifdim \fontdimen1\font>0pt
- \raise 1.35ex \hbox{\kern.1em\rotatebox{180}{#1}}\kern-.1em
+ \raise 1.75ex \hbox{\kern.1em\rotatebox{180}{#1}}\kern-.1em
\else
\reflectbox{#1}%
\fi
- \fi
+ }%
}
\def\tubhideheight#1{\setbox0=\hbox{#1}\ht0=0pt \dp0=0pt \box0 }
-\DeclareRobustCommand\Xe[1]{\leavevmode
+\def\XekernbeforeE{-.125em}
+\def\XekernafterE{-.1667em}
+\DeclareRobustCommand{\Xe}{\leavevmode
\tubhideheight{\hbox{X%
\setbox0=\hbox{\TeX}\setbox1=\hbox{E}%
- \lower\dp0\hbox{\raise\dp1\hbox{\kern-.125em\tubreflect{E}}}%
- \kern-.1667em #1}}}
-\newcommand{\xetex}{\Xe\TeX}
-\newcommand{\pdftex}{pdf\TeX}
-\newcommand{\luatex}{Lua\TeX}
-\newcommand{\texworks}{\TeX{}works}
+ \lower\dp0\hbox{\raise\dp1\hbox{\kern\XekernbeforeE\tubreflect{E}}}%
+ \kern\XekernafterE}}}
+\def\XeTeX{\Xe\TeX}
+\def\XeLaTeX{\Xe{\kern.11em \LaTeX}}
+\def\LuaTeX{Lua\TeX}
+\def\pdfTeX{pdf\TeX}
+
+\def\Bib{%
+ \ifdim \fontdimen1\font>0pt
+ B{\SMC\SMC IB}%
+ \else
+ B\textsc{ib}%
+ \fi
+}
+\def\BibLaTeX{\Bib\kern.02em \LaTeX}
+\def\BibTeX{\Bib\kern-.08em \TeX}
+
+\newcommand{\PDF}{\acro{PDF}}
+\newcommand{\CTAN}{\acro{CTAN}}
+\newcommand{\URL}{\acro{URL}}
+\newcommand{\TikZ}{Ti{\textit k}Z} % from TUB
+\newcommand{\Asymptote}{Asymptote} % the manual uses typewriter
+\newcommand{\gnuplot}{Gnuplot} % the FAQ says lower case first letter
+
+% Style I chopped out of ltugboat.cls
+\usepackage{dash}
+
+
+\newcommand{\program}[1]{\texttt{#1}}
+\newcommand{\package}[1]{#1}
+% stubs
+% \newcommand{\texdoc}[1]{\relax}
+
+% Give paras just a bit of room
+% \setlength{\parskip}{0.45ex}
+
+\pagestyle{empty}