%% $Id: bonum-otf-doc.tex 925 2024-07-23 17:47:45Z herbert $
\listfiles
\documentclass[ngerman,spanish,polish,english,a4paper]{article}
\usepackage{heros-otf}
\usepackage{bonum-otf}
\setmonofont[Scale=MatchLowercase,FakeStretch=0.88]{AnonymousPro}
\usepackage{babel}
\usepackage{geometry}
\usepackage{booktabs}
\usepackage{xltabular}
\usepackage{listings}
\usepackage{xspace}
\usepackage{setspace}
\usepackage{xltabular}
\usepackage{marginnote}
\usepackage{xcolor,url}
\usepackage{varioref,multido}
\newcommand\Macro[1]{\texttt{\textbackslash#1}}
\newcommand\textstyleVariable[1]{\texttt{#1}}
\newcommand\textgerman[1]{\foreignlanguage{ngerman}{\texttt{#1}}}
\usepackage{hvextern}
\lstset{basicstyle=\ttfamily\small}
%\setkeys{hv}{lstOptions={basicstyle=\Mono\small,columns=fixed}}
\setkeys{hv}{moveToExampleDir,ExampleDir=Examples,showFilename,verbose}

\usepackage[imakeidx]{xindex}
\makeindex[title=Index]

\newenvironment{demoquote}
               {\begingroup
                \setlength{\topsep}{0pt}
                \setlength{\partopsep}{0pt}
                \list{}{\rightmargin\leftmargin}%
                \item\relax}
               {\endlist\endgroup}

\def\Lcs#1{\texttt{\textbackslash#1}\index{#1@\texttt{\textbackslash#1}}}
\def\Largb#1{\texttt{\{}\textit{#1}\texttt{\}}}
\def\Lpack#1{\texttt{#1}\index{#1@\texttt{#1}}\index{Package!#1@\texttt{#1}}}
\def\testfeature#1#2#3{{\fontspec[RawFeature={+#2}]{#1}#3\relax}}
\def\Loption#1{\texttt{#1}\index{#1@\texttt{#1}}\index{Option!#1@\texttt{#1}}}
\def\SUP{\addfontfeatures{RawFeature={+sups}}}

\usepackage{multicol,luacode}
\setlength{\columnsep}{0.3cm}
\setlength{\columnseprule}{0.1pt}


\title{The \TeX\ Gyre Bonum OpenType font}
\author{Herbert Voß}
\usepackage{parskip}
\parindent=0pt


\begin{document}
\maketitle




\section{The default setting}

The \LaTeX\  package \Lpack{bonum-otf} supports the following OpenType fonts:
\begin{verbatim}
texgyrebonum-regular.otf
texgyrebonum-bold.otf		
texgyrebonum-italic.otf
texgyrebonum-bolditalic.otf	
texgyrebonum-math.otf	
\end{verbatim}

The fonts are free available and part of any \TeX-distribution.


\begin{verbatim}
\setmainfont{texgyrebonum}[ 
  RawFeature     = {\bonum@figurealign;\bonum@figurestyle},
  Scale          = \bonumRM@scale ,
  UprightFont    = *-regular,
  ItalicFont     = *-italic,
  ItalicFeatures = { SmallCapsFont = *-italic },
  SlantedFont    = *-regular,
  SlantedFeatures= {FakeSlant=0.2},
  BoldFont       = *-bold,
  BoldFeatures   = { SmallCapsFont = *-Bold },
  BoldItalicFont = *-bolditalic,
  BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
  BoldSlantedFont= *-bold,
  BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
  SmallCapsFont  = *-regular,
%  SmallCapsFeatures={RawFeature=+smcp},
  SmallCapsFeatures={Letters=SmallCaps}, 
  Extension      = .otf  
]

\newfontfamily\bonumOsF{texgyrebonum}[
  RawFeature     = {+onum},
  Scale          = \bonumRM@scale ,
  UprightFont    = *-regular,
  ItalicFont     = *-italic,
  ItalicFeatures = { SmallCapsFont = *-italic },
  SlantedFont    = *-regular,
  SlantedFeatures= {FakeSlant=0.2},
  BoldFont       = *-bold,
  BoldFeatures   = { SmallCapsFont = *-Bold },
  BoldItalicFont = *-bolditalic,
  BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
  BoldSlantedFont= *-bold,
  BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
  SmallCapsFont  = *-regular,
%  SmallCapsFeatures={RawFeature=+smcp},
  SmallCapsFeatures={Letters=SmallCaps}, 
  Extension      = .otf  
]

\newfontfamily\bonumTLF{texgyrebonum}[
  RawFeature        = {+tnum;-onum},
  Scale          = \bonumRM@scale ,
  UprightFont    = *-regular,
  ItalicFont     = *-italic,
  ItalicFeatures = { SmallCapsFont = *-italic },
  SlantedFont    = *-regular,
  SlantedFeatures= {FakeSlant=0.2},
  BoldFont       = *-bold,
  BoldFeatures   = { SmallCapsFont = *-Bold },
  BoldItalicFont = *-bolditalic,
  BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
  BoldSlantedFont= *-bold,
  BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
  SmallCapsFont  = *-regular,
%  SmallCapsFeatures={RawFeature=+smcp},
  SmallCapsFeatures={Letters=SmallCaps}, 
  Extension      = .otf  
]
\end{verbatim}


\section{The serif font}

\selectlanguage{polish}
\marginnote{mdseries\\upright}
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\marginnote{\normalfont bfseries\\upright}\bfseries
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.


\marginnote{\normalfont mdseries\\itshape}\normalfont\itshape
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\marginnote{\normalfont bfseries\\itshape}\bfseries
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\normalfont
\marginnote{\normalfont mdseries\\slshape}\normalfont\slshape
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\marginnote{\normalfont bfseries\\slshape}\bfseries
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\normalfont
\marginnote{\normalfont mdseries\\upright\\scshape}\scshape
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\marginnote{\normalfont bfseries\\upright\\scshape}\bfseries
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\mdseries
\marginnote{\normalfont mdseries\\itshape\\scshape}\itshape
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\marginnote{\normalfont bfseries\\itshape\\scshape}\bfseries
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\marginnote{\normalfont mdseries\\slshape\\scspape}\mdseries
\slshape
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.

\marginnote{\normalfont bfseries\\slshape\\scspape}\bfseries
Honoru myśliwych zaraza Rymsza Libijskich wszystkich Wożny przerywał szczodroty 
opowiadań. Cesarskich znaczy rączy muchom malarstwie spisem różowemi zacnie 
urządzał. Nasze Praga stare żeś Żyje cnoty Tabor. Mówcy pokój Również śmieléj 
wionęła jarzynach liczne drogą jastrząb słowo zabawy odjechał życie. Dano 
ojcu Wyprowadzają kuca dramatycznych myśliwskiém bór pęk żyt maja Wiec. Nię 
Taka Albo tace Usta pęk ucha.



\normalfont\normalsize
\selectlanguage{english}

\section{Package options}

Possible optional arguments are

\noindent
\begin{tabular}{@{} >{\ttfamily}l l @{}}
oldstyle, osf   &  old-style figures \\
lining, nf, lf  &  lining figures (default)\\
proportional, p & varying-width figures\\
tabular, t      & fixed-width figures (default)\\
ScaleRM         & scaling for the serif font, preset to 1\\
defaultfeatures & presetting of features only for rmfamily\\
libertinus      & use integral symbols from Libertinus Math
\end{tabular}



%\lstset{extendedchars}

\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,
  compiler=lualatex,
  crop,
  force=true,
  runs=2,
  code,
  docType=latex,
  frame,
  showFilename,
  ExampleDir=Examples,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage[osf]{bonum-otf}
%StopVisiblePreamble
\begin{document}
0000111122223333444455556666777788889999\par abcdefghijklmn
\end{document}
\end{externalDocument}


\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  compiler=lualatex,
  crop,
  force=true,
  runs=1,
  code,
  docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage[lining]{bonum-otf}
%StopVisiblePreamble
\begin{document}
0000111122223333444455556666777788889999\par
\addfontfeatures{RawFeature=-lnum;+onum}%
0000111122223333444455556666777788889999
\end{document}
\end{externalDocument}




\begin{externalDocument}[
  frame,
  compiler=lualatex,
  crop,
  force=true,
  runs=1,
  code,
  docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%lstOptions={columns=flexible}
  ]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage[t=false]{bonum-otf}
%StopVisiblePreamble
\begin{document}
0000111122223333444455556666777788889999\par
\addfontfeatures{RawFeature=+tnum}%L
0000111122223333444455556666777788889999
\end{document}
\end{externalDocument}






\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  force=true,
  runs=2,code,docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage[p]{bonum-otf}
%StopVisiblePreamble
\begin{document}
0000111122223333444455556666777788889999\par 
\addfontfeatures{RawFeature=-pnum}%
0000111122223333444455556666777788889999
\end{document}
\end{externalDocument}

\section{Features}


\begin{lstlisting}[basicstyle=\ttfamily\small]
bash-3.2$ otfinfo -f texgyrebonum-regular.otf 
aalt	Access All Alternates
c2sc	Small Capitals From Capitals
cpsp	Capital Spacing
dlig	Discretionary Ligatures
frac	Fractions
kern	Kerning
liga	Standard Ligatures
lnum	Lining Figures
onum	Oldstyle Figures
pnum	Proportional Figures
salt	Stylistic Alternates
size	Optical Size
smcp	Small Capitals
ss01	Stylistic Set 1
ss02	Stylistic Set 2
ss03	Stylistic Set 3
ss04	Stylistic Set 4
tnum	Tabular Figures
zero	Slashed Zero
\end{lstlisting}

%$


\subsection{Capitals to Small Caps}

The macro \Lcs{Lctosc}\Largb{arg} is for a local change of \emph{arg} and \Lcs{LCtoSC+} and \Lcs{LCtoSC-} for
a global change of capitals to small caps.

\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  force=true,
  runs=2,code,docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
\parindent=0pt
%StartVisiblePreamble
\usepackage{bonum-otf}
\usepackage{xcolor}
%StopVisiblePreamble
\begin{document}
bonum Font ŐŰÉÁÄ \Lctosc{bonum Font ŐŰÉÁÄ}\\
\LCtoSC+ bonum Font ŐŰÉÁÄ
\end{document}
\end{externalDocument}



\subsection{Capitals to Small Caps and small captitals}

The macro \Lcs{Lctosmcp}\Largb{arg} is for a local change of \emph{arg} and \Lcs{LCtoSMCP+} and \Lcs{LCtoSMCP-}  for
a global change of capitals to small caps.

\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  force=true,
  runs=2,code,docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
\parindent=0pt
%StartVisiblePreamble
\usepackage{bonum-otf}
\usepackage{xcolor}
%StopVisiblePreamble
\begin{document}
bonum Font ŐŰÉÁÄ \Lctosmcp{bonum Font ŐŰÉÁÄ}\\
\LCtoSMCP+ bonum Font ŐŰÉÁÄ 
\end{document}
\end{externalDocument}

\subsection{Ligatures}

The macros \Lcs{Lliga}\Largb{arg} (standard ligatures), \Lcs{Lhlig}\Largb{arg} (historical ligatures), 
\Lcs{Ldlig}\Largb{arg} (discretionary ligatures)
are for a local change of \emph{arg} and \Lcs{LLIGA+}/\Lcs{LLIGA-}, \Lcs{LHLIG+}/\Lcs{LHLIG-}, and \Lcs{LDLIG+}/\Lcs{LDIG-}  for
a global change of capitals to small caps relative to the current group.

\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  force=true,
  runs=2,code,docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
\parindent=0pt
%StartVisiblePreamble
\usepackage{bonum-otf}
\usepackage{xcolor}
%StopVisiblePreamble
\begin{document}%\LLIGA+ % Default
ff, fi, ffi, fl

\LLIGA- ff, fi, ffi, fl
\end{document}
\end{externalDocument}




\subsection{Capital spacing, uppercase kerning}

\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  force=true,
  runs=2,code,docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
\parindent=0pt
%StartVisiblePreamble
\usepackage{bonum-otf}
\usepackage{xcolor}
%StopVisiblePreamble
\begin{document}
IN THE BEGINNING GOD CREATED THE HEAVENS AND THE EARTH.\\
\textcolor{red}{\Lcpsp{IN THE BEGINNING GOD CREATED THE HEAVENS AND THE EARTH.}}

\makebox[0pt][l]{IN THE BEGINNING GOD CREATED THE HEAVENS AND THE EARTH.}%
\textcolor{red}{\LCPSP IN THE BEGINNING GOD CREATED THE HEAVENS AND THE EARTH.}
\end{document}
\end{externalDocument}


\subsection{Stylistic Alternates}

The macro \Lcs{Lsalt}\Largb{arg} is for a local change of \emph{arg} and \Lcs{LSALT+} and \Lcs{LSALT-} for
the alternate characters.

\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  force=true,
  runs=2,code,docType=latex,
  usefancyvrb,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
\parindent=0pt
%StartVisiblePreamble
\usepackage{bonum-otf}
%StopVisiblePreamble
\begin{document}
θκφ \quad \Lsalt{θκφ} \quad\LSALT+ θκφ \quad\LSALT- θκφ
\end{document}
\end{externalDocument}


% ss01	Stylistic Set 1
% ss02	Stylistic Set 2
% ss03	Stylistic Set 3
% ss04	Stylistic Set 4
% ss10	Stylistic Set 10

\subsection{Stylistic Sets}

\iffalse





¡“¶¢[]|{}≠¿'
«∑€®†Ω¨⁄øπ•±
å‚∂ƒ©ªº∆@œæ
\≈ç√∫~µ∞…–
---
≥¬”#£ﬁ^\˜·¯˙˚
»„‰¸˝ˇÁÛØ∏°’
ÅÍ™ÏÌÓıˆﬂŒÆ
‡ÙÇ◊‹›˘˛÷—
\fi

There is a short command \Lcs{Lssxx}\Largb{text} for the four stylistic sets, 
where xx is the number of the set (two digits)
and \textit{text} the local argument:

\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  force=true,
  usefancyvrb,
  runs=2,code,docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
\parindent=0pt
%StartVisiblePreamble
\usepackage{bonum-otf}
%StopVisiblePreamble
\begin{document}
εμφ πρθ Īī@©⁄¶® ̄ $\rightarrow$ \Lss01{εμφ πρθ Īī@©⁄¶® ̄}\par
@©⁄¶® $\rightarrow$ \Lss02{@©⁄¶®}\par
εμφπρθ $\rightarrow$ \Lss03{εμφ πρθ}\par
Īī̄ $\rightarrow$ \Lss04{Īī̄}\par
\end{document}
\end{externalDocument}

For a global change of the stylistic set one can use the command \Lcs{LSSxx}, where xx
is again the number of the set.

\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  usefancyvrb,
  force=true,
  runs=2,code,docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage{bonum-otf}
%StopVisiblePreamble
\begin{document}
εμφ πρθ Īī@©⁄¶® ̄ $\rightarrow$ \LSS01 εμφ πρθ Īī@©⁄¶® ̄
\end{document}
\end{externalDocument}



\begin{externalDocument}[
  frame,compiler=lualatex,
  crop,
  force=true,
  usefancyvrb,
  runs=2,code,docType=latex,
  frame,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage{bonum-otf}
%StopVisiblePreamble
\begin{document}
@©⁄¶® $\rightarrow$ \LSS02 @©⁄¶®
\end{document}
\end{externalDocument}

\iffalse
≤¡“¶¢[]|{}≠¿'
«∑€®†Ω¨⁄øπ•±
å‚∂ƒ©ªº∆@œæ
\≈ç√∫~µ∞…–
---
≥¬”#£ﬁ^\˜·¯˙˚
»„‰¸˝ˇÁÛØ∏°’
ÅÍ™ÏÌÓıˆﬂŒÆ
‡ÙÇ◊‹›˘˛÷—
\fi


%\section{New text macros}
%
%\Lcs{textsup}\Largb{text} for superiors:
%
%\begin{verbatim}
%7\textsup{th} floor 
%\end{verbatim}

%7\textsup{th} floor 


\section{Font commands}
Instead of using the command \Lcs{fontspec} for changing to a different type of
a bonum font, one can use a predefinded command:

\begin{verbatim}
\bonum  (default)
\bonumOsF  (Old style proportional figures)
\bonumTLF  (tabular lining figures)
\end{verbatim}

\begin{externalDocument}[
  frame,compiler=lualatex,
  crop,
  force=true,
  usefancyvrb,
  runs=2,code,docType=latex,
  frame,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage{bonum-otf}
%StopVisiblePreamble
\begin{document}
The default setting with 123456. \bonumOsF Now with 123456 and
\bonumTLF now with 123456 \bonum and back to the default 123456.
\end{document}
\end{externalDocument}





\section{Math mode}


%bash-3.2$ otfinfo -f --script=math texgyrebonum-math.otf 
%aalt	Access All Alternates
%dtls	<unknown feature>
%ssty	<unknown feature>


\subsection{Example for bonum math}


\noindent\fbox{%
\begin{minipage}{\dimexpr\textwidth-2\fboxsep-2\fboxrule}
\textbf{Theorem 1 (Residue Theorem).}
Let $f$ be analytic in the region $G$ except for the isolated singularities $a_1,a_2,\ldots,a_m$. If $\gamma$ is a closed rectifiable curve in $G$ which does not pass through any of the points $a_k$ and if $\gamma\approx 0$ in $G$ then
%
\[
\mathop{\symup{Res}}\limits_{z=a}f(z) = \mathop{\mathrm{Res}}\limits_a f 
  = \frac{1}{2\pi\symup{i}} \int\limits_C f(z)\,\symup dz,
\]
%
where $C\subset D\backslash\{a\}$ is a closed line 
$ n(C,a)=1$ (e.\,g. a counterclockwise circle loop).

\medskip  
$\symup{A} \Lambda \Delta \nabla \symup{B C D} \Sigma \symup{E F} \Gamma \symup{G H I J} K L M N O
    \Theta \Omega \symup{P} \Phi \Pi \Xi \mathtt{Q R S T} U V W X Y \Upsilon \Psi \symup{Z}$ 
$\mathsf{ABCDabcd1234}$

$a\alpha b \beta c \partial d \delta e \epsilon \varepsilon f \zeta \xi g \gamma h \hbar \iota i \imath j
k \kappa l \ell \lambda m n \eta \theta \vartheta o \sigma \varsigma \phi \varphi \wp p
\rho \varrho q r s t \tau \pi u \mu \nu v \upsilon w \omega \varpi $ 

$xyz \infty \propto \emptyset y=f(x)$ 
\hfill$\sum\int\prod\displaystyle~\prod\int\sum~
 \textstyle\sum_a^b\int_a^b\prod_a^b~ \displaystyle\sum_a^b\int\limits_a^b\prod_a^b$

\boldmath
$\symup{A} \Lambda \Delta \nabla \symup{B C D} \Sigma \symup{E F} \Gamma \symup{G H I J} K L M N O
    \Theta \Omega \symup{P} \Phi \Pi \Xi \mathtt{Q R S T} U V W X Y \Upsilon \Psi \symup{Z}$ 
$\mathsf{ABCDabcd1234}$

$a\alpha b \beta c \partial d \delta e \epsilon \varepsilon f \zeta \xi g \gamma h \hbar \iota i \imath j
k \kappa l \ell \lambda m n \eta \theta \vartheta o \sigma \varsigma \phi \varphi \wp p
\rho \varrho q r s t \tau \pi u \mu \nu v \upsilon w \omega \varpi $ 

$xyz \infty \propto \emptyset y=f(x)$ 
\hfill$\sum\int\prod\displaystyle~\prod\int\sum~
 \textstyle\sum_a^b\int_a^b\prod_a^b~ \displaystyle\sum_a^b\int\limits_a^b\prod_a^b$
\unboldmath
\end{minipage}}


There exists an optional argument \texttt{math} for setting features only for the math font,
for example \texttt{+aalt} for slightly wider characters:


\begin{externalDocument}[
%  grfOptions={width=0.5\linewidth},
  frame,compiler=lualatex,
  crop,
  force=true,
  runs=2,code,docType=latex,
  frame,
%  showFilename,
%  align=\centering,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage{bonum-otf}
%StopVisiblePreamble
\begin{document}
 $\alpha\beta\gamma\delta\Delta\epsilon\varepsilon\zeta
 \eta\theta\Theta\vartheta\iota\kappa\lambda\Lambda\mu
 \nu\xi\Xi\pi\Pi\varpi\rho\varrho\sigma\Sigma\varsigma
 \tau\upsilon\Upsilon\phi\Phi\varphi\chi\psi\Psi\omega
 \Omega$

{\setmathfont[Script=Math,RawFeature=+aalt]{texgyrebonum-math.otf}
 $\alpha\beta\gamma\delta\Delta\epsilon\varepsilon\zeta
 \eta\theta\Theta\vartheta\iota\kappa\lambda\Lambda\mu
 \nu\xi\Xi\pi\Pi\varpi\rho\varrho\sigma\Sigma\varsigma
 \tau\upsilon\Upsilon\phi\Phi\varphi\chi\psi\Psi\omega
 \Omega$
} 
\end{document}
\end{externalDocument}



\subsection{Integrals}
If you do not like the small integral symbols from bonum then use the package
option \Loption{libertinus}. Then these symbols are taken from Libertinus Math.


\begin{externalDocument}[
  frame,compiler=lualatex,
  crop,
  force=true,
  runs=2,code,docType=latex,
  frame,
  usefancyvrb,
%  lstOptions={columns=flexible}
]{bonum}
\documentclass{article}
\pagestyle{empty}
%StartVisiblePreamble
\usepackage[libertinus]{bonum-otf}% use integrals from Libertinus
%StopVisiblePreamble
\begin{document}
The integrals from Libertinus Math:
\[ \int_\gamma\iint\iiint\iiiint\oint\oiint\oiiint\frac{f(x)}{z-a} \]

The default integrals from bonum:
\setmathfont{texgyrebonum-math.otf}
\[ \int_\gamma\iint\iiint\iiiint\oint\oiint\oiiint\frac{f(x)}{z-a} \]
\end{document}
\end{externalDocument}









\clearpage
\newgeometry{margin=1cm,bmargin=2cm}

\section{The font list of bonum Regular}

\begin{multicols}{5}
\begin{luacode*}
  local f = fontloader.open('/Users/voss/Links/fonts/opentype/public/tex-gyre/texgyrebonum-regular.otf')
  print("Max glyphs: "..f.glyphmax)
  local glyphs = {}
  for i = 0, f.glyphmax - 1 do
	local g = f.glyphs[i]
	if g then
  	  table.insert(glyphs, {name = g.name, unicode = g.unicode})
	end
  end
  table.sort(glyphs, function (a,b) return (a.unicode < b.unicode) end)
  for i = 1, #glyphs do
    tex.sprint('\\scriptsize'..glyphs[i].unicode .. ': ')
    if (glyphs[i].unicode > 0) then
      tex.sprint('{\\char' .. glyphs[i].unicode .. '}');
    end
    tex.sprint(' {\\scriptsize (')
    tex.sprint(-2, glyphs[i].name)
    tex.sprint(')}\\\\')
  end
  fontloader.close(f)
\end{luacode*}
\end{multicols}




\section{The font list of bonum Math}


\begingroup
\catcode`\%=12
\gdef\perCent{%}
\endgroup

%\UnicodeMathSymbol{"00021}{\mathexclam               }{\mathclose}{exclamation mark}%
\begin{multicols}{3}
\def\UnicodeMathSymbol#1#2#3#4{\scriptsize\texttt{#1}: $#2{}$  (#4) \\}
\input{unicode-math-table}
\end{multicols}


\clearpage\restoregeometry

\printindex




\end{document}
