summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/onedown/examples
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/onedown/examples
Initial commit
Diffstat (limited to 'macros/latex/contrib/onedown/examples')
-rw-r--r--macros/latex/contrib/onedown/examples/Bidding.tex244
-rw-r--r--macros/latex/contrib/onedown/examples/Compass.tex139
-rw-r--r--macros/latex/contrib/onedown/examples/ExpertQuiz.tex77
-rw-r--r--macros/latex/contrib/onedown/examples/Hands.tex41
-rw-r--r--macros/latex/contrib/onedown/examples/Languages.tex46
-rw-r--r--macros/latex/contrib/onedown/examples/Legends.tex84
-rw-r--r--macros/latex/contrib/onedown/examples/Play.tex80
-rw-r--r--macros/latex/contrib/onedown/examples/Select-Hands.tex56
-rw-r--r--macros/latex/contrib/onedown/examples/Suits.tex65
-rw-r--r--macros/latex/contrib/onedown/examples/Wrapping.tex98
-rw-r--r--macros/latex/contrib/onedown/examples/bidAll.tex69
-rw-r--r--macros/latex/contrib/onedown/examples/bidEW.tex51
-rw-r--r--macros/latex/contrib/onedown/examples/bidNE.tex45
-rw-r--r--macros/latex/contrib/onedown/examples/bidNS.tex95
-rw-r--r--macros/latex/contrib/onedown/examples/bidNW.tex39
-rw-r--r--macros/latex/contrib/onedown/examples/onedown-examples.pdfbin0 -> 847441 bytes
-rw-r--r--macros/latex/contrib/onedown/examples/onedown-examples.tex172
-rw-r--r--macros/latex/contrib/onedown/examples/onedown-ref.pdfbin0 -> 210831 bytes
-rw-r--r--macros/latex/contrib/onedown/examples/onedown-ref.tex465
-rw-r--r--macros/latex/contrib/onedown/examples/showAll.tex140
-rw-r--r--macros/latex/contrib/onedown/examples/showNS-align.tex39
-rw-r--r--macros/latex/contrib/onedown/examples/showNS-warn-I.tex29
-rw-r--r--macros/latex/contrib/onedown/examples/showNS-warn-II.tex59
23 files changed, 2133 insertions, 0 deletions
diff --git a/macros/latex/contrib/onedown/examples/Bidding.tex b/macros/latex/contrib/onedown/examples/Bidding.tex
new file mode 100644
index 0000000000..18ca0f7c3c
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Bidding.tex
@@ -0,0 +1,244 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+%
+The first diagram reflects the default: the first column is for \west,
+full names are shown, the alignment is \textbf{c} and the long form is
+used: The lowercase |p| yields \Xfer{p} and an uppercase |P| yields
+\Xfer{P}. |X| yields \Xfer{X} and |R| yields \Xfer{R}. One can use
+'mixed-mode' for the entries in the table: both the abreviation |C| or the
+command |\Cl| for clubs are possible. \OneDown takes care of the spacing
+between the rank and the nomination, so you do not have to fiddle around
+with |\thinspace|, |\,| or the like.
+
+In the second diagram we use the short form of the non-bid calls, by
+calling |\setdefaults{bidlong=off}|.
+The alignment is \textbf{t} and we have put \north in the first column.
+Please observe that the change to |bidfirst=N| is made local by the
+surrounding |{...}|
+
+In the third diagram we also use the short form for the table header by
+calling the bidding table with the token |!|. The alignment is \textbf{b}.
+
+In the first example we also added an |\alert| and an |\announce|, just to
+show their layout.
+\vfill
+%
+\begin{HBox}{{bidding, alignment and long/short forms}\hfill File: \FileName}
+%\gamefont{\smaller\smaller}
+A
+\begin{bidding}% default= [c]
+1\Cl\announce & 1D & 1H & 1S\alert \\
+1N & X & p & p \\
+R & P \\
+\end{bidding}
+B
+\\[2\baselineskip]
+A
+{
+\setdefaults{bidlong=off,bidfirst=N}
+\begin{bidding}[t]
+1C & 1D & 1H & 1S \\
+1N & X & p & p \\
+R & P \\
+\end{bidding}
+}B
+\\[2\baselineskip]
+A
+%\setdefaults{bidlong=off}
+\begin{bidding}![b]
+1C & 1D & 1H & 1S \\
+1N & X & p & p \\
+R & p & p & p \\
+\end{bidding}
+B
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+We now show bidding diagrams with the real names of the players. In every
+of the four diagrams we have a different first column. Please observe that
+the association of the individuals with the \north, \east etc.\
+direction is preserved.
+\vfill
+\begin{HBox}{{bidding, names and first column}\hfill File: \FileName}
+\namesNS{Jan}{Joris}
+\namesEW{Piet}{Corneel}
+\setdefaults{bidfirst=N}
+\begin{bidding}
+1S & p & 3C & p\\
+3D & p & 3H & p\\
+3S & p & p & p\\
+\end{bidding}
+\par\hrulefill\par
+\setdefaults{bidfirst=E}
+\begin{bidding}
+1S & p & 3C & p\\
+3D & p & 3H & p\\
+3S & p & p & p\\
+\end{bidding}
+\par\hrulefill\par
+\setdefaults{bidfirst=S}
+\begin{bidding}
+1S & p & 3C & p\\
+3D & p & 3H & p\\
+3S & p & p & p\\
+\end{bidding}
+\par\hrulefill\par
+\setdefaults{bidfirst=W}
+\begin{bidding}
+1S & p & 3C & p\\
+3D & p & 3H & p\\
+3S & p & p & p\\
+\end{bidding}
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+Here we show the bidding diagram for only 2 bidders, with 4 different first
+columns. Observe that also here the real names stay in connection with
+their directions.
+\vfill
+\begin{HBox}{{biddingpairs, names and first column}\hfill File: \FileName}
+\namesNS{Jan}{Piet}
+\namesEW{Joris}{Corneel}
+\setdefaults{bidfirst=N}
+\begin{biddingpair}
+1S & 3C \\
+3D & 3H \\
+3S & p \\
+\end{biddingpair}
+\par\hrulefill\par
+\setdefaults{bidfirst=E}
+\begin{biddingpair}
+1S & 3C \\
+3D & 3H \\
+3S & p \\
+\end{biddingpair}
+\par\hrulefill\par
+\setdefaults{bidfirst=S}
+\begin{biddingpair}
+1S & 3C \\
+3D & 3H \\
+3S & p \\
+\end{biddingpair}
+\par\hrulefill\par
+\setdefaults{bidfirst=W}
+\begin{biddingpair}
+1S & 3C \\
+3D & 3H \\
+3S & p \\
+\end{biddingpair}
+\end{HBox}
+%
+\vfill
+\needspace{8\baselineskip}
+The next example shows how one can put a marker to a call with |\markit|
+and refer to it with by calling |\explainit|.
+These explanations must appear in the
+optional argument of the bidding table. You yourself are responsible that
+the order in which they appear corresponds with the order of the markers.
+The explanations are typeset like a footnote mechanism below the table and
+they will never extend beyond the right edge of the table, as you can see
+in the 2nd diagram. The width in a biddingpair table is even more limited,
+that's the reason why we use raggedright to obtain a result that is
+typographically acceptable. The last diagram shows that we can get an
+annotation without the need for |\markit| or |\explainit|.
+
+\vfill
+\begin{HBox}{bidding with (very long) annotation\hfill File: \FileName}
+\begin{bidding}(%
+ \explainit{Bergen}
+ \explainit{How strong?}
+ \explainit{Minimum hand})
+1\Sp & p & 3C\markit & p\\
+3D\markit & p & 3H\markit & p\\
+3S & p & p & p\\
+\end{bidding}
+\par\vspace{2\baselineskip}\noindent
+\begin{bidding}(%
+ \explainit{Here we have a very very
+ long annotation that does
+ not fit on one line})
+1\Sp & p & 3C\markit & p\\
+\end{bidding}
+\par\vspace{2\baselineskip}\noindent
+\begin{biddingpair}(%
+ \explainit{Here we have a very very
+ long annotation that does
+ not fit on one line})
+1S & 3C\markit \\
+\end{biddingpair}
+\qquad
+\begin{biddingpair}(%
+ no explain/markit here but still an annotation)
+1S & 3C \\
+\end{biddingpair}
+
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+In this examples we'll change some fonts to see what it accomplishes.\\
+By default the bidderfont is |\mdseries\sffamily| and the namefont is
+|\mdseries\slshape|, as you can clearly see in the header of the bidding
+diagram.
+\begin{itemize}[itemsep=0em]
+\item |\gamefont{...\Large}| enlarges everything, also where other fonts are
+active, e.g.\ in the header. (1st diagram)
+\item |\scalefont| scales all fonts, not only the |\gamefont|
+controlled stuff. (2nd diagram)
+\item If you change only the \emph{size} of e.g.\ the |\namefont|,
+without giving a font description, you 'lose the font' and the current font
+will be used instead of |namefont|. In diagrams most of the time this will
+be the |gamefont|. (3rd diagram)
+\end{itemize}
+We also used |\setdefaults{bidline=1}| to separate the header of the
+bidding table from the bidding sequence with a |\hline|.
+%
+\vfill
+\begin{HBox}{Same but with changed font\hfill File: \FileName}
+\gamefont{\sffamily\bfseries\Large}
+\setdefaults{bidline=1}
+\begin{bidding}[c](\explainit{Bergen})
+1S & p & 3C\markit & p\\
+3D & p & 3H & p\\
+3S & p & p & p\\
+\end{bidding}
+
+\gamefont{\sffamily\bfseries\normalsize}
+\gamefont{\sffamily\scalefont{2}}
+\begin{biddingpair}[c]%
+ (\explainit{Bergen})
+1S & 3C\markit \\
+3D & 3H \\
+3S & p \\
+\end{biddingpair}
+
+\gamefont{\sffamily\bfseries\normalsize}
+\namefont{\smaller}
+\begin{bidding}(\explainit{Bergen})
+1S & p & 3C\markit & p\\
+3D & p & 3H & p\\
+3S & p & p & p\\
+\end{bidding}
+\setdefaults{bidline=off}
+\end{HBox}
+\vfill
+Normally one uses shorthands in bidding tables. We already showed that one
+can use macros calls like |\Cl|. If a macro uses tokens, or if a shorthand
+appears as argument of another macro, one has to be careful. Note that the
+first entry (|\frame{2H}|) of row 2 does not produce the correct result,
+but |{\frame{2\He}}| does: We have to enclose these specials in braces
+(|{...}|) and not use the shorthand notation.
+\vfill
+\begin{HBox}{Special effects\hfill File: \FileName}
+\namesNS{}{}\namesEW{}{}
+\begin{bidding}
+p & X & R & P \\
+{\frame{2H}} & {\frame{2\He}} &
+{\textit{R}} & {\textit{\redouble}} \\
+{\Pass*!} & {\Redouble*!} & \Allpass\\
+\end{bidding}
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/Compass.tex b/macros/latex/contrib/onedown/examples/Compass.tex
new file mode 100644
index 0000000000..7cd46ecc79
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Compass.tex
@@ -0,0 +1,139 @@
+\documentclass[onedown-examples]{subfiles}
+%\usepackage{forloop}
+
+\gamefont{\larger\larger}
+\newcounter{Nr}
+\newcounter{Tmp}
+\makeatletter
+ \def\CP{\ODw@Compass}
+\makeatother
+
+\begin{document}
+\noindent
+Here we show the 16 possible combinations of dealership and vulnerability.
+We use the default |colors=2| (|black & red|) and so the vulners appear in
+red. The command |\CP| is defined in the preamble.
+\par\vspace{1em}\noindent
+%
+
+\begin{VBox}{The 16 combinations of dealer/vulner\hfill File: \FileName}
+\centering
+\setdefaults{compsize=1.3,compmid=\boardtext}
+\begin{tabular}{ll|ll}
+\forloop{Nr}{1}{\value{Nr} < 9}{%
+ \boardnr{\theNr} \theNr: \dealertext\vulnertext & \CP &%
+ \setcounter{Tmp}{8 + \theNr}%
+ \boardnr{\theTmp} \theTmp: \dealertext\vulnertext & \CP \\
+}
+\end{tabular}
+\end{VBox}
+\vfill
+\needspace{15\baselineskip}
+\vfill
+With |\setdefaults| we can influence the look of the compass in detail. The
+keys that control this are |compline| to set the thickness of the frame,
+|compshow| to hide/show the compass, |compsize| to multiply the compass
+size with a factor and |compturn| with which the letter 'E' and 'W' can be
+rotated over 90°. With the key |compass| one can set the font that is used
+for the letters in the compass.
+
+First we enlarge the compass 1.5$\times$. Note that this does influence
+neither the fontsize nor the frame thickness. Then we enlarge the fonsize.
+As you see, this does influence the size of the compass too. Finally
+the set the size factor back to 1. Notice the difference with the second
+compass.
+\vfill
+\begin{HBox}{controlling the compass I\hfill File: \FileName}
+\CP
+\setdefaults{compsize=1.5}\CP
+\setdefaults*{compass=\Large}\CP
+\setdefaults{compsize=1}\CP
+\end{HBox}
+\vfill
+As you see, we can make the frame very thick, very thin or let it
+disappear completely when we use factor 0.
+\vfill
+\begin{HBox}{controlling the compass II\hfill File: \FileName}
+\setdefaults{compsize=1.5}\CP
+\setdefaults{compline=3}\CP
+\setdefaults{compline=0.1}\CP
+\setdefaults{compline=0}\CP
+\end{HBox}
+\vfill
+If you watch the first compass carefully, you'll notice (maybe you must
+enlarge it to see what is meant) that the small |x| is exactly in the
+middle of the compass. Nevertheless the impressesion is that the |x| is
+closer to the '|W|'. This is because a '|W|' is wider than an '|E|'.
+It simply looks unbalanced. We can diminish this by enlarging the compass.
+Another trick is to rotate the |W| and |E| 90°, as shown in the third
+compass. In the second line we see a diagram with compass, but its
+frame is supressed. Finally we see a diagram where the total compass is
+suppressed. For clarity's sake we have added the \east and \west hand.
+\vfill
+\begin{HBox}{controlling the compass III\hfill File: \FileName}
+\boardnr{0}
+\setdefaults{compsize=1,compmid=x}\CP
+\setdefaults{compsize=1.5}\CP
+\setdefaults{compsize=1,compturn=on}\CP
+\setdefaults{compturn=off,compline=0}
+\gamefont{\footnotesize}
+\easthand{JT6}{764}{K43}{JT32}
+\westhand{Q952}{K92}{762}{AQ7}
+\showEW\hfill
+\setdefaults{compshow=off}
+\showEW
+\end{HBox}
+\vfill
+On the next page we show the compass for all available sizes. In order to
+get all diagrams in one color box, we combined the smallest with the
+largest etc. The first line gets out of the frame, but you'll get the idea
+all the same. Using |\scalefont| you can get even bigger diagrams.
+\vfill
+\begin{HBox}{onesuitAll for all sizes\hfill File: \FileName}
+\setdefaults{compshow=on}
+\gamefont{\sffamily\bfseries\tiny}
+\setdefaults{compmid=~t}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+\gamefont{\sffamily\bfseries\HUGE}
+\setdefaults{compmid=U}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+%
+\gamefont{\sffamily\bfseries\ssmall}
+\setdefaults{compmid=~s}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+\gamefont{\sffamily\bfseries\Huge}
+\setdefaults{compmid=H}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+%
+\gamefont{\sffamily\bfseries\scriptsize}
+\setdefaults{compmid=c}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+\gamefont{\sffamily\bfseries\huge}
+\setdefaults{compmid=h}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+%
+\gamefont{\sffamily\bfseries\footnotesize}
+\setdefaults{compmid=f}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+\gamefont{\sffamily\bfseries\LARGE}
+\setdefaults{compmid=A}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+%
+\gamefont{\sffamily\bfseries\small}
+\setdefaults{compmid=s}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+\gamefont{\sffamily\bfseries\Large}
+\setdefaults{compmid=L}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+%
+\gamefont{\sffamily\bfseries\normalsize}
+\setdefaults{compmid=n}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+\gamefont{\sffamily\bfseries\large}
+\setdefaults{compmid=l}
+\onesuitAll!{JT62}{AK53}{87}{Q94}
+\setdefaults{compmid=}
+\end{HBox}
+\vfill
+\end{document}
+\endinput
diff --git a/macros/latex/contrib/onedown/examples/ExpertQuiz.tex b/macros/latex/contrib/onedown/examples/ExpertQuiz.tex
new file mode 100644
index 0000000000..ad52dc9b29
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/ExpertQuiz.tex
@@ -0,0 +1,77 @@
+\documentclass[onedown-examples]{subfiles}
+\begin{document}
+\iffalse
+\newgame\setdefaults{bidfirst=W}
+\dealer[\east]\vulner[\eastwest]
+\hand!{Q952}{K32}{765}{AQ7}
+
+\begin{bidding}(\explainit{gameforcing}
+ \explainit{natural, 6-card ab ab ab ab ab ab})%
+ & & 2D\markit & 2H\markit \\
+p & 3H & 4D & p \\
+? \\
+\end{bidding}
+
+\makeatletter
+ :\usebox\ODw@BidBox:
+\makeatother
+
+
+
+\begin{biddingpair}(\explainit{game forcing}
+ \explainit{natural, 6-card})%
+ 2D\markit & 2H\markit \\
+ 3H & 4D \\
+? \\
+\end{biddingpair}
+
+\makeatletter
+ :\usebox\ODw@BidBox:
+\makeatother
+\fi
+\vfill
+A special feature of \OneDown is the so called |expertquiz|. It essentially
+displays a hand with a (partial) bidding sequence. The reader has to guess
+the best next bid with respect to the hand and the bidding so far. The
+different answers are rewarded with points.
+
+Observe the token '\textbf{-}' in |\hand-| and |\begin{bidding}-| that
+suppresses the output.
+
+With the optional argument we add some extra information to the quiz.
+\vfill
+\begin{HBox}{expertquiz \hfill File: \FileName}
+\newgame\setdefaults{bidfirst=W}
+\dealer[\east]\vulner[\eastwest]
+\hand!-{Q952}{K32}{765}{AQ7}
+\begin{bidding}-(\explainit{gameforcing}
+ \explainit{natural, 6-card})%
+ & & 2D\markit & 2H\markit \\
+p & 3H & 4D & p \\
+? \\
+\end{bidding}
+\expertquiz[Team: \dealertext, \vulnertext]{%
+ 4\He= 10, 4\Sp= 7,
+ 6\Di= 4,
+ 4\NT/5\NT= 3, 5\Di=~1
+}
+\end{HBox}
+\vfill
+Here we show the same quiz, but the layout resembles the one used by the
+DBV\footnote{German Bridge League} in their monthly, called \emph{Bridge
+Magazin}. We get this special layout by using the token '\textbf{!}'. Of
+course we set it in the German language.
+\vfill
+\begin{HBox}{expert quiz a la DBV\hfill File: \FileName}
+\begin{otherlanguage}{german}
+\expertquiz![Team: \dealertext, \vulnertext]{%
+ 4\He= 10, 4\Sp= 7,
+ 6\Di= 4,
+ 4\NT/5\NT= 3, 5\Di= 1
+}
+\end{otherlanguage}
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/Hands.tex b/macros/latex/contrib/onedown/examples/Hands.tex
new file mode 100644
index 0000000000..f40721a3a0
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Hands.tex
@@ -0,0 +1,41 @@
+\documentclass[onedown-examples]{subfiles}
+\newgame
+\begin{document}
+~
+\vfill
+In the first example we show how the cards of a hand are entered. The hand
+can be displayed horizontally or vertically. It can also be centered. In
+general the token |*| will center the diagram, whereas the token |!| does
+something special. With the command |\hand| the token |*| switches between
+the horizontal and vertical mode. In other situations the token |*| can
+force the output of a short notation. With non-diagram commands the token
+|*| prints the full expression rather than an abreviation. The token |!| outputs the hand
+vertically. Please note that we enter a |T| to get e.g.\ \suit{JT9}.
+Entering |10| would yield \suit{J109}, which looks really awful.
+\vfill
+\begin{HBox}{{single hand (hor/vert)+(left/centered)
+ \hfill File: \FileName}}
+
+ horizontal \par\noindent
+\hand{AQT2}{KQ3}{J98}{T98}
+
+ horizontal centered \par\noindent
+\hand*{AQT2}{KQ3}{J98}{T98}
+
+ vertical \par\noindent
+\hand!{AQT2}{KQ3}{J98}{T98}
+
+ vertical centered \par\noindent
+\hand*!{AQT2}{KQ3}{J98}{T98}
+
+\end{HBox}
+%
+\vfill
+This example shows how a mistake in entering the cards is detected.
+\vfill
+\begin{HBox}{{single hand with error\hfill File: \FileName}}
+\hand!{AQT2}{KKQ3}{J98}{T98}
+\end{HBox}
+\vfill
+\end{document}
+
diff --git a/macros/latex/contrib/onedown/examples/Languages.tex b/macros/latex/contrib/onedown/examples/Languages.tex
new file mode 100644
index 0000000000..568f8d0c2a
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Languages.tex
@@ -0,0 +1,46 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+As a demonstration of the multilingual features of the \OneDown package we
+show a diagram with turkish annotations. \\
+Note:\\
+Due to an quirk in the babel implementation of the turkish and some
+other language, you must either call |\shorthandoff{=!}| after loading the
+language, or load it with e.g.\ \\
+|\usepackage[turkish,shorthands=]{babel}|.
+
+Refer to the \OneDown manual for details.
+\vfill
+\begin{HBox}{Languages (Turkish)\hfill File: \FileName}
+\boardnr{32}
+\northhand{AK43}{AJ98}{AQJ8}{4}
+\southhand{87}{QT5}{432}{K9865}
+\easthand{JT6}{764}{KT9}{JT32}
+\westhand{Q952}{K32}{765}{AQ7}
+\leftupper{\boardtext*}%
+ {\dealertext}{\vulnertext}
+\rightupper[1ex]{\contract: }%
+ {3\,\NT}{\by \south}
+\rightlower[1ex]{\lead: \Di 7}{}{}
+\begin{otherlanguage}{turkish}
+\showAll*
+\end{otherlanguage}
+\end{HBox}
+\vfill\noindent
+Here we switch to the Norwegian language. As we use the same settings for the
+diagram, we simply call |\showAll| to display it, after we changed the
+language. The Jack is coded with \foreignlanguage{norsk}{\jack{}}
+rather than \jack, so the hand is now closer to the right upper legend. (We already discussed ways
+to solve this!)
+\vfill
+%
+\begin{HBox}{Languages (Norwegian)\hfill File: \FileName}
+\begin{otherlanguage}{norsk}
+\showAll*
+\end{otherlanguage}
+\end{HBox}
+\vfill
+%
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/Legends.tex b/macros/latex/contrib/onedown/examples/Legends.tex
new file mode 100644
index 0000000000..9d9f603eed
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Legends.tex
@@ -0,0 +1,84 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\vfill
+In this section we will investigate how we can add certain annotations to
+card diagrams. We start with |\newgame| and |\resetfonts| in order to
+`forget the past'.
+
+With |\dealer| one can denote which player is the dealer and
+with |\vulner| which side is vulnerable. This data is stored and with
+|\dealertext| (or |\vulnertext|) one can retrieve it. The macros
+|\leftupper| (and also the |right-| and the |lower-| versions) puts its 3
+arguments, each on its own line, in the diagram. If you wonder why we use
+the command |\by| instead the text |by| in |\rightupper|: |\by| gets
+automatically translated into the active language.\par\noindent
+If you look at the diagram, you will notice that the \emph{left}- and \emph{right}-annotations can
+extend to the left of the \west hand and the right of the \east hand.
+\vfill
+\begin{HBox}{Annotations\hfill File: \FileName}
+\newgame\resetfonts
+\northhand{AK43}{AJ98}{AQJ}{54}
+\southhand{87}{QT5}{8432}{K986}
+\easthand{JT6}{764}{KT9}{JT32}
+\westhand{Q952}{K32}{765}{AQ7}
+\dealer[\east]\vulner[\eastwest]
+\leftupper{\dealertext}{}{\vulnertext}
+\rightlower{}{\lead: \Di 7}{}
+\rightupper{\contract: 3\,\NT}{\by \south}{}
+\showAll
+\end{HBox}
+\vfill
+In the next example we show all possible annotations. Here you can see that
+the |\upper-|versions align the text with the topline, whereas the
+|\lower-|versions align with the bottomline. Because the legendfont
+can differ from the gamefont and the rows in a hand get some extra space,
+the legend lines will normally not align with the rows of a hand.
+
+ We can add an offset (as shown in section showAll) to the \west hand in order to make the hand align to
+the left with the left-upper legend. But this enlarges the gap between the
+\west hand and the compass. It is perhaps better to have only very short
+legends. But it is up to you to decide that.
+\vfill
+\begin{HBox}{Legends: full overview\hfill File: \FileName}
+\leftupper{LUp:Line 1}{and line2}{last Line}
+\rightupper{RUp:Line 1}{and line2}{last Line}
+\leftlower{LLo:Line 1}{and line2}{last Line}
+\rightlower{RLo:Line 1}{and line2}{last Line}
+\headlinetext{Here you put some headtext\ldots\par on 2 lines}
+\footlinetext{\ldots here goes foottext}
+\showAll
+\end{HBox}
+\needspace{8\baselineskip}
+\vfill
+The next examples show wich legends are output/suppressed for the other
+card diagrams. Note also that the \emph{head/foot}-linetext does not extend beyond the
+width of the diagram, and can get real narrow when only the
+\NorthSouth*!-hands are shown. In that case it might be better to put a |\raggedright|
+in. If you do so, then don't forget to |\protect| it.
+\vfill
+\begin{HBox}{{Legends for: \northsouth: may need \emph{raggedright}\hfill File: \FileName}}
+\showNS
+
+\hrulefill
+
+\headlinetext{\protect\raggedright Here you put some headtext\ldots\par on 2 lines}
+\footlinetext{\protect\raggedright \ldots here goes foottext}
+\showNS
+\end{HBox}
+\vfill
+\begin{HBox}{{Legends: \north-\east, \north-\west, \east-\west\hfill File: \FileName}}
+
+\showNE
+
+\hrulefill
+
+\showNW
+
+\hrulefill
+
+\showEW
+\end{HBox}
+\vfill
+\end{document}
+\endinput
diff --git a/macros/latex/contrib/onedown/examples/Play.tex b/macros/latex/contrib/onedown/examples/Play.tex
new file mode 100644
index 0000000000..7c0a157d3d
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Play.tex
@@ -0,0 +1,80 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+Here we show the playing tricks diagram. For the user, the environment |play| is like a 4
+column table. Its mandatory argument denotes the player with the opening
+lead. With the optional argument the user can specify the trump suit. The
+default is |N| for \NT. All leads must have a suit, although this is not
+checked by \OneDown. If a suit is
+followed, you don't have to repeat the suit: a rank suffices to specify the
+card. Of course at discards or when ruffed, the suit must be entered too.
+
+The |play| diagram has a special feature: it knows which player wins the
+trick and thus 1) you do not have to specify who has the lead, except of
+course the opening lead, and 2) it calculates (and displays) the tricks won
+by each side.
+\vfill
+\begin{HBox}{{Playing tricks table. Trump is \Cl\hfill File: \FileName}}
+\newgame\resetfonts
+\begin{play}{W}[C]
+ H3 & 4 & K & 6 \\
+ C3 & 5 & Q & 2 \\
+ H5 & 2 & A & 8 \\
+ C7 & D9 & J & K \\
+ S3 & 4 & Q & 6 \\
+ SA & C4 & 2 & T \\
+\end{play}
+\end{HBox}
+\vfill
+It is posible to use either the shorthands (|C, D, H, S|) for the suits as
+well as the code (e.g.\ |\Cl| itself, as you can see here. Refer to Bidding
+examples for further details.
+
+In the environment |play| the consistency of the cards played is checked. As
+an example the error about card \He\,5 (ocurring $2\times$ in the same trick)
+is reported.
+\vfill
+\begin{HBox}{{Same, but with suit commands\hfill File: \FileName}}
+\begin{play}{W}[C]
+ \He3 & 4 & K & 6 \\
+ \Cl3 & 5 & Q & 2 \\
+ \He5 & 5 & A & 8 \\
+ \Cl7 & \Di9 & J & K \\
+ \Sp3 & 4 & Q & 6 \\
+ \Sp A & K & 2 & T \\
+\end{play}
+\end{HBox}
+\vfill
+In the next example for a \NT contract, we have changed the language. Here
+the double occurence of \Cl\,6 in two different tricks is shown.
+\vfill
+\begin{HBox}{Playing tricks table for \NT in Dutch\hfill File: \FileName}
+\begin{otherlanguage}{dutch}
+\begin{play}{W}
+ C3 & Q & K & 2 \\
+ SJ & A & 4 & 2 \\
+ C4 & 6 & T & 5 \\
+ CA & ST & 6 & 9 \\
+ C7 & HT & D5 & S5 \\
+ D2 & T & 3 & 4 \\
+\end{play}
+\end{otherlanguage}
+\end{HBox}
+\vfill
+\vfill
+\begin{HBox}{The same table in German\hfill File: \FileName}
+\begin{otherlanguage}{german}
+\begin{play}{W}
+ C3 & Q & K & 2 \\
+ SJ & A & 4 & 2 \\
+ C4 & 6 & T & 5 \\
+ CA & ST & 6 & 9 \\
+ C7 & HT & D5 & S5 \\
+ D2 & T & 3 & 4 \\
+\end{play}
+\end{otherlanguage}
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/Select-Hands.tex b/macros/latex/contrib/onedown/examples/Select-Hands.tex
new file mode 100644
index 0000000000..51260bfb31
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Select-Hands.tex
@@ -0,0 +1,56 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\vfill
+Both the |\showNS| and |\showEW| have an extra optional parameter that
+controls which of the two hands will be printed and suppresses the other
+hand.
+\vfill
+\begin{HBox}{Select only one hand\hfill File: \FileName}
+\northhand{AK43}{AQJ83}{AJ98}{-}
+\southhand{87}{T5}{QT5}{K98654}
+\easthand{JT6}{764}{K43}{JT32}
+\westhand{Q952}{K92}{762}{AQ7}
+A \showNS(N) \quad B \showNS(S)
+
+C \showEW(E) \quad D \showEW(W)
+
+\end{HBox}
+\vfill
+The same, but here the compass is suppressed, showing only the selected hand
+\vfill
+\begin{HBox}{{Only hand, compass suppressed}\hfill File: \FileName}
+\setdefaults{compshow=off}
+\northhand{AK43}{AQJ83}{AJ98}{-}
+\southhand{87}{T5}{QT5}{K98654}
+\easthand{JT6}{764}{K43}{JT32}
+\westhand{Q952}{K92}{762}{AQ7}
+A \showNS(N) \quad B \showNS(S)
+
+C \showEW(E) \quad D \showEW(W)
+
+\end{HBox}
+
+\begin{HBox}{{Only \North*!-hands}\hfill File: \FileName}
+\newgame
+\setdefaults{compshow=on}
+\northhand{AK43}{AQJ83}{AJ98}{-} \showNS(N)
+\northhand{87}{T5}{QT5}{K98654} \showNS(N)\quad
+\northhand{JT6}{764}{K43}{JT32} \showNS(N)
+\northhand{Q952}{K92}{762}{AQ7} \showNS(N)
+\end{HBox}
+
+\begin{HBox}{{Only \North*!-hands, compass suppressed}\hfill File:
+\FileName}
+\newgame
+\setdefaults{compshow=off}
+\northhand{AK43}{AQJ83}{AJ98}{-} \showNS(N)
+\northhand{87}{T5}{QT5}{K98654} \showNS(N)\quad
+\northhand{JT6}{764}{K43}{JT32} \showNS(N)
+\northhand{Q952}{K92}{762}{AQ7} \showNS(N)
+\end{HBox}
+
+\end{document}
+\endinput
+
+
diff --git a/macros/latex/contrib/onedown/examples/Suits.tex b/macros/latex/contrib/onedown/examples/Suits.tex
new file mode 100644
index 0000000000..457ab27332
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Suits.tex
@@ -0,0 +1,65 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+
+Here we show a single suit, with and without a suit symbol. You can observe
+the influence of changing the |gamefont|.
+In the 1st suit, card 4 occurs $2\times$ and an error message is printed.
+In the last suit the same happens for card 5 but now the suit is known and
+is named in the error message.
+\vfill
+\begin{HBox}{suit and errors I\hfill File: \FileName}
+\suit{AKT544}\hspace{1cm}
+\suit[\He]{AKT54}
+\gamefont{\sffamily\bfseries\Large}
+\par\vspace{1\baselineskip}\noindent
+\suit{AKT54}\hspace{1cm}
+\suit[\He]{AKT54}
+\par\vspace{1\baselineskip}\noindent
+\suit[\He]{AKT554}
+\end{HBox}
+\vfill
+\noindent
+In the 3rd diagram card 8 occurs $2\times$. In the 4th diagram card 4 is
+missing and a warning is raised. Card 5, which occurs $2\times$, raises an
+error. Errors are shown by default, warnings must be activated first. These
+consistency checks make it easy to spot typos in your diagrams.
+\vfill
+\begin{HBox}{suits and errors II\hfill File: \FileName}
+\resetfonts
+\onesuitNS{AK53}{JT6}
+\qquad
+\onesuitEW{87}{Q952}
+\qquad
+\onesuitEW{87}{Q852}
+\par\vspace{0.5\baselineskip}\noindent
+\setdefaults{warn=on}
+\onesuitAll{AK53}{JT6}{87}{Q952}
+\end{HBox}
+\vfill
+The other 'onesuit' diagrams, using a small box.
+\vfill
+\begin{HBox}{onesuitXX with box\hfill File: \FileName}
+\setdefaults{warn=off}
+\onesuitNE{AK43}{87}
+\qquad
+\onesuitNE{AK43}{Q952}
+\end{HBox}
+\vfill
+Next we show how to use a compass instead of a small box by using token |!|.
+\vfill
+\begin{HBox}{onesuitXX with compass\hfill File: \FileName}
+\onesuitNS!{AK53}{JT6}
+\quad
+\onesuitEW!{87}{Q952}
+\quad
+\onesuitNE!{AK43}{87}
+\quad
+\onesuitNE!{AK43}{Q952}
+\quad
+\onesuitAll!{AK43}{JT6}{87}{Q952}
+\end{HBox}
+\needspace{8\baselineskip}
+\vfill
+\end{document}
+
diff --git a/macros/latex/contrib/onedown/examples/Wrapping.tex b/macros/latex/contrib/onedown/examples/Wrapping.tex
new file mode 100644
index 0000000000..753eea7685
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Wrapping.tex
@@ -0,0 +1,98 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\vfill
+The package \OneDown renounces to implement so called \emph{hanging hands}.
+To achieve such you will have to use external means, e.g.\ the package
+|wrapfig|. The advantage of an external package is that 1) you can wrap
+anything you like and 2) you have more control over the result. Here follow
+some examples to show how to do that.
+
+You need a new paragraph before the |wrapfig| stuff. For details, refer to
+the documentation of the package |wrapfig|.
+\vfill
+\begin{HBox}{Wrapping a hand\hfill File: \FileName}
+\blindtext
+
+\begin{wraptable}{l}{0cm}% nat. width
+\hand!{AQ852}{AKQ3}{-}{AQKJ}
+\end{wraptable}
+\blindtext
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+~
+\vfill
+\begin{HBox}{Wrapping a bidding table\hfill File: \FileName}
+\blindtext
+
+\begin{wraptable}{l}{0cm}% nat. width
+\begin{biddingpair}
+1S & 3S \\
+4S & 5S \\
+6S & p \\
+\end{biddingpair}
+\end{wraptable}
+\blindtext
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+With a small diagram there is enough space for the wrapped text.
+\vfill
+\begin{HBox}{{Wrapping a card diagram\hfill File: \FileName}}
+\newgame
+\blindtext
+
+\begin{wraptable}{l}{0cm}% nat. width
+\gamefont{\sffamily\bfseries\footnotesize}
+\northhand{AQ92}{873}{A54}{752}
+\southhand{J7543}{Q42}{63}{AKQ}
+\showNS
+\end{wraptable}
+\blindtext
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+With real big diagrams there is not enough space for the wrapped text.
+\vfill
+\begin{HBox}{{Show wrapping of hands, Large size\hfill File: \FileName}}
+Hello, here is some text without
+a meaning. This text should show
+what a printed text will look
+like at this place. If you read
+this text, you will get no
+information.
+
+\newgame
+\resetfonts
+\begin{wraptable}{l}{0cm}% nat. width
+\northhand{AQ92}{873}{A54}{752}
+\southhand{J7543}{Q42}{63}{AKQ}
+\gamefont{\sffamily\bfseries\scalefont{2.5}}
+\showNS
+\end{wraptable}
+\blindtext
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+With |\raggedright| or |RaggedRight| from package |ragged2e| it looks much
+better.
+\vfill
+\begin{HBox}{{Same, with RaggedRight\hfill File: \FileName}}
+\RaggedRight
+Hello, here is some text without
+a meaning. This text should show
+what a printed text will look
+like at this place. If you read
+this text, you will get no
+information.
+
+\begin{wraptable}{l}{0cm}% nat. width
+\showNS
+\end{wraptable}
+\blindtext
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/bidAll.tex b/macros/latex/contrib/onedown/examples/bidAll.tex
new file mode 100644
index 0000000000..24060a5263
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/bidAll.tex
@@ -0,0 +1,69 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\setdefaults{bidfirst=S}
+
+Here is a diagram with four hands. We get rid of the past by calling
+|\newgame|. Then we define our hands and set the first bid column to
+\south and we show only one pair of bidders. Because the bidding table
+does not fit on the same line, it appears below the compass.
+(In fact it actually would fit on the line. But to illustrate the point we
+used |\handskip| to widen the diagram a bit).
+Note that the token |-| in the |bidding| environment suppresses the output
+of it. Only when calling |\showAll+| (with a |+| token), the saved bidding
+diagram is printed together with the card diagram.
+
+\vfill
+\begin{HBox}{not fitting on the line\hfill File: \FileName}
+\newgame
+\handskip{2em}
+\northhand{KJ82}{KQ9}{J32}{JT8}
+\southhand{AQ953}{A85}{Q84}{K6}
+\easthand{T6}{764}{KT9}{Q5432}
+\westhand{74}{JT32}{A765}{A97}
+\setdefaults{bidfirst=S}
+\begin{biddingpair}-
+1S & 4S \\
+p & \\
+\end{biddingpair}
+\showAll+
+\end{HBox}
+\vfill
+Here the hands and the bidding are the same as previous, but the complete diagram
+(biddingtable inclusive) is centered and we use the short notation for the
+players in the bidding table (by using the token |!|).
+Being shorter now, the bidding table does fit on the same line.
+\vfill
+\begin{HBox}{centered and fitting\hfill File: \FileName}
+\setdefaults{bidfirst=S}
+\begin{biddingpair}!-
+1S & 4S \\
+p & \\
+\end{biddingpair}
+\showAll*+
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+The same deal, but now we show all bidders in the bidding table with the long notation.
+Again it is to wide to fit on the line.
+\vfill
+\begin{HBox}{left aligned\hfill File: \FileName}
+\begin{bidding}-(\explainit{15-17\HLP})
+p & p & P & 1S \\
+p & 2C & {\Pass*!} & 2N\markit \\
+p & 3N & {\Allpass!} \\
+\end{bidding}
+\showAll+
+\end{HBox}
+\vfill
+Finally the same, but the diagram is centered. We also set the extra
+handskip to 0 again.
+\vfill
+\begin{HBox}{centered\hfill File: \FileName}
+\handskip{0em}
+\showAll*+
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/bidEW.tex b/macros/latex/contrib/onedown/examples/bidEW.tex
new file mode 100644
index 0000000000..e91d8ff5f8
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/bidEW.tex
@@ -0,0 +1,51 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\vfill
+In the previous example we changed the gamefont to scriptsize, which is
+still in effect here, as you can see in this example. You wonder why the
+bidding is shown for \north and \south, but the hands are those of \east and
+\west? Well, if you say |\showEW| you get the \eastwest hands. And if you
+say |\setdefaults{bidfirst=S}|, then the first column is of \south{}! (BTW:
+if you want to get \south{}! as output, you must write |\south{}!|, then
+|\south!| and even |\south !| will regard the |!| as a token to |\south|
+and will produce \south !).
+
+We reset the gamefont before we draw the 2nd diagram. Please note that we
+have to redefine the bidding. The saved version from the 1st diagram will
+not change its font!
+
+\vfill
+\begin{HBox}{bidEWpair\hfill File: \FileName}
+\northhand{KJ82}{KQ9}{J}{AQJT8}
+\southhand{AQT95}{A52}{864}{K6}
+\easthand{63}{J764}{KQT9}{953}
+\westhand{74}{T83}{A7532}{742}
+\setdefaults{bidfirst=S}
+\begin{biddingpair}!-(\explainit{splinter}
+ \explainit{control})
+1S & 4D\markit \\
+4H\markit & 6S \\
+\end{biddingpair}
+\showEW+
+\gamefont{\sffamily\bfseries\normalsize}
+\par\vspace{1\baselineskip}
+\showEW+
+\begin{biddingpair}!-(\explainit{splinter}
+ \explainit{control})
+1S & 4D\markit \\
+4H\markit & 6S \\
+\end{biddingpair}
+\par\vspace{1\baselineskip}
+\showEW+
+\end{HBox}
+\vfill
+\begin{HBox}{bidEWpair centered\hfill File: \FileName}
+\showAll+
+
+\showEW*+
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/bidNE.tex b/macros/latex/contrib/onedown/examples/bidNE.tex
new file mode 100644
index 0000000000..6e53b8fccd
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/bidNE.tex
@@ -0,0 +1,45 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\vfill
+Here we show some examples without comment.
+% Trick because of HBox making things local
+\setdefaults{bidfirst=S}
+\vfill
+\begin{HBox}{showNE\hfill File: \FileName}
+\northhand{KJ82}{KQ9}{J}{AQJT8}
+\southhand{AQT95}{A52}{864}{K6}
+\easthand{63}{J764}{KQT9}{432}
+\westhand{74}{T83}{A7532}{957}
+\gamefont{\sffamily\bfseries\large}
+\setdefaults{bidfirst=S}
+\begin{biddingpair}!-(\explainit{splinter}
+ \explainit{control})
+1S & 4D\markit \\
+4H\markit & 6S \\
+\end{biddingpair}
+
+\showNE+
+
+\end{HBox}
+\vfill
+\begin{HBox}{showNE centered\hfill File: \FileName}
+\showNE*+
+\end{HBox}
+\vfill
+\begin{HBox}{showNE\hfill File: \FileName}
+\begin{bidding}!-(\explainit{splinter}
+\explainit{control})
+1S & p & 4D\markit & p \\
+4H\markit & p & 6S & p \\
+\end{bidding}
+\showNE+
+\end{HBox}
+\vfill
+\begin{HBox}{showNE centered\hfill File: \FileName}
+\showNE*+
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/bidNS.tex b/macros/latex/contrib/onedown/examples/bidNS.tex
new file mode 100644
index 0000000000..ca00038328
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/bidNS.tex
@@ -0,0 +1,95 @@
+\documentclass[onedown-examples]{subfiles}
+
+\makeatletter
+\def\SW{\the\ODw@Skip@Width}
+\makeatletter
+\begin{document}
+\vfill
+We show a couple of diagrams without comment, with the exception of
+number 4.
+% We must trick here because HBox makes the settings local
+\setdefaults{bidfirst=S}
+\vfill
+\begin{HBox}{1: showNS pair\hfill File: \FileName}
+\newgame
+\northhand{KJ82}{KQ9}{J}{AQJT8}
+\southhand{AQT95}{A52}{864}{K6}
+\easthand{JT6}{764}{KT9}{JT32}
+\westhand{Q952}{K32}{765}{AQ7}
+\setdefaults{bidfirst=S}
+\begin{biddingpair}-(\explainit{splinter})
+1S & 4D\markit \\
+4H & 6S \\
+\end{biddingpair}
+\showNS+
+\end{HBox}
+\vfill
+\begin{HBox}{2: showNS pair centered\hfill File: \FileName}
+\begin{biddingpair}!-(\explainit{splinter})
+1S & 4D\markit \\
+4H & 6S \\
+\end{biddingpair}
+\showNS*+
+\end{HBox}
+\vfill
+\begin{HBox}{3: showNS\hfill File: \FileName}
+\begin{bidding}!-(\explainit{splinter}
+\explainit{control})
+1S & p & 4D\markit & p \\
+4H\markit & p & 6S & p \\
+\end{bidding}
+\showNS+
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+\vfill
+Here we show the influence of command |\handskip|, that adds some extra
+space between the card diagram and the bidding diagram. In the 2nd diagram
+the negative value diminishes the distance. Because it is within braces,
+the length change is local and the normal value is automatically restored
+afterwards. In the 4th diagram we add |3em| extra space
+\vfill
+\begin{HBox}{4: showNS centered\hfill File: \FileName}
+\setdefaults{compmid=1} \showNS*+
+{\handskip{-1em}\setdefaults{compmid=2} \showNS*+}
+\setdefaults{compmid=3} \showNS*+
+{\handskip{3em}\setdefaults{compmid=4} \showNS*+}
+\end{HBox}
+\vfill
+\begin{HBox}{5: showNS pair\hfill File: \FileName}
+\gamefont{\sffamily\bfseries\scriptsize}
+\begin{biddingpair}!-
+1S & 4D \\
+4H & 6S \\
+\end{biddingpair}
+\showNS+
+\end{HBox}
+\vfill
+Because the previously saved bidding diagram is used, setting |bidfirst|
+has no influence on the output\ldots
+\vfill
+\begin{HBox}{6: showNS pair centered\hfill File: \FileName}
+\setdefaults{bidfirst=W}
+\showNS*+
+\end{HBox}
+\vfill
+\ldots But when setting the next bidding diagram, it has!
+% Need to trick here again
+\setdefaults{bidfirst=W}
+\vfill
+\begin{HBox}{7: showNS\hfill File: \FileName}
+\begin{bidding}-(\explainit{splinter}
+\explainit{control})
+1S & p & 4D\markit & p \\
+4H\markit & p & 6S & p \\
+\end{bidding}
+\showNS+
+\end{HBox}
+\vfill
+\begin{HBox}{8: showNS centered\hfill File: \FileName}
+\showNS*+
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/bidNW.tex b/macros/latex/contrib/onedown/examples/bidNW.tex
new file mode 100644
index 0000000000..e107d0c44e
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/bidNW.tex
@@ -0,0 +1,39 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\vfill
+\setdefaults{bidfirst=S}
+\begin{HBox}{showNW pair\hfill File: \FileName}
+\northhand{KJ82}{KQ9}{J}{AQJT8}
+\southhand{AQT95}{A52}{864}{K6}
+\easthand{63}{J764}{KQT9}{432}
+\westhand{74}{T83}{A7532}{957}
+\setdefaults{bidfirst=S}
+\gamefont{\sffamily\bfseries\Large}
+\begin{biddingpair}-(\explainit{splinter})
+1S & 4D\markit \\
+4H & 6S \\
+\end{biddingpair}
+\showNW+
+\end{HBox}
+\vfill
+\begin{HBox}{showNW pair centered\hfill File: \FileName}
+\showNW*+
+\end{HBox}
+\vfill
+\begin{HBox}{showNW\hfill File: \FileName}
+\begin{bidding}-(\explainit{splinter}
+\explainit{control})
+1S & p & 4D\markit & p \\
+4H\markit & p & 6S & p \\
+\end{bidding}
+\showNW+
+\end{HBox}
+\vfill
+\begin{HBox}{showNW centered\hfill File: \FileName}
+\showNW*+
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/onedown-examples.pdf b/macros/latex/contrib/onedown/examples/onedown-examples.pdf
new file mode 100644
index 0000000000..9bc5e63247
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/onedown-examples.pdf
Binary files differ
diff --git a/macros/latex/contrib/onedown/examples/onedown-examples.tex b/macros/latex/contrib/onedown/examples/onedown-examples.tex
new file mode 100644
index 0000000000..d572b06cd2
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/onedown-examples.tex
@@ -0,0 +1,172 @@
+%%
+%% onedown-examples.tex
+%% April 16, 2018
+%% Requires the onedown bundle
+%% Part of the OneDown bundle (mirror.ctan.org/onedown)
+%% author: J. Wiersma
+%%--------NOTE-------------------------------------------
+%% USAGE: (pdf)latex onedown-examples.tex
+%%-------------------------------------------------------
+
+
+
+\documentclass[a4paper,fontsize=11pt]{scrartcl}
+\usepackage{scrlayer-scrpage}
+%
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+%
+\usepackage{subfiles}% can compile stand-alone/combined
+\usepackage[dutch,norsk,%
+ turkish,shorthands=,% avoid problems with ':', '=' and '!'
+ german,english]{babel}% introduce possible languages
+
+%\usepackage[mono=false]{libertine}% verbatim needs option mono=false
+% linertine screws verbatim, at least I don't know how to handle that
+\usepackage{onedown}% our own style to set bridge stuff
+\usepackage[most]{tcolorbox}% show examples with code
+%\usepackage{tcolorbox}% show examples with code
+\usepackage{enumitem}%
+\usepackage{wrapfig}%
+\usepackage{ragged2e}
+\usepackage{multicol}
+\usepackage{blindtext}% to show wrapping
+\usepackage{forloop}% for Compass
+\usepackage{needspace}% keep lines on one page
+\usepackage{scalefnt}% to enlarge even more
+\usepackage[a4paper, total={185mm, 257mm},left=12mm,top=20mm]{geometry}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% To get a PDF for printing on a monochrome printer
+% comment out these commands
+%
+\setdefaults{colors=4A}
+%-------------
+% set the look of the example boxes
+%
+\tcbset{%
+ colback=red!5!white,colframe=red!75!black,
+ colbacklower=white,
+ fonttitle=\bfseries,
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% To get a PDF for viewing on a screen
+% comment out these commands
+%
+%\tcbset{%
+% colback=white,colbacktitle=white,coltitle=black,
+% colbacklower=white,
+% fonttitle=\bfseries,
+%}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Due to a bug (?) in tcolorbox we cannot return to the default
+% "listing and text" after setting "listing side text" globally
+% within \tcbset. % So we define HBox and VBox to set this locally.
+% We need the VBox for showing 16 boardnrs in Compass.tex
+%
+\newtcblisting{HBox}[1]{listing side text,title=#1}
+\newtcblisting{VBox}[1]{listing and text,title=#1}
+
+\usepackage{shortvrb}
+\MakeShortVerb{\|}
+% hack to make verbatim stuff more clear
+% adapted from verbatim.sty
+\makeatletter
+\def\verbatim@font{\ttfamily\bfseries\large
+ \hyphenchar\font\m@ne
+ \@noligs}
+
+\def\Xfer#1{\ODw@Xfer{#1}}
+\makeatother
+
+
+\usepackage[pdfencoding=auto]{hyperref}
+ \hypersetup{%
+ pdftitle={onedown-examples.pdf},
+ pdfsubject={Bridge Diagrams, OneDown bundle},
+ pdfkeywords={OneDown Bridge LaTeX},
+ colorlinks,
+ linkcolor=red,
+ }
+
+\newcommand\OneDown{\textcolor{red}{\smaller\bfseries\textsc{OneDown}}\xspace}
+
+%-------------
+\pagestyle{scrheadings}
+\clearscrheadfoot
+\ihead{\texttt{onedown-examples.pdf}
+(\OneDown v\ODwstyleversion, \ODwstyledate)\hfill \pagemark}
+%-----------
+
+\def\FileName{\jobname}
+\def\SubFile#1{\def\FileName{#1}\newpage\section{#1}\subfile{#1}}
+
+\addtolength{\textheight}{1.5cm}
+
+\begin{document}
+\pdfbookmark[1]{Title}{Title}
+\title{Examples for the\\\OneDown package%
+\footnote{This file is part of the \OneDown bundle. To generate this file,
+use the following command: \newline \texttt{\$ pdflatex \jobname.tex}}
+\\[1em]
+\normalsize\url{www.ctan.org/pkg/onedown}
+}
+\author{J.\,Wiersma\footnote{email: \textsf{jack46@online.de}}}
+\date{23 September 2018 (v0.5)}
+\maketitle
+
+\section*{Introduction}
+This file (\jobname) contains (well, sort of includes) all the example
+files from the bundle. We use the 'include' mechanism of the package
+|subfiles|. This means that you can compile each example file as
+stand-alone, but they also form one document.
+The advantage is that you can copy one example file and edit it to your
+taste i.e.\ to experiment a little, and you can compile it without changing
+the preamble, provided the \OneDown bundle is in your \TeX-path.
+
+For questions not covered in these examples or any further documentation,
+read the \OneDown package manual named onedown.pdf.
+
+If you encounter difficulties in compiling adapted files, then please read
+the section about active characters in the manual.
+
+To make it easy for you to decide which file to experiment with, all
+sections bear the file name, which can also be found in the list below. The
+examples are produced using the \textsf{tcolorbox} package. This enables us
+to show the code and the output of it side by side.
+
+\par\vspace{1\baselineskip}
+\setlength\columnseprule{.8pt}% rule between cols
+\begin{multicols}{3}[{\centering \textbf{\Large List of Examples}}]
+% Use \tableofcontents to create a hyperref'ed list of examples
+% by stripping all stuff except the toclist itself,
+% Change \addvspace too, to keep things tight .
+ \makeatletter
+ \renewcommand\tableofcontents{\@starttoc{toc}}
+ \makeatother
+ \renewcommand*{\addvspace}[1]{}
+ \tableofcontents
+\end{multicols}
+\SubFile{Hands}
+\SubFile{Suits}
+\SubFile{showNS-warn-I}
+\SubFile{showNS-warn-II}
+\SubFile{showNS-align}
+\SubFile{showAll}
+\SubFile{Select-Hands}
+\SubFile{Bidding}
+\SubFile{bidAll}
+\SubFile{bidNS}
+\SubFile{bidEW}
+\SubFile{bidNE}
+\SubFile{bidNW}
+\SubFile{Legends}
+\SubFile{Wrapping}
+\SubFile{Play}
+\SubFile{ExpertQuiz}
+\SubFile{Languages}
+\SubFile{Compass}
+\end{document}
+
diff --git a/macros/latex/contrib/onedown/examples/onedown-ref.pdf b/macros/latex/contrib/onedown/examples/onedown-ref.pdf
new file mode 100644
index 0000000000..c59b80f641
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/onedown-ref.pdf
Binary files differ
diff --git a/macros/latex/contrib/onedown/examples/onedown-ref.tex b/macros/latex/contrib/onedown/examples/onedown-ref.tex
new file mode 100644
index 0000000000..44930e12e0
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/onedown-ref.tex
@@ -0,0 +1,465 @@
+\documentclass[onedown-examples]{subfiles}
+\usepackage[Q=yes]{examplep}
+\makeatletter
+\def\verbatim@font{\ttfamily\bfseries
+ \hyphenchar\font\m@ne
+ \@noligs}
+\makeatother
+%
+\newcommand\bs{%
+ \texttt{%
+ \upshape% the itshape of meta screws the backslash
+ \textbackslash%
+ }%
+}% bs
+%
+\let\olditem\item
+\renewcommand\item[1][\relax]{\olditem\textbf{\bs#1}}
+%\def\Item{\olditem[\bs]}
+%
+\definecolor{optbackgr}{named}{lightgray}
+\newcommand\Oarg[1]{\colorbox{optbackgr}{\texttt{#1}}}
+
+\begin{document}
+
+\larger
+\newgeometry{total={150mm, 265mm},left=25mm,top=15mm}
+\pagestyle{empty}
+%\iffalse
+\centerline{\larger\larger\textbf{\OneDown Reference Guide}}
+\par\vspace{1\baselineskip}\noindent
+Here we show all user commands of the package |onedown| in alphabetical
+order. If we only show the ouput that a command produces, then this output
+is shown directly behind the command on the same line. If a description of
+the command is given, then this description starts on a new line. Optional
+parameters of a command appear in brackets |[...]|, parenthesis |(...)| or
+angles |<...>|. Optional tokens of a command appear with a different
+background color, like \Oarg{*!}. Output of a tokenized |\macro*!| is shown
+as:
+\quad|\macro|\Oarg{*!}|: \macro, \macro*, \macro!, \macro*!|\\
+All output is shown for the English language.
+
+\begin{description}[itemsep=-0.3em]
+\item[ace]: \ace
+\item[Ace\Oarg{*!}]: \Ace, \Ace*, \Ace!, \Ace*!
+
+\item[alert]: |2\NT\alert| typesets 2\NT\alert and |2\Cl\alert| typesets
+2\Cl\alert
+
+\item[all]: \all
+\item[All\Oarg{*!}]: \All, \All*, \All!, \All*!
+
+\item[allpass]: \allpass
+\item[Allpass\Oarg{*!}]: \Allpass, \Allpass*, \Allpass!, \Allpass*!
+
+\item[announce]: |2\He\announce| typesets 2\He\announce
+
+\item[bidderfont\Q{{font} }]\\
+Defines the font for the names in
+bidding diagrams. The mandatory parameter for all font commands is a font
+description like |\sffamily\bfseries\HUGE| or |\mdseries\slshape\smaller|
+or |\sffamily\scalefont{3}|.
+
+\item[board]: \board
+\item[Board\Oarg{*!}]: \Board, \Board*, \Board!, \Board*!
+
+\item[boardnr\Q{{Nr} }]\\
+Calculates (and stores) the dealership and vulnerability if |Nr|
+is a number. If it is just a text it is stored to be used instead of a
+board number.
+
+\item[boardtext\Oarg{*}]\\
+Typesets the value that is stored with |\boardnr|.
+The star version writes the text \textbf{\boardtext*} in front of it.
+
+\item[by]: \by
+
+\item[Cl]: \Cl
+
+\item[compassfont\Q{{font} }]\\
+Defines the font for the compass.
+
+\item[contract]: \contract
+\item[Contract\Oarg{*!}]: \Contract, \Contract*, \Contract!, \Contract*!
+
+\item[deal]: \deal
+\item[Deal\Oarg{*!}]: \Deal, \Deal*, \Deal!, \Deal*!
+
+\item[dealer\Q{[text]}]\\
+Typeset the defined dealer. With the optional
+parameter one can define the dealer.
+
+\item[dealertext\Q{[text]}]\\
+Typeset the user-defined value for the |\dealer|,
+e.g.\ \mbox{\dealertext[\east]}. With the optional parameter one can define
+the |text| to be printed \emph{as is}.
+
+\item[declarer]: \declarer
+\item[Declarer\Oarg{*!}]: \Declarer, \Declarer*, \Declarer!, \Declarer*!
+
+\item[Di]: \Di
+
+\item[double]: \double
+\item[Double\Oarg{*!}]: \Double, \Double*, \Double!, \Double*!
+
+\item[DP]: \DP
+\item[dpts\Oarg{*!}]: \dpts, \dpts*, \dpts!, \dpts*!
+
+\item[east]: \east
+\item[East\Oarg{*!}]: \East, \East*, \East!, \East*!
+
+\item[easthand\Q{[h-offset]{Sp}{He}{Di}{Cl}}]\\
+Defines the cards for the
+\East*!-player. With the optional parameter |h-offset| one can adapt the
+(\emph{horizontal}) distance between hand and compass (default
+\textbf{0pt}). The 4 mandatory parameters define the cards for the 4 suits.
+To denote the rank \suit{T}, one has to use the uppercase letter |T|.
+
+\item[eastwest]: \eastwest
+\item[Eastwest\Oarg{*!}]: \EastWest, \EastWest*, \EastWest!, \EastWest*!
+
+\item[expertquiz\Oarg{*!}\Q{[comment]}{award}]\\
+Typesets a quiz, showing a
+predefined hand and a predefined bidding diagram. The star version centers
+the output. The token |!| forces a newline between hand and bidding
+diagram. With the optional parameter one can add some comments. The
+mandatory parameter defines the award for the different solutions.
+
+\item[explainit\Q{{expl} }]\\
+writes \emph{expl} below the bidding diagram in a footnote like way.
+
+\item[footlinetext\Q{{text} }]\\
+Typeset the text below the card diagram.
+
+\item[FSF]: \FSF
+\item[fsforce\Oarg{*!}]: \fsforce, \fsforce*, \fsforce!, \fsforce*!
+
+\item[gamefont\Q{{font} }]\\
+Defines the font for card diagrams, hands and suits.
+
+\item[GF]: \GF
+\item[gforce\Oarg{*!}]: \gforce, \gforce*, \gforce!, \gforce*!
+
+\item[hand\Oarg{*!-}\Q{[pos]{Sp}{He}{Di}{Cl}}]\\
+Typesets the cards of 1 single hand,
+normally horizontally, left aligned. The star version centers the output.
+The token |!| typesets the hand vertically, left aligned. With both |*!|
+the hand is typeset vertically, centered. The optional argument |pos|
+(default \textbf{c}), controls the horizontal alignment.
+The third token |-| suppresses all output, which is then only saved for
+later use (in e.g.\ |\expertquiz|). The 4
+mandatory parameters define the cards for the 4 suits. To denote the rank
+\suit{T}, one has to use the uppercase letter |T|.
+
+\item[handskip\Q{{length description} }]\\
+Adds |length| to the distance (default |1em|) between the rightmost hand
+and the bidding diagram.
+
+\item[HCP]: \HCP
+
+\item[headlinetext\Q{{text} }]\\
+Typeset the text above the card diagram.
+
+\item[He]: \He
+
+\item[HLP]: \HLP
+
+\item[hpts\Oarg{*!}]: \hpts, \hpts*, \hpts!, \hpts*!
+
+\item[jack]: \jack
+\item[Jack\Oarg{*!}]: \Jack. \Jack*, \Jack!, \Jack*!
+
+\item[king]: \king
+\item[King\Oarg{*!}]: \King, \King*, \King!, \King*!
+
+\item[lead]: \lead
+\item[Lead\Oarg{*!}]: \Lead, \Lead*, \Lead!, \Lead*!
+
+\item[leftlower\Q{[h-offset]{line1}{line2}{line3}}]
+
+\item[leftupper\Q{[h-offset]{line1}{line2}{line3}}]\\
+Typesets an annotation of 3 lines in the left lower/upper corner of the
+card diagram. With the optional parameter one can add some extra horizontal
+space between hand and annotation.
+
+\item[legendfont\Q{{font} }]\\
+Defines the font for annotations in card diagrams.
+
+\item[LP]: \LP
+\item[lpts\Oarg{*!}]: \lpts, \lpts*, \lpts!, \lpts*!
+
+\item[markit]\\
+sets a footnote-like marker in a bidding diagram.
+
+\item[namefont\Q{{font} }]\\
+Defines the font for the real world names in bidding diagrams.
+
+\item[namesEW\Q{{E-name}{W-name}}]\\
+Defines the real world names for the \eastwest players, that will appear
+in the bidding diagram.
+
+\item[namesNS\Q{{N-name}{S-name}}]\\
+Defines the real world names for the \northsouth players, that will appear
+in the bidding diagram.
+
+
+\item[newgame]\\
+Resets some stored data
+
+\item[NMF]: \NMF
+\item[nmforce\Oarg{*!}]: \nmforce, \nmforce*, \nmforce!, \nmforce*!
+
+\item[none]: \none
+\item[None\Oarg{*!}]: \None, \None*, \None!, \None*!
+
+\item[north]: \north
+\item[North\Oarg{*!}]: \North, \North*, \North!, \North*!
+
+\item[northhand\Q{[v-offset]{Sp}{He}{Di}{Cl}}]\\
+Defines the cards for the
+\North*!-player. With the optional parameter |v-offset| one can adapt the
+(\emph{vertical}) distance between hand and compass (default \textbf{0pt}).
+The 4 mandatory parameters define the cards for the 4 suits. To denote the
+rank \suit{T}, one has to use the uppercase letter |T|.
+
+\item[northsouth]: \northsouth
+\item[NorthSouth\Oarg{*!}]: \NorthSouth, \NorthSouth*, \NorthSouth!, \NorthSouth*!
+
+\item[nt\Oarg{*!}]: \nt, \nt*, \nt!, \nt*!
+\item[NT]: \NT
+
+\item[onesuitAll\Oarg{*!}\Q{{N}{S}{E}{W}}]\\
+Typesets the cards of 1 suit for all
+players. The star version centers the output. The token |!| prints a small
+box rather than the compass. The 4 mandatory parameters denote the cards
+for the \North*!-, the \South*!-, the \East*!- and the \West*!-player.
+
+\item[onesuitEW\Oarg{*!}\Q{{E}{W}}]\\
+Same as |onesuitAll|, but only for the \East*!- and the \West*!-player.
+
+\item[onesuitNE\Oarg{*!}\Q{{N}{E}}]\\
+Same as |onesuitAll|, but only for the \North*!- and the \East*!-player.
+
+\item[onesuitNS\Oarg{*!}\Q{{N}{S}}]\\
+Same as |onesuitAll|, but only for the \North*!- and the \South*!-player.
+
+\item[onesuitNW\Oarg{*!}\Q{{N}{W}}]\\
+Same as |onesuitAll|, but only for the \North*!- and the \West*!-player.
+
+\item[otherfont\Q{{font} }]\\
+Defines the font for other items.
+
+\item[pass]: \pass
+\item[Pass\Oarg{*!}]: \Pass, \Pass*, \Pass!, \Pass*!
+
+\item[queen]: \queen
+\item[Queen\Oarg{*!}]: \Queen, \Queen*, \Queen!, \Queen*!
+
+\item[redouble]: \redouble
+\item[Redouble\Oarg{*!}]: \Redouble, \Redouble*, \Redouble!, \Redouble*!
+
+\item[resetfonts]\\
+Sets all fonts back to their default value.
+
+\item[rightlower\Q{[h-offset]{line1}{line2}{line3}}]
+\item[rightupper\Q{[h-offset]{line1}{line2}{line3}}]\\
+Typesets an annotation of 3 lines in the right lower/upper corner of the
+card diagram. With the optional parameter one can add some extra horizontal
+space between hand and annotation.
+
+\item[setdefaults\Oarg{*}\string{key1=val1,key2=val2,\ldots\string}]\\
+With the keys |bidder|, |compass|, |game|, |legend|, |name| or |other| one
+can set the default font for the respective items. With the keys
+|compline|, |compmid|, |compshow|, |compsize| or |compturn| on can set the
+look of the compass. With the keys |bidders|, |bidfirst|, |bidline| or
+|bidlong| one can fine-tune the bidding diagram. The keys that can be used
+as package options (|colors|, |err| and |warn|) can also be set here.
+The star form also calls |\resetfonts| which effectuates any font change
+immediately.
+
+\item[SF]: \SF
+\item[sforce\Oarg{*!}]: \sforce, \sforce*, \sforce!, \sforce*!
+
+\item[showAll\Oarg{*+}\Q{[pos]}]\\
+Typesets a card diagram with 4 (previously
+defined, i.e.\ with |\northhand| etc.) hands. The star version centers the
+output. The token |+| adds a bidding table to the diagram, that has to be
+previously defined, i.e.\ with e.g:\\
+|\begin{bidding}-|\ldots|\end{bidding}|. The optional parameter |pos|
+(default~\textbf{c}) aligns the diagram.
+
+\DeleteShortVerb{\|}
+\item[showEW\Oarg{*+}\Q{[pos]}(E|W)]\\
+\MakeShortVerb{\|}
+Same as |\showAll|, but for the \East*!- and the \West*!-hand. |\showEW(E)|
+prints only the \East*!-hand
+
+\item[showNE\Oarg{*+}\Q{[pos]}]\\
+Same as |\showAll|, but for the \North*!- and the \East*!-hand.
+
+\DeleteShortVerb{\|}
+\item[showNS\Oarg{*+}\Q{[pos]}(N|S)]\\
+\MakeShortVerb{\|}
+Same as |\showAll|, but for the \North*!- and the \South*!-hand. |\showNS(S)|
+prints only the \South*!-hand
+\item[showNW\Oarg{*+}\Q{[pos]}]\\
+Same as |\showAll|, but for the \North*!- and the \West*!-hand.
+
+\item[south]: \south
+\item[South\Oarg{*!}]: \South, \South*, \South!, \South*!
+
+\item[southhand\Q{[v-offset]{Sp}{He}{Di}{Cl}}]\\
+Defines the cards for the
+\South*!-player. With the optional parameter |v-offset| one can adapt the
+(\emph{vertical}) distance between hand and compass (default \textbf{0pt}).
+The 4 mandatory parameters define the cards for the 4 suits. To denote the
+rank \suit{T}, one has to use the uppercase letter |T|.
+
+\item[Sp]: \Sp
+
+\item[suit\Q{[suit symbol]{cards}}]\\
+Typesets the cards of 1 single suit.
+With the optional parameter one can add a suit symbol (e.g.\ \He) in front
+of the cards. The mandatory parameter defines the cards for the suit. To
+denote the rank \suit{T}, one has to use the letter |T|.
+
+\item[TP]: \TP
+\item[tpts\Oarg{*!}]: \tpts, \tpts*, \tpts!, \tpts*!
+
+\item[TSF]: \TSF
+\item[tsforce\Oarg{*!}]: \tsforce, \tsforce*, \tsforce!, \tsforce*!
+
+\item[vulner\Q{[text]}]\\
+Typeset the user-defined vulnerability. With the optional parameter one can
+define the vulnerability.
+
+\item[vulnertext\Q{[text]}]\\
+Typeset the defined value for the |\vulner|, e.g.\
+\mbox{\vulnertext[\NorthSouth*]}. With the optional parameter one can
+define the |text| to be printed \emph{as is}.
+
+\item[west]: \west
+\item[West\Oarg{*!}]: \West, \West*, \West!, \West*!
+
+\item[westhand\Q{[h-offset]{Sp}{He}{Di}{Cl}}]\\
+Defines the cards for the
+\West*!-player. With the optional parameter |h-offset| one can adapt the
+(\emph{horizontal}) distance between hand and compass (default
+\textbf{0pt}). The 4 mandatory parameters define the cards for the 4 suits.
+To denote the rank \suit{T}, one has to use the uppercase letter |T|.
+
+\olditem[\string\begin\string{bidding\string}\Oarg{*!-}\Q{[pos](description)}\ldots\string\end\string{bidding\string}]~\\
+Typesets a bidding diagram. The star version centers the output. The
+token~|!| forces a short form (\North*!) rather than the long form
+(\North*) in the table header. The token~|-| suppresses all output, but the
+saved data can be used elsewhere. The optional paramater |pos| (default
+\textbf{c}) controls the alignment of the diagram. With the 2nd optional
+parameter |description| one can add annotations (see also |\markit| and
+|\explainit|) below the diagram. The bids in the bidding can both be
+shorthands like |3S| as well as |3\Sp|. The same goes for calls: both |p|
+and |\pass| are possible. For an overview of all possible shorthands, refer
+to the last page of this document.
+\par
+The command |\setdefaults| has some keys to fine tune the
+look of the bidding diagram. If the real world names of the players are
+defined (e.g.\ with |\namesNS|, then they also appear in the table header.
+
+\olditem[\string\begin\string{biddingpair\string}\Oarg{*!-}\Q{[pos](description)}\ldots\string\end\string{biddingpair\string}]~\\
+Same as environment |bidding| but with only 2 columns.
+
+\olditem[\string\begin\string{play\string}\Oarg{*}\Q{{lead}[trump]}\ldots\string\end\string{play\string}]~\\
+Typesets a diagram with the playing tricks. The star version centers the
+output. The mandatory parameter defines the player who had the opening
+lead. The optional parameter defines the trump suit, the default is \NT.
+This environment produces a table with 8 columns: the running number; the
+player who had had the lead; the 4 cards played in this trick and finally
+the 2 columns that show how many tricks \northsouth{} and \eastwest{} have
+won so far. The user has only to enter the 4 colums that denote the 4 cards
+played in each trick. The rest is handled by \OneDown.
+%
+\end{description}
+%
+% reset \item
+%\fi
+\let\item\olditem
+%
+\newpage
+\centerline{\larger\textbf{Shorthands/Specials in bidding diagrams}}
+\par\vspace{1\baselineskip}\noindent
+%
+\begin{minipage}{6cm}
+\begin{verbatim}
+\begin{bidding}
+p & X & R & P \\
+\end{bidding}
+\end{verbatim}
+\end{minipage}
+%
+\begin{minipage}{7cm}
+\begin{bidding}
+p & X & R & P \\
+\end{bidding}
+\end{minipage}
+%
+\\[1\baselineskip]
+%
+\begin{minipage}{6cm}
+\begin{verbatim}
+\setdefaults{bidlong=off}
+\begin{bidding}
+p & X & R & P \\
+{\frame{2H}} &
+{\frame{2\He}} &
+{\textit{R}} &
+{\textit{\redouble}} \\
+\end{bidding}
+\end{verbatim}
+\end{minipage}
+%
+\begin{minipage}{6cm}
+\setdefaults{bidlong=off}
+\begin{bidding}
+p & X & R & P \\
+{\frame{2H}} & {\frame{2\He}} & {\textit{R}} & {\textit{\redouble}} \\
+\end{bidding}
+\end{minipage}
+%
+\\[1\baselineskip]
+%
+\centerline{\larger\textbf{Macros in bidding diagrams}}
+\par\vspace{0.3\baselineskip}\noindent
+These macros, called in a bidding table\ldots
+\par\vspace{0.5\baselineskip}\noindent
+%
+\begin{verbatim}
+\begin{bidding}
+1 \Pass & \Double & \Redouble & \Allpass \\
+2 \Pass* & \Double* & \Redouble* & \Allpass* \\
+3 \Pass! & \Double! & \Redouble! & \Allpass! \\
+4 \Pass*! & \Double*! & \Redouble*! & \Allpass*! \\
+5 \pass & \double & \redouble & \allpass \\
+6 {\Pass*} & {\Double*} & {\Redouble*} & {\Allpass*} \\
+7 {\Pass!} & {\Double!} & {\Redouble!} & {\Allpass!} \\
+8 {\Pass*!} & {\Double*!} & {\Redouble*!} & {\Allpass*!} \\
+9 {\pass} & {\double} & {\redouble} & {\allpass} \\
+\end{bidding}
+\end{verbatim}
+%
+
+\ldots produce this output. Please note that line 2--5 are peculiar.
+\par\vspace{0.3\baselineskip}\noindent
+\begin{tabular}{lBBBB}
+ & {\west} & {\north} & {\east} & {\south} \\
+1 & \Pass & \Double & \Redouble & \Allpass \\
+2 & \Pass* & \Double* & \Redouble* & \Allpass* \\
+3 & \Pass! & \Double! & \Redouble! & \Allpass! \\
+4 & \Pass*! & \Double*! & \Redouble*! & \Allpass*! \\
+5 & \pass & \double & \redouble & \allpass \\
+6 & {\Pass*} & {\Double*} & {\Redouble*} & {\Allpass*} \\
+7 & {\Pass!} & {\Double!} & {\Redouble!} & {\Allpass!} \\
+8 & {\Pass*!} & {\Double*!} & {\Redouble*!} & {\Allpass*!} \\
+9 & {\pass} & {\double} & {\redouble} & {\allpass} \\
+\end{tabular}\\
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/showAll.tex b/macros/latex/contrib/onedown/examples/showAll.tex
new file mode 100644
index 0000000000..e7571f6d3c
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/showAll.tex
@@ -0,0 +1,140 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\vfill
+|\showAll| displays a card diagram with the 4 hands. Here the \east hand is
+empty and is skipped completely from the diagram. If you want to show an
+empty suit explicitly (which is a good thing), just use a single hyphen.
+\OneDown will make an en-dash out of it. We added the dealer and
+vulnerability to the diagram, the value of which was calculated
+automatically from the given boardnumber(18). Please note that the
+vulnerable side is printed in red and that the dealer is underlined in the
+compass. With |\setdefaults{compmid=\boardtext}| we write the board number
+as mid text in the compass. If given this way, it will always print the
+\emph{actual} board number, as you can see in the following examples.
+\vfill
+% due to the grouping of the HBox, we must set |compmid| here.
+% Otherwise it would not be in effect in the next HBox!
+\setdefaults{compmid=\boardtext}
+\begin{HBox}{showBoardNr\hfill File: \FileName}
+\setdefaults{compmid=\boardtext}
+\northhand{AJ}{K}{-}{-}
+\southhand{32}{-}{A}{-}
+\easthand{}{}{}{}
+\westhand{KQ}{A}{-}{-}
+\boardnr{18}
+\leftupper{\dealertext}{}{\vulnertext}
+\showAll
+\end{HBox}
+\vfill
+This example shows how to add several conditions, such as declarer, lead
+etc.\ to a diagram. |\boardtext| just prints the plain board number and was
+called in |\setdefault{compmid=\boardtext}| (rather than using the
+hard-coded number) to set it in the middle of the compass. In |\leftupper|
+we use |\boardtext*| to print the boardnumber behind an additional text.
+
+You will have noticed that the right upper text does not fit well in the
+diagram: it collides with the \north hand\ldots
+\vfill
+\begin{HBox}{Board Number\hfill File: \FileName}
+\boardnr{19}
+\northhand{AK43}{AQJ83}{AJ98}{-}
+\southhand{87}{T5}{QT5}{K98654}
+\easthand{JT6}{764}{K43}{JT32}
+\westhand{Q952}{K92}{762}{AQ7}
+\leftupper{\boardtext*}%
+ {\dealertext}{\vulnertext}
+\rightupper{\contract: 3\,\NT}{\declarer \south}{}
+\rightlower{\lead: \Di 7}{}{}
+\showAll*
+\end{HBox}
+%
+\vfill
+ \needspace{8\baselineskip}
+ \ldots so we add some (here 2ex) offset, to shift the text a bit to the
+right. One can shift the upper/lower and left/right texts independently. A
+positive offset shifts away from the compass, a negative offset would shift
+the text towards the compass.
+\vfill
+\begin{HBox}{Board Number\hfill File: \FileName}
+\boardnr{20}
+\northhand{AK43}{AQJ83}{AJ98}{-}
+\southhand{87}{T5}{QT5}{K98654}
+\easthand{JT6}{764}{K43}{JT32}
+\westhand{Q952}{K92}{762}{AQ7}
+\leftupper{\boardtext*}%
+ {\dealertext}{\vulnertext}
+\rightupper[2ex]{\contract: 3\,\NT}{\declarer \south}{}
+\rightlower{\lead: \Di 7}{}{}
+\showAll*
+\end{HBox}
+%
+\vfill
+Please note that the board number in the middle of the compass has been
+updated each time that we called |\boardnr|. More important however, is to
+see that the very long suit of the \north hand collides massively with the
+right upper condition text. Shifting the text wouldn't help here.
+\vfill
+\begin{HBox}{Very long suits 1\hfill File: \FileName}
+\boardnr{21}
+\northhand{AKQJT98765432}{-}{-}{-}
+\southhand{-}{2}{2}{AKQJT987654}
+\easthand{-}{876543}{876543}{3}
+\westhand{-}{AKQJT9}{AKQJT9}{2}
+\showAll
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+A simple way to 'correct' this is by lowering the text: leave the first
+line of the right-upper text empty.
+\vfill
+\begin{HBox}{Correction by lowering the text\hfill File: \FileName}
+\rightupper{}{\contract: 3\,\NT}{\declarer \south}
+\northhand{AKQJT98765432}{-}{-}{-}
+\southhand{-}{2}{2}{AKQJT987654}
+\easthand{-}{876543}{876543}{3}
+\westhand{-}{AKQJT9}{AKQJT9}{2}
+\showAll
+\end{HBox}
+\vfill
+Another problem with (very) long suits, is that the \eastwest hands can
+seem too close to a \northsouth hand, as can be seen in next example. Of
+course the hands are not any closer to each other as before, but the long
+suit in the unfavourable position make it clearly look so.
+\vfill
+\begin{HBox}{Very long suits 2\hfill File: \FileName}
+\rightupper{\contract: 3\,\NT}{\declarer \south}{}
+\northhand{-}{2}{2}{AKQJT987654}
+\southhand{AKQJT98765432}{-}{-}{-}
+\easthand{-}{876543}{876543}{3}
+\westhand{-}{AKQJT9}{AKQJT9}{2}
+\rightlower{}{\lead: \Di 7}{}
+\showAll
+\end{HBox}
+\vfill
+\needspace{8\baselineskip}
+The solution is to add some offset. In a previous example we already showed
+how to use an offset with an annotation. Here we add an offset to the
+apropriate \emph{hand}. This
+is done with the optional parameter in the \north and the \south hand. The
+\north hand shifts upwards, the \south hand downwards. As a little
+demonstration, we also shifted the \east hand a bit to the right and the
+\west hand a bit to the left. Negative offset values reverse the shift
+direction.
+\vfill
+\begin{HBox}{Very long suits 3 with extra offset\hfill File: \FileName}
+\northhand[1em]{-}{2}{2}%
+ {AKQJT987654}
+\southhand[1em]{AKQJT98765432}%
+ {-}{-}{-}
+\easthand[1em]{-}{876543}%
+ {876543}{3}
+\westhand[1em]{-}{AKQJT9}%
+ {AKQJT9}{2}
+\showAll
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
+
diff --git a/macros/latex/contrib/onedown/examples/showNS-align.tex b/macros/latex/contrib/onedown/examples/showNS-align.tex
new file mode 100644
index 0000000000..47234eb1d0
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/showNS-align.tex
@@ -0,0 +1,39 @@
+\documentclass[onedown-examples]{subfiles}
+\begin{document}
+These examples show the alignment of diagrams.
+The alignment is given as an optional argument to the |showXX| commands. It
+bears the usual name for alignments: \textbf{t} for top, \textbf{b} for
+bottom and \textbf{c} for centered. Note that the |\smaller\smaller| from
+a previous example is still in effect: The command |\newgame| does not
+reset any font. Please note the difference between diagram 1 and 3. The
+font used for the suits is \textbf{not} the same.
+
+\vfill
+\begin{HBox}{showNS top algned\hfill File: \FileName}
+\newgame
+\northhand{KJ92}{KQ9}{J}{AQJT8}
+\southhand{AQT85}{A52}{64}{K96}
+A \showNS[t] B
+\resetfonts
+C \showNS[t] D
+\gamefont{\sffamily\bfseries\smaller\smaller}
+E \showNS[t] F
+\end{HBox}
+\vfill
+We do need to call |\resetfonts| (or |\gamefont|) explicitly to reset the
+font or size.
+\vfill
+\begin{HBox}{showNS center aligned\hfill File: \FileName}
+\resetfonts
+% \gamefont would do the job as well
+%\gamefont{\bfseries\sffamily}
+A \showNS[c] B
+\end{HBox}
+\vfill
+\begin{HBox}{showNS bottom aligned\hfill File: \FileName}
+A \showNS[b] B
+\end{HBox}
+\vfill
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/showNS-warn-I.tex b/macros/latex/contrib/onedown/examples/showNS-warn-I.tex
new file mode 100644
index 0000000000..a24c9a0066
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/showNS-warn-I.tex
@@ -0,0 +1,29 @@
+\documentclass[onedown-examples]{subfiles}
+\newgame
+\begin{document}
+
+If you do not define all cards of a deck, then a lot of `missing card'
+warnings will appear. Therefore most of the time it is better that warnings
+are switched off. This is the default, but you can explicitly do that with
+|\setdefaults{warn=off}|. It is also the default to produce \emph{error}
+messages, which you can also switch off with |\setdefaults{err=off}|.
+We recommend to have errors shown when you enter new diagrams. Please
+observe how the |\smaller\smaller| command shrinked the diagram. We did
+that to make all the warnings fit in the box. To avoid that all following
+diagrams are also shrinked you must call |\gamefont{\bfseries\sffamily}|
+again without the resizing. Calling |\resetfonts| has the same effect, but
+would also influence the other fonts.
+\vfill
+\begin{HBox}{showNS with warnings\hfill File: \FileName}
+\setdefaults{warn=on}
+ \gamefont{\bfseries\sffamily%
+ \smaller\smaller}
+ \northhand{KJ92}{KQ9}{J}{AQJT8}
+ \southhand{AQT85}{A52}{64}{K96}
+ \showNS
+\end{HBox}
+\vfill
+%
+\end{document}
+\endinput
+
diff --git a/macros/latex/contrib/onedown/examples/showNS-warn-II.tex b/macros/latex/contrib/onedown/examples/showNS-warn-II.tex
new file mode 100644
index 0000000000..516e959005
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/showNS-warn-II.tex
@@ -0,0 +1,59 @@
+\documentclass[onedown-examples]{subfiles}
+\begin{document}
+In the previous example we enabled warnings and set a much smaller font to
+make the example fit on the page. As we compile these examples as one big
+file, \OneDown remembers these values. If you compile this file
+(showNS-warn-II) standalone with |pdflatex showNS-warn-II| and view the
+result, then you'll see no warnings and no shrinking.
+
+\vfill
+\begin{HBox}{showNS \hfill File: \FileName}
+\northhand{KJ92}{KQ9}{J}{AQJT8}
+\southhand{AQT85}{A52}{64}{K96}
+\showNS
+\end{HBox}
+%
+\vfill
+\needspace{8\baselineskip}
+\vfill
+Now warnings are switched off explicitly and the size is reset by calling
+|\resetfonts|.
+\vfill
+\begin{HBox}{showNS \hfill File: \FileName}
+\setdefaults{warn=off}
+\resetfonts
+\showNS
+\end{HBox}
+%
+\vfill
+|\newgame| clears the hands. A hand with no cards at all is completelly
+suppressed, so we see only the compass. With |\setdefaults{compmid=text}|
+we can write 'text' in the middle of the compass. We enlarged the compass,
+so you can see that it \emph{is} on the vertical line through the mids of
+\North*! and \South*!. With |\resetfonts| we return to the default values
+of the fonts. With |\setdefaults| one can influence the look of diagrams.
+In section |Compass| we'll go more into detail. Please note that |\setdefaults| has
+only 1 argument, It is \emph{mandatory} and must be enclosed in
+braces (|{...}|). The argument is a key-val list, separated by commas. I.e. rather
+than |\setdefaults{warn=off}\setdefaults{compmid=15}| one can also write
+|\setdefaults{warn=off,compmid=15}|.
+\vfill
+\begin{HBox}{showNS \hfill File: \FileName}
+\newgame
+\raggedright
+\setdefaults{compmid=15}
+\showNS
+\showNS
+\gamefont{\sffamily\bfseries\Huge}
+\showNS
+\resetfonts
+\setdefaults{compmid=}
+\showNS
+\gamefont{\smaller\smaller}
+\showNS
+\end{HBox}
+\vfill
+%
+\end{document}
+\endinput
+