summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/onedown
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/onedown')
-rw-r--r--macros/latex/contrib/onedown/ODw-Danish.dict160
-rw-r--r--macros/latex/contrib/onedown/ODw-Dutch.dict160
-rw-r--r--macros/latex/contrib/onedown/ODw-English.dict160
-rw-r--r--macros/latex/contrib/onedown/ODw-French.dict160
-rw-r--r--macros/latex/contrib/onedown/ODw-German.dict160
-rw-r--r--macros/latex/contrib/onedown/ODw-Norsk.dict160
-rw-r--r--macros/latex/contrib/onedown/ODw-Spanish.dict160
-rw-r--r--macros/latex/contrib/onedown/ODw-Swedish.dict162
-rw-r--r--macros/latex/contrib/onedown/ODw-Turkish.dict160
-rw-r--r--macros/latex/contrib/onedown/ODw-danish.trsl160
-rw-r--r--macros/latex/contrib/onedown/ODw-dutch.trsl160
-rw-r--r--macros/latex/contrib/onedown/ODw-english.trsl160
-rw-r--r--macros/latex/contrib/onedown/ODw-fallback.trsl160
-rw-r--r--macros/latex/contrib/onedown/ODw-french.trsl160
-rw-r--r--macros/latex/contrib/onedown/ODw-german.trsl160
-rw-r--r--macros/latex/contrib/onedown/ODw-norwegian.trsl160
-rw-r--r--macros/latex/contrib/onedown/ODw-spanish.trsl160
-rw-r--r--macros/latex/contrib/onedown/ODw-swedish.trsl162
-rw-r--r--macros/latex/contrib/onedown/ODw-turkish.trsl160
-rw-r--r--macros/latex/contrib/onedown/README21
-rw-r--r--macros/latex/contrib/onedown/examples/CardSymbols.tex44
-rw-r--r--macros/latex/contrib/onedown/examples/Compass.pdfbin0 -> 415404 bytes
-rw-r--r--macros/latex/contrib/onedown/examples/Compass.tex20
-rw-r--r--macros/latex/contrib/onedown/examples/Fontsizes.pdfbin0 -> 245668 bytes
-rw-r--r--macros/latex/contrib/onedown/examples/Fontsizes.tex33
-rw-r--r--macros/latex/contrib/onedown/examples/Languages.tex2
-rw-r--r--macros/latex/contrib/onedown/examples/onedown-examples.pdfbin855928 -> 874153 bytes
-rw-r--r--macros/latex/contrib/onedown/examples/onedown-examples.tex44
-rw-r--r--macros/latex/contrib/onedown/examples/onedown-ref.pdfbin228347 -> 227662 bytes
-rw-r--r--macros/latex/contrib/onedown/examples/onedown-ref.tex27
-rw-r--r--macros/latex/contrib/onedown/onedown.dtx486
-rw-r--r--macros/latex/contrib/onedown/onedown.pdfbin1025146 -> 1026845 bytes
32 files changed, 1873 insertions, 1848 deletions
diff --git a/macros/latex/contrib/onedown/ODw-Danish.dict b/macros/latex/contrib/onedown/ODw-Danish.dict
new file mode 100644
index 0000000000..5b6ddeb9b3
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-Danish.dict
@@ -0,0 +1,160 @@
+% this is file ODw-Danish.dict
+%
+% Entries with a "!" denote an abreviated form
+%
+%% retrieve with e.g \translation{dealer-(ODw)} to get givare
+%
+\ProvidesDictionary{ODw}{Danish}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1.}
+\providetranslation{2nd-(ODw)}{2.}
+\providetranslation{3rd-(ODw)}{3.}
+\providetranslation{4th-(ODw)}{4.}
+\providetranslation{ace-(ODw)}{es}
+\providetranslation{Ace-(ODw)}{Es}
+\providetranslation{all-(ODw)}{alle}
+\providetranslation{All-(ODw)}{Alle}
+\providetranslation{all!-(ODw)}{alle}
+\providetranslation{All!-(ODw)}{Alle}
+\providetranslation{all pass-(ODw)}{alle passer}
+\providetranslation{All pass-(ODw)}{Alle passer}
+\providetranslation{a-(ODw)}{e}
+\providetranslation{A-(ODw)}{E}% Es
+%\providetranslation{award-(ODw)}{poäng}
+%\providetranslation{Award-(ODw)}{Poäng}
+\providetranslation{award-(ODw)}{värdering}
+\providetranslation{Award-(ODw)}{Värdering}
+\providetranslation{bid-(ODw)}{meldt}
+\providetranslation{Bid-(ODw)}{Meldt}
+\providetranslation{board-(ODw)}{bræt}
+\providetranslation{Board-(ODw)}{Bræt}
+\providetranslation{brd-(ODw)}{brt}
+\providetranslation{Brd-(ODw)}{Brt}
+\providetranslation{by-(ODw)}{af}
+\providetranslation{call-(ODw)}{bud}
+\providetranslation{Call-(ODw)}{Bud}
+\providetranslation{-card-(ODw)}{-kort}
+\providetranslation{contract-(ODw)}{kontrakten}
+\providetranslation{Contract-(ODw)}{Kontrakten}
+\providetranslation{contr-(ODw)}{kontr}
+\providetranslation{Contr-(ODw)}{Kontr}
+\providetranslation{Dbl-(ODw)}{Dbl}
+\providetranslation{dealer-(ODw)}{givet}
+\providetranslation{Dealer-(ODw)}{Givet}
+\providetranslation{deal-(ODw)}{giv}
+\providetranslation{Deal-(ODw)}{Giv}
+\providetranslation{deal!-(ODw)}{giv}
+\providetranslation{Deal!-(ODw)}{Giv}
+\providetranslation{declarer-(ODw)}{spilfører}
+\providetranslation{Declarer-(ODw)}{Spilfører}
+\providetranslation{decl-(ODw)}{spilf}
+\providetranslation{Decl-(ODw)}{Spilf}
+\providetranslation{distribution points-(ODw)}{fordelingspoints}
+\providetranslation{Distribution Points-(ODw)}{Fordelingspoints}
+\providetranslation{doubled-(ODw)}{dubbelt}
+\providetranslation{Doubled-(ODw)}{Dubbelt}
+\providetranslation{double-(ODw)}{dubbelt}
+\providetranslation{Double-(ODw)}{Dubbelt}
+\providetranslation{dp-(ODw)}{fp}
+\providetranslation{DP-(ODw)}{FP}
+\providetranslation{east-(ODw)}{øst}
+\providetranslation{East-(ODw)}{Øst}
+\providetranslation{e-(ODw)}{ø}
+\providetranslation{E-(ODw)}{Ø}
+\providetranslation{fourth suit forcing-(ODw)}{fjerde farve forcing}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Fjerde Farve Forcing}
+\providetranslation{fsf-(ODw)}{4.\,ff}
+\providetranslation{FSF-(ODw)}{4.\,FF}
+\providetranslation{game forcing-(ODw)}{krav till utgång}
+\providetranslation{Game Forcing-(ODw)}{Krav till Utgång}
+\providetranslation{gf-(ODw)}{ku}
+\providetranslation{GF-(ODw)}{KU}
+\providetranslation{Hand-(ODw)}{Hånd}
+\providetranslation{hand-(ODw)}{hånd}
+\providetranslation{hcp-(ODw)}{hp}
+\providetranslation{HCP-(ODw)}{HP}
+\providetranslation{high card points-(ODw)}{honnørpoints}
+\providetranslation{High Card Points-(ODw)}{Honnørpoints}
+\providetranslation{hlp-(ODw)}{hlp}
+\providetranslation{HLP-(ODw)}{HLP}
+\providetranslation{jack-(ODw)}{knægt}
+\providetranslation{Jack-(ODw)}{Knægt}
+\providetranslation{j-(ODw)}{kn}
+\providetranslation{J-(ODw)}{\mbox{K\kern-0.08emn}}
+\providetranslation{king-(ODw)}{konge}
+\providetranslation{King-(ODw)}{Konge}
+\providetranslation{k-(ODw)}{k}
+\providetranslation{K-(ODw)}{K}
+\providetranslation{lead!-(ODw)}{udsp.}
+\providetranslation{Lead!-(ODw)}{Udsp.}
+\providetranslation{Lead-(ODw)}{Udspillet}
+\providetranslation{lead-(ODw)}{udspillet}
+\providetranslation{length points-(ODw)}{længepoints}
+\providetranslation{Length Points-(ODw)}{Længepoints}
+\providetranslation{lp-(ODw)}{lp}
+\providetranslation{LP-(ODw)}{LP}
+\providetranslation{n-(ODw)}{n}
+\providetranslation{N-(ODw)}{N}
+\providetranslation{new minor forcing-(ODw)}{nye minor forcing}
+\providetranslation{New Minor Forcing-(ODw)}{Nye Minor Forcing}
+\providetranslation{nmf-(ODw)}{nmf}
+\providetranslation{NMF-(ODw)}{NMF}
+\providetranslation{none-(ODw)}{ingen}
+\providetranslation{None-(ODw)}{Ingen}
+\providetranslation{none!-(ODw)}{ingen}
+\providetranslation{None!-(ODw)}{Ingen}
+\providetranslation{north-(ODw)}{norr}
+\providetranslation{North-(ODw)}{Norr}
+\providetranslation{no trump-(ODw)}{uden trumf}
+\providetranslation{No Trump-(ODw)}{Uden Trumf}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{NT-(ODw)}{U\kern-0.01emT}%Uden Trumf
+\providetranslation{nt-(ODw)}{ut}
+\providetranslation{pass-(ODw)}{pas}
+\providetranslation{Pass-(ODw)}{Pas}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{d}
+\providetranslation{Q-(ODw)}{D}
+\providetranslation{queen-(ODw)}{dame}
+\providetranslation{Queen-(ODw)}{Dame}
+\providetranslation{ReDbl-(ODw)}{ReDbl}
+\providetranslation{redoubled-(ODw)}{redubbelt}
+\providetranslation{Redoubled-(ODw)}{Redubbelt}
+\providetranslation{redouble-(ODw)}{redubbelt}
+\providetranslation{ReDouble-(ODw)}{Redubbelt}
+\providetranslation{semi forcing-(ODw)}{semi forcing}
+\providetranslation{Semi Forcing-(ODw)}{Semi Forcing}
+\providetranslation{sf-(ODw)}{sf}
+\providetranslation{SF-(ODw)}{SF}
+\providetranslation{s-(ODw)}{s}
+\providetranslation{S-(ODw)}{S}
+\providetranslation{south-(ODw)}{syd}
+\providetranslation{South-(ODw)}{Syd}
+\providetranslation{suiter-(ODw)}{farver}
+\providetranslation{Suiter-(ODw)}{Farver}
+\providetranslation{suit-(ODw)}{farve}
+\providetranslation{Suit-(ODw)}{Farve}
+\providetranslation{third suit forcing-(ODw)}{tredje farve forcing}
+\providetranslation{Third Suit Forcing-(ODw)}{Tredje Farve Forcing}
+\providetranslation{total points-(ODw)}{total points}
+\providetranslation{Total Points-(ODw)}{Total Points}
+\providetranslation{tp-(ODw)}{tp}
+\providetranslation{TP-(ODw)}{TP}
+\providetranslation{trial bid-(ODw)}{trial bid}
+\providetranslation{Trial bid-(ODw)}{Trial bid}
+\providetranslation{trick-(ODw)}{træk}
+\providetranslation{Trick-(ODw)}{Træk}
+\providetranslation{tsf-(ODw)}{3.\,ff}
+\providetranslation{TSF-(ODw)}{3.\,FF}
+\providetranslation{vulnerable-(ODw)}{sårbar}
+\providetranslation{Vulnerable-(ODw)}{Sårbar}
+\providetranslation{vul-(ODw)}{sår}
+\providetranslation{Vul-(ODw)}{Sår}
+\providetranslation{west-(ODw)}{vest}
+\providetranslation{West-(ODw)}{Vest}
+\providetranslation{w-(ODw)}{v}
+\providetranslation{W-(ODw)}{V}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-Dutch.dict b/macros/latex/contrib/onedown/ODw-Dutch.dict
new file mode 100644
index 0000000000..0391c23d98
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-Dutch.dict
@@ -0,0 +1,160 @@
+% this is file ODw-Dutch.dict from the OneDown bundle
+%
+% Entries with a "!" denote an abreviated form
+%
+% retrieve with e.g. \translation{dealer-(ODw)} to get gever
+%
+\ProvidesDictionary{ODw}{Dutch}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1ste}
+\providetranslation{2nd-(ODw)}{2de}
+\providetranslation{3rd-(ODw)}{3de}
+\providetranslation{4th-(ODw)}{4de}
+\providetranslation{ace-(ODw)}{aas}
+\providetranslation{Ace-(ODw)}{Aas}
+\providetranslation{all-(ODw)}{alle}
+\providetranslation{All-(ODw)}{Alle}
+\providetranslation{all!-(ODw)}{alle}
+\providetranslation{All!-(ODw)}{Alle}
+\providetranslation{all pass-(ODw)}{allen passen}
+\providetranslation{All pass-(ODw)}{Allen passen}
+\providetranslation{a-(ODw)}{a}
+\providetranslation{A-(ODw)}{A}
+\providetranslation{ap-(ODw)}{ap}
+\providetranslation{AP-(ODw)}{AP}
+\providetranslation{award-(ODw)}{beloning}
+\providetranslation{Award-(ODw)}{Beloning}
+\providetranslation{bid-(ODw)}{bod}
+\providetranslation{Bid-(ODw)}{Bod}
+\providetranslation{board-(ODw)}{spel}
+\providetranslation{Board-(ODw)}{Spel}
+\providetranslation{brd-(ODw)}{spel}
+\providetranslation{Brd-(ODw)}{Spel}
+\providetranslation{by-(ODw)}{door}
+\providetranslation{call-(ODw)}{bod}
+\providetranslation{Call-(ODw)}{Bod}
+\providetranslation{-card-(ODw)}{-kaart}
+\providetranslation{contract-(ODw)}{contract}
+\providetranslation{Contract-(ODw)}{Contract}
+\providetranslation{contr-(ODw)}{contr}
+\providetranslation{Contr-(ODw)}{Contr}
+\providetranslation{Dbl-(ODw)}{Dbl}
+\providetranslation{dealer-(ODw)}{gever}
+\providetranslation{Dealer-(ODw)}{Gever}
+\providetranslation{deal-(ODw)}{spel}
+\providetranslation{Deal-(ODw)}{Spel}
+\providetranslation{deal!-(ODw)}{spel}
+\providetranslation{Deal!-(ODw)}{Spel}
+\providetranslation{declarer-(ODw)}{leider}
+\providetranslation{Declarer-(ODw)}{Leider}
+\providetranslation{decl-(ODw)}{leider}
+\providetranslation{Decl-(ODw)}{Leider}
+\providetranslation{distribution points-(ODw)}{distributie punten}
+\providetranslation{Distribution Points-(ODw)}{Distributie Punten}
+\providetranslation{doubled-(ODw)}{gedoubleerd}
+\providetranslation{Doubled-(ODw)}{Gedoubleerd}
+\providetranslation{double-(ODw)}{doublet}
+\providetranslation{Double-(ODw)}{Doublet}
+\providetranslation{dp-(ODw)}{dp}
+\providetranslation{DP-(ODw)}{DP}
+\providetranslation{east-(ODw)}{oost}
+\providetranslation{East-(ODw)}{Oost}
+\providetranslation{e-(ODw)}{o}
+\providetranslation{E-(ODw)}{O}
+\providetranslation{fourth suit forcing-(ODw)}{vierde kleur forcing}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Vierde Kleur Forcing}
+\providetranslation{fsf-(ODw)}{4de\,kf}
+\providetranslation{FSF-(ODw)}{4de\,KF}
+\providetranslation{game forcing-(ODw)}{manche forcing}
+\providetranslation{Game Forcing-(ODw)}{Manche Forcing}
+\providetranslation{gf-(ODw)}{mf}
+\providetranslation{GF-(ODw)}{MF}
+\providetranslation{hand-(ODw)}{hand}
+\providetranslation{Hand-(ODw)}{Hand}
+\providetranslation{hcp-(ODw)}{hp}
+\providetranslation{HCP-(ODw)}{HP}
+\providetranslation{high card points-(ODw)}{hoge punten}
+\providetranslation{High Card Points-(ODw)}{Hoge Punten}
+\providetranslation{hlp-(ODw)}{hlp}
+\providetranslation{HLP-(ODw)}{HLP}
+\providetranslation{jack-(ODw)}{boer}
+\providetranslation{Jack-(ODw)}{Boer}
+\providetranslation{j-(ODw)}{b}
+\providetranslation{J-(ODw)}{B}
+\providetranslation{king-(ODw)}{heer}
+\providetranslation{King-(ODw)}{Heer}
+\providetranslation{k-(ODw)}{h}
+\providetranslation{K-(ODw)}{H}
+\providetranslation{lead!-(ODw)}{uitk.}
+\providetranslation{Lead!-(ODw)}{Uitk.}
+\providetranslation{lead-(ODw)}{uitkomst}
+\providetranslation{Lead-(ODw)}{Uitkomst}
+\providetranslation{length points-(ODw)}{lengte punten}
+\providetranslation{Length Points-(ODw)}{Lengte Punten}
+\providetranslation{lp-(ODw)}{lp}
+\providetranslation{LP-(ODw)}{LP}
+\providetranslation{new minor forcing-(ODw)}{nieuwe lage kleur forcing}
+\providetranslation{New Minor Forcing-(ODw)}{Nieuwe Lage Kleur Forcing}
+\providetranslation{nmf-(ODw)}{nlf}
+\providetranslation{NMF-(ODw)}{NLF}
+\providetranslation{n-(ODw)}{n}
+\providetranslation{N-(ODw)}{N}
+\providetranslation{none-(ODw)}{geen}
+\providetranslation{None-(ODw)}{Geen}
+\providetranslation{none!-(ODw)}{geen}
+\providetranslation{None!-(ODw)}{Geen}
+\providetranslation{north-(ODw)}{noord}
+\providetranslation{North-(ODw)}{Noord}
+\providetranslation{no trump-(ODw)}{sans atout}
+\providetranslation{No Trump-(ODw)}{Sans Atout}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{nt-(ODw)}{sa}
+\providetranslation{NT-(ODw)}{S\kern-0.01emA}
+\providetranslation{pass-(ODw)}{pas}
+\providetranslation{Pass-(ODw)}{Pas}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{v}
+\providetranslation{Q-(ODw)}{V}
+\providetranslation{queen-(ODw)}{vrouw}
+\providetranslation{Queen-(ODw)}{Vrouw}
+\providetranslation{ReDbl-(ODw)}{ReDblt}
+\providetranslation{redoubled-(ODw)}{geredoubleerd}
+\providetranslation{Redoubled-(ODw)}{Geredoubleerd}
+\providetranslation{redouble-(ODw)}{redoublet}
+\providetranslation{ReDouble-(ODw)}{Redoublet}
+\providetranslation{semi forcing-(ODw)}{semi-mancheforcing}
+\providetranslation{Semi Forcing-(ODw)}{Semi-MancheForcing}
+\providetranslation{sf-(ODw)}{smf}
+\providetranslation{SF-(ODw)}{SMF}
+\providetranslation{s-(ODw)}{z}
+\providetranslation{S-(ODw)}{Z}
+\providetranslation{south-(ODw)}{zuid}
+\providetranslation{South-(ODw)}{Zuid}
+\providetranslation{suiter-(ODw)}{kleurenspel}
+\providetranslation{Suiter-(ODw)}{Kleurenspel}
+\providetranslation{suit-(ODw)}{kleur}
+\providetranslation{Suit-(ODw)}{Kleur}
+\providetranslation{third suit forcing-(ODw)}{derde kleur forcing}
+\providetranslation{Third Suit Forcing-(ODw)}{Derde Kleur Forcing}
+\providetranslation{total points-(ODw)}{totaal punten}
+\providetranslation{Total Points-(ODw)}{Totaal Punten}
+\providetranslation{tp-(ODw)}{tp}
+\providetranslation{TP-(ODw)}{TP}
+\providetranslation{trial bid-(ODw)}{help bod}
+\providetranslation{Trial bid-(ODw)}{Help bod}
+\providetranslation{trick-(ODw)}{slag}
+\providetranslation{Trick-(ODw)}{Slag}
+\providetranslation{tsf-(ODw)}{3de\,kf}
+\providetranslation{TSF-(ODw)}{3de\,KF}
+\providetranslation{vulnerable-(ODw)}{kwetsbaar}
+\providetranslation{Vulnerable-(ODw)}{Kwetsbaar}
+\providetranslation{vul-(ODw)}{kwetsb}
+\providetranslation{Vul-(ODw)}{Kwetsb}
+\providetranslation{west-(ODw)}{west}
+\providetranslation{West-(ODw)}{West}
+\providetranslation{w-(ODw)}{w}
+\providetranslation{W-(ODw)}{W}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-English.dict b/macros/latex/contrib/onedown/ODw-English.dict
new file mode 100644
index 0000000000..a448171c85
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-English.dict
@@ -0,0 +1,160 @@
+% this is file ODw-English.dict from the OneDown bundle
+%
+% Entries with a "!" denote an abreviated form
+%
+% retrieve with e.g. \translation{dealer-(ODw)} to get dealer
+%
+\ProvidesDictionary{ODw}{English}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1st}
+\providetranslation{2nd-(ODw)}{2nd}
+\providetranslation{3rd-(ODw)}{3rd}
+\providetranslation{4th-(ODw)}{4th}
+\providetranslation{ace-(ODw)}{ace}
+\providetranslation{Ace-(ODw)}{Ace}
+\providetranslation{all-(ODw)}{all}
+\providetranslation{All-(ODw)}{All}
+\providetranslation{all!-(ODw)}{all}
+\providetranslation{All!-(ODw)}{All}
+\providetranslation{all pass-(ODw)}{all pass}
+\providetranslation{All pass-(ODw)}{All pass}
+\providetranslation{a-(ODw)}{a}
+\providetranslation{A-(ODw)}{A}
+\providetranslation{ap-(ODw)}{ap}
+\providetranslation{AP-(ODw)}{AP}
+\providetranslation{Award-(ODw)}{Award}
+\providetranslation{award-(ODw)}{award}% = points you earn in a quiz
+\providetranslation{Bid-(ODw)}{Bid}
+\providetranslation{bid-(ODw)}{bid}% = e.g. 2C, 4H or 6NT
+\providetranslation{Board-(ODw)}{Board}
+\providetranslation{board-(ODw)}{board}% = equipment that holds 1 deal
+\providetranslation{Brd-(ODw)}{Brd}
+\providetranslation{brd-(ODw)}{brd}% = equipment that holds 1 deal
+\providetranslation{by-(ODw)}{by}
+\providetranslation{Call-(ODw)}{Call}
+\providetranslation{call-(ODw)}{call}% = bid + pass, (re)double
+\providetranslation{-card-(ODw)}{-card}
+\providetranslation{contract-(ODw)}{contract}
+\providetranslation{Contract-(ODw)}{Contract}
+\providetranslation{contr-(ODw)}{contr}
+\providetranslation{Contr-(ODw)}{Contr}
+\providetranslation{Dbl-(ODw)}{Dbl}
+\providetranslation{dealer-(ODw)}{dealer}
+\providetranslation{Dealer-(ODw)}{Dealer}
+\providetranslation{Deal-(ODw)}{Deal}
+\providetranslation{Deal!-(ODw)}{Deal}
+\providetranslation{deal-(ODw)}{deal}% = 4 hands
+\providetranslation{deal!-(ODw)}{deal}% = 4 hands
+\providetranslation{declarer-(ODw)}{declarer}
+\providetranslation{Declarer-(ODw)}{Declarer}
+\providetranslation{decl-(ODw)}{decl}
+\providetranslation{Decl-(ODw)}{Decl}
+\providetranslation{distribution points-(ODw)}{distribution points}
+\providetranslation{Distribution Points-(ODw)}{Distribution Points}
+\providetranslation{doubled-(ODw)}{doubled}
+\providetranslation{Doubled-(ODw)}{Doubled}
+\providetranslation{double-(ODw)}{double}
+\providetranslation{Double-(ODw)}{Double}
+\providetranslation{dp-(ODw)}{dp}
+\providetranslation{DP-(ODw)}{DP}
+\providetranslation{east-(ODw)}{east}
+\providetranslation{East-(ODw)}{East}
+\providetranslation{e-(ODw)}{e}
+\providetranslation{E-(ODw)}{E}
+\providetranslation{fourth suit forcing-(ODw)}{fourth suit forcing}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Fourth Suit Forcing}
+\providetranslation{fsf-(ODw)}{4th\,sf}
+\providetranslation{FSF-(ODw)}{4th\,SF}
+\providetranslation{game forcing-(ODw)}{game forcing}
+\providetranslation{Game Forcing-(ODw)}{Game Forcing}
+\providetranslation{gf-(ODw)}{gf}
+\providetranslation{GF-(ODw)}{GF}
+\providetranslation{Hand-(ODw)}{Hand}
+\providetranslation{hand-(ODw)}{hand}% = 13 cards of 1 player
+\providetranslation{hcp-(ODw)}{hcp}
+\providetranslation{HCP-(ODw)}{HCP}
+\providetranslation{high card points-(ODw)}{high card points}
+\providetranslation{High Card Points-(ODw)}{High Card Points}
+\providetranslation{hlp-(ODw)}{hlp}
+\providetranslation{HLP-(ODw)}{HLP}
+\providetranslation{jack-(ODw)}{jack}
+\providetranslation{Jack-(ODw)}{Jack}
+\providetranslation{j-(ODw)}{j}
+\providetranslation{J-(ODw)}{J}
+\providetranslation{king-(ODw)}{king}
+\providetranslation{King-(ODw)}{King}
+\providetranslation{k-(ODw)}{k}
+\providetranslation{K-(ODw)}{K}
+\providetranslation{lead-(ODw)}{lead}
+\providetranslation{Lead-(ODw)}{Lead}
+\providetranslation{lead!-(ODw)}{lead}
+\providetranslation{Lead!-(ODw)}{Lead}
+\providetranslation{length points-(ODw)}{length points}
+\providetranslation{Length Points-(ODw)}{Length Points}
+\providetranslation{lp-(ODw)}{lp}
+\providetranslation{LP-(ODw)}{LP}
+\providetranslation{new minor forcing-(ODw)}{new minor forcing}
+\providetranslation{New Minor Forcing-(ODw)}{New Minor Forcing}
+\providetranslation{nmf-(ODw)}{nmf}
+\providetranslation{NMF-(ODw)}{NMF}
+\providetranslation{n-(ODw)}{n}
+\providetranslation{N-(ODw)}{N}
+\providetranslation{none-(ODw)}{none}
+\providetranslation{None-(ODw)}{None}
+\providetranslation{none!-(ODw)}{none}
+\providetranslation{None!-(ODw)}{None}
+\providetranslation{north-(ODw)}{north}
+\providetranslation{North-(ODw)}{North}
+\providetranslation{no trump-(ODw)}{no trump}
+\providetranslation{No Trump-(ODw)}{No Trump}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{NT-(ODw)}{N\kern-0.07emT}
+\providetranslation{nt-(ODw)}{nt}
+\providetranslation{pass-(ODw)}{pass}
+\providetranslation{Pass-(ODw)}{Pass}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{q}
+\providetranslation{Q-(ODw)}{Q}
+\providetranslation{queen-(ODw)}{queen}
+\providetranslation{Queen-(ODw)}{Queen}
+\providetranslation{ReDbl-(ODw)}{ReDbl}
+\providetranslation{redoubled-(ODw)}{redoubled}
+\providetranslation{Redoubled-(ODw)}{Redoubled}
+\providetranslation{redouble-(ODw)}{redouble}
+\providetranslation{ReDouble-(ODw)}{ReDouble}
+\providetranslation{semi forcing-(ODw)}{semi forcing}
+\providetranslation{Semi Forcing-(ODw)}{Semi Forcing}
+\providetranslation{sf-(ODw)}{sf}
+\providetranslation{SF-(ODw)}{SF}
+\providetranslation{s-(ODw)}{s}
+\providetranslation{S-(ODw)}{S}
+\providetranslation{south-(ODw)}{south}
+\providetranslation{South-(ODw)}{South}
+\providetranslation{suiter-(ODw)}{suiter}
+\providetranslation{Suiter-(ODw)}{Suiter}
+\providetranslation{suit-(ODw)}{suit}
+\providetranslation{Suit-(ODw)}{Suit}
+\providetranslation{third suit forcing-(ODw)}{third suit forcing}
+\providetranslation{Third Suit Forcing-(ODw)}{Third Suit Forcing}
+\providetranslation{total points-(ODw)}{total points}
+\providetranslation{Total Points-(ODw)}{Total Points}
+\providetranslation{tp-(ODw)}{tp}
+\providetranslation{TP-(ODw)}{TP}
+\providetranslation{trial bid-(ODw)}{trial bid}
+\providetranslation{Trial bid-(ODw)}{Trial bid}
+\providetranslation{trick-(ODw)}{trick}
+\providetranslation{Trick-(ODw)}{Trick}
+\providetranslation{tsf-(ODw)}{3rd\,sf}
+\providetranslation{TSF-(ODw)}{3rd\,SF}
+\providetranslation{vulnerable-(ODw)}{vulnerable}
+\providetranslation{Vulnerable-(ODw)}{Vulnerable}
+\providetranslation{vul-(ODw)}{vul}
+\providetranslation{Vul-(ODw)}{Vul}
+\providetranslation{west-(ODw)}{west}
+\providetranslation{West-(ODw)}{West}
+\providetranslation{w-(ODw)}{w}
+\providetranslation{W-(ODw)}{W}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-French.dict b/macros/latex/contrib/onedown/ODw-French.dict
new file mode 100644
index 0000000000..4f75bfe53f
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-French.dict
@@ -0,0 +1,160 @@
+% this is file ODw-French.dict from the OneDown bundle
+%
+% Entries with a "!" denote an abreviated form
+%
+% retrieve with e.g. \translation{dealer-(ODw)} to get donneur
+%
+\ProvidesDictionary{ODw}{French}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1er}
+\providetranslation{2nd-(ODw)}{2e}
+\providetranslation{3rd-(ODw)}{3e}
+\providetranslation{4th-(ODw)}{4e}
+\providetranslation{ace-(ODw)}{as}
+\providetranslation{Ace-(ODw)}{As}
+\providetranslation{all-(ODw)}{tous}
+\providetranslation{All-(ODw)}{Tous}
+\providetranslation{all!-(ODw)}{tous}
+\providetranslation{All!-(ODw)}{Tous}
+\providetranslation{all pass-(ODw)}{tous passent}
+\providetranslation{All pass-(ODw)}{Tous passent}
+\providetranslation{a-(ODw)}{a}
+\providetranslation{A-(ODw)}{A}
+\providetranslation{ap-(ODw)}{tp}
+\providetranslation{AP-(ODw)}{TP}
+\providetranslation{award-(ODw)}{prix}
+\providetranslation{Award-(ODw)}{Prix}
+\providetranslation{bid-(ODw)}{enchère}
+\providetranslation{Bid-(ODw)}{Enchère}
+\providetranslation{board-(ODw)}{etui}
+\providetranslation{Board-(ODw)}{Etui}
+\providetranslation{brd-(ODw)}{etui}
+\providetranslation{Brd-(ODw)}{Etui}
+\providetranslation{by-(ODw)}{pour}
+\providetranslation{call-(ODw)}{annonce}
+\providetranslation{Call-(ODw)}{Annonce}
+\providetranslation{-card-(ODw)}{-carte}
+\providetranslation{contract-(ODw)}{contrat}
+\providetranslation{Contract-(ODw)}{Contrat}
+\providetranslation{contr-(ODw)}{contr}
+\providetranslation{Contr-(ODw)}{Contr}
+\providetranslation{Dbl-(ODw)}{Ctr}
+\providetranslation{dealer-(ODw)}{donneur}
+\providetranslation{Dealer-(ODw)}{Donneur}
+\providetranslation{deal!-(ODw)}{donne}
+\providetranslation{Deal!-(ODw)}{Donne}
+\providetranslation{deal-(ODw)}{donne}
+\providetranslation{Deal-(ODw)}{Donne}
+\providetranslation{declarer-(ODw)}{déclarant}
+\providetranslation{Declarer-(ODw)}{Déclarant}
+\providetranslation{decl-(ODw)}{décl}
+\providetranslation{Decl-(ODw)}{Décl}
+\providetranslation{distribution points-(ODw)}{points de Distribution}
+\providetranslation{Distribution Points-(ODw)}{Points de Distribution}
+\providetranslation{doubled-(ODw)}{contré}
+\providetranslation{Doubled-(ODw)}{Contré}
+\providetranslation{double-(ODw)}{contre}
+\providetranslation{Double-(ODw)}{Contre}
+\providetranslation{dp-(ODw)}{pd}
+\providetranslation{DP-(ODw)}{PD}
+\providetranslation{east-(ODw)}{est}
+\providetranslation{East-(ODw)}{Est}
+\providetranslation{e-(ODw)}{e}
+\providetranslation{E-(ODw)}{E}
+\providetranslation{fourth suit forcing-(ODw)}{quatrième couleur forcing}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Quatrième Couleur Forcing}
+\providetranslation{fsf-(ODw)}{4e\,cf}
+\providetranslation{FSF-(ODw)}{4e\,CF}
+\providetranslation{game forcing-(ODw)}{forcing de manche}
+\providetranslation{Game Forcing-(ODw)}{Forcing de Manche}
+\providetranslation{GF-(ODw)}{FM}
+\providetranslation{gf-(ODw)}{gf}
+\providetranslation{hand-(ODw)}{main}
+\providetranslation{Hand-(ODw)}{Main}
+\providetranslation{hcp-(ODw)}{h}
+\providetranslation{HCP-(ODw)}{H}
+\providetranslation{high card points-(ODw)}{points d'honneurs}
+\providetranslation{High Card Points-(ODw)}{Points d'Honneurs}
+\providetranslation{hlp-(ODw)}{hl}
+\providetranslation{HLP-(ODw)}{HL}
+\providetranslation{jack-(ODw)}{valet}
+\providetranslation{Jack-(ODw)}{Valet}
+\providetranslation{j-(ODw)}{v}
+\providetranslation{J-(ODw)}{V}
+\providetranslation{king-(ODw)}{roi}
+\providetranslation{King-(ODw)}{Roi}
+\providetranslation{k-(ODw)}{r}
+\providetranslation{K-(ODw)}{R}
+\providetranslation{lead!-(ODw)}{ent.}
+\providetranslation{Lead!-(ODw)}{Ent.}
+\providetranslation{lead-(ODw)}{entame}
+\providetranslation{Lead-(ODw)}{Entame}
+\providetranslation{length points-(ODw)}{points de longueur}
+\providetranslation{Length Points-(ODw)}{Points de Longueur}
+\providetranslation{lp-(ODw)}{pl}
+\providetranslation{LP-(ODw)}{PL}
+\providetranslation{new minor forcing-(ODw)}{nouvelle mineure forcing}
+\providetranslation{New Minor Forcing-(ODw)}{Nouvelle Mineure Forcing}
+\providetranslation{nmf-(ODw)}{nmf}
+\providetranslation{NMF-(ODw)}{NMF}
+\providetranslation{n-(ODw)}{n}
+\providetranslation{N-(ODw)}{N}
+\providetranslation{none-(ODw)}{aucun}
+\providetranslation{None-(ODw)}{Aucun}
+\providetranslation{none!-(ODw)}{aucun}
+\providetranslation{None!-(ODw)}{Aucun}
+\providetranslation{north-(ODw)}{nord}
+\providetranslation{North-(ODw)}{Nord}
+\providetranslation{no trump-(ODw)}{sans atout}
+\providetranslation{No Trump-(ODw)}{Sans Atout}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{nt-(ODw)}{sa}
+\providetranslation{NT-(ODw)}{S\kern-0.01emA}
+\providetranslation{pass-(ODw)}{passe}
+\providetranslation{Pass-(ODw)}{Passe}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{d}
+\providetranslation{Q-(ODw)}{D}
+\providetranslation{queen-(ODw)}{dame}
+\providetranslation{Queen-(ODw)}{Dame}
+\providetranslation{ReDbl-(ODw)}{SurC}
+\providetranslation{redoubled-(ODw)}{surcontré}
+\providetranslation{Redoubled-(ODw)}{Surcontré}
+\providetranslation{redouble-(ODw)}{surcontre}
+\providetranslation{Redouble-(ODw)}{Surcontre}
+\providetranslation{semi forcing-(ODw)}{semi forcing}
+\providetranslation{Semi Forcing-(ODw)}{Semi Forcing}
+\providetranslation{SF-(ODw)}{SF}
+\providetranslation{sf-(ODw)}{sf}
+\providetranslation{s-(ODw)}{s}
+\providetranslation{S-(ODw)}{S}
+\providetranslation{south-(ODw)}{sud}
+\providetranslation{South-(ODw)}{Sud}
+\providetranslation{suiter-(ODw)}{colore}
+\providetranslation{Suiter-(ODw)}{Colore}
+\providetranslation{suit-(ODw)}{couleur}
+\providetranslation{Suit-(ODw)}{Couleur}
+\providetranslation{third suit forcing-(ODw)}{troisième couleur forcing}
+\providetranslation{Third Suit Forcing-(ODw)}{Troisième Couleur Forcing}
+\providetranslation{total points-(ODw)}{points total}
+\providetranslation{Total Points-(ODw)}{Points Total}
+\providetranslation{TP-(ODw)}{PT}
+\providetranslation{tp-(ODw)}{tp}
+\providetranslation{trial bid-(ODw)}{trial bid}
+\providetranslation{Trial bid-(ODw)}{Trial bid}
+\providetranslation{trick-(ODw)}{levée}
+\providetranslation{Trick-(ODw)}{Levée}
+\providetranslation{tsf-(ODw)}{3e\,cf}
+\providetranslation{TSF-(ODw)}{3e\,CF}
+\providetranslation{vulnerable-(ODw)}{vulnérable}
+\providetranslation{Vulnerable-(ODw)}{Vulnérable}
+\providetranslation{vul-(ODw)}{vul}
+\providetranslation{Vul-(ODw)}{Vul}
+\providetranslation{west-(ODw)}{ouest}
+\providetranslation{West-(ODw)}{Ouest}
+\providetranslation{w-(ODw)}{o}
+\providetranslation{W-(ODw)}{O}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-German.dict b/macros/latex/contrib/onedown/ODw-German.dict
new file mode 100644
index 0000000000..3a16cf0881
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-German.dict
@@ -0,0 +1,160 @@
+% this is file ODw-German.dict from the OneDown bundle
+%
+% Entries with a "!" denote an abreviated form
+%
+% retrieve with e.g. \translation{dealer-(ODw)} to get teiler
+%
+\ProvidesDictionary{ODw}{German}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1.}
+\providetranslation{2nd-(ODw)}{2.}
+\providetranslation{3rd-(ODw)}{3.}
+\providetranslation{4th-(ODw)}{4.}
+\providetranslation{ace-(ODw)}{ass}
+\providetranslation{Ace-(ODw)}{Ass}
+\providetranslation{all-(ODw)}{alle}
+\providetranslation{All-(ODw)}{Alle}
+\providetranslation{all!-(ODw)}{alle}
+\providetranslation{All!-(ODw)}{Alle}
+\providetranslation{all pass-(ODw)}{alle passen}
+\providetranslation{All pass-(ODw)}{Alle passen}
+\providetranslation{a-(ODw)}{a}
+\providetranslation{A-(ODw)}{A}
+\providetranslation{ap-(ODw)}{ap}
+\providetranslation{AP-(ODw)}{AP}
+\providetranslation{award-(ODw)}{Bewertung}
+\providetranslation{Award-(ODw)}{Bewertung}
+\providetranslation{bid-(ODw)}{gebot}
+\providetranslation{Bid-(ODw)}{Gebot}
+\providetranslation{board-(ODw)}{board}
+\providetranslation{Board-(ODw)}{Board}
+\providetranslation{brd-(ODw)}{brd}
+\providetranslation{Brd-(ODw)}{Brd}
+\providetranslation{by-(ODw)}{von}
+\providetranslation{call-(ODw)}{ansage}
+\providetranslation{Call-(ODw)}{Ansage}
+\providetranslation{-card-(ODw)}{er}
+\providetranslation{contract-(ODw)}{kontrakt}
+\providetranslation{Contract-(ODw)}{Kontrakt}
+\providetranslation{contr-(ODw)}{kontr}
+\providetranslation{Contr-(ODw)}{Kontr}
+\providetranslation{Dbl-(ODw)}{Kntr}
+\providetranslation{dealer-(ODw)}{teiler}
+\providetranslation{Dealer-(ODw)}{Teiler}
+\providetranslation{deal!-(ODw)}{aust}
+\providetranslation{Deal!-(ODw)}{Aust}
+\providetranslation{deal-(ODw)}{austeilung}
+\providetranslation{Deal-(ODw)}{Austeilung}
+\providetranslation{declarer-(ODw)}{alleinspieler}
+\providetranslation{Declarer-(ODw)}{Alleinspieler}
+\providetranslation{decl-(ODw)}{alleinsp}
+\providetranslation{Decl-(ODw)}{Alleinsp}
+\providetranslation{distribution points-(ODw)}{verteilungspunkte}
+\providetranslation{Distribution Points-(ODw)}{Verteilungspunkte}
+\providetranslation{doubled-(ODw)}{kontriert}
+\providetranslation{Doubled-(ODw)}{Kontriert}
+\providetranslation{double-(ODw)}{kontra}
+\providetranslation{Double-(ODw)}{Kontra}
+\providetranslation{dp-(ODw)}{v}
+\providetranslation{DP-(ODw)}{V}
+\providetranslation{east-(ODw)}{ost}
+\providetranslation{East-(ODw)}{Ost}
+\providetranslation{e-(ODw)}{o}
+\providetranslation{E-(ODw)}{O}
+\providetranslation{fourth suit forcing-(ODw)}{vierte farbe forcing}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Vierte Farbe Forcing}
+\providetranslation{fsf-(ODw)}{4.\,ff}
+\providetranslation{FSF-(ODw)}{4.\,FF}
+\providetranslation{game forcing-(ODw)}{partie forcing}
+\providetranslation{Game Forcing-(ODw)}{Partie Forcing}
+\providetranslation{gf-(ODw)}{pf}
+\providetranslation{GF-(ODw)}{PF}
+\providetranslation{hand-(ODw)}{blatt}
+\providetranslation{Hand-(ODw)}{Blatt}
+\providetranslation{hcp-(ODw)}{f}
+\providetranslation{HCP-(ODw)}{F}
+\providetranslation{high card points-(ODw)}{figurenpunkte}
+\providetranslation{High Card Points-(ODw)}{Figurenpunkte}
+\providetranslation{hlp-(ODw)}{fl}
+\providetranslation{HLP-(ODw)}{FL}
+\providetranslation{jack-(ODw)}{bube}
+\providetranslation{Jack-(ODw)}{Bube}
+\providetranslation{j-(ODw)}{b}
+\providetranslation{J-(ODw)}{B}
+\providetranslation{king-(ODw)}{könig}
+\providetranslation{King-(ODw)}{König}
+\providetranslation{k-(ODw)}{k}
+\providetranslation{K-(ODw)}{K}
+\providetranslation{lead!-(ODw)}{aussp.}
+\providetranslation{Lead!-(ODw)}{Aussp.}
+\providetranslation{lead-(ODw)}{ausspiel}
+\providetranslation{Lead-(ODw)}{Ausspiel}
+\providetranslation{length points-(ODw)}{längenpunkte}
+\providetranslation{Length Points-(ODw)}{Längenpunkte}
+\providetranslation{lp-(ODw)}{l}
+\providetranslation{LP-(ODw)}{L}
+\providetranslation{new minor forcing-(ODw)}{neue unterfarbe forcing}
+\providetranslation{New Minor Forcing-(ODw)}{Neue Unterfarbe Forcing}
+\providetranslation{nmf-(ODw)}{nuf}
+\providetranslation{NMF-(ODw)}{NUF}
+\providetranslation{n-(ODw)}{n}
+\providetranslation{N-(ODw)}{N}
+\providetranslation{none-(ODw)}{keiner}
+\providetranslation{None-(ODw)}{Keiner}
+\providetranslation{none!-(ODw)}{keiner}
+\providetranslation{None!-(ODw)}{Keiner}
+\providetranslation{north-(ODw)}{nord}
+\providetranslation{North-(ODw)}{Nord}
+\providetranslation{no trump-(ODw)}{sans atout}
+\providetranslation{No Trump-(ODw)}{Sans Atout}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{nt-(ODw)}{sa}
+\providetranslation{NT-(ODw)}{S\kern-0.01emA}
+\providetranslation{pass-(ODw)}{passe}
+\providetranslation{Pass-(ODw)}{Passe}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{d}
+\providetranslation{Q-(ODw)}{D}
+\providetranslation{queen-(ODw)}{dame}
+\providetranslation{Queen-(ODw)}{Dame}
+\providetranslation{ReDbl-(ODw)}{ReKntr}
+\providetranslation{redoubled-(ODw)}{rekontriert}
+\providetranslation{Redoubled-(ODw)}{Rekontriert}
+\providetranslation{redouble-(ODw)}{rekontra}
+\providetranslation{ReDouble-(ODw)}{ReKontra}
+\providetranslation{semi forcing-(ODw)}{semi forcing}
+\providetranslation{Semi Forcing-(ODw)}{Semi Forcing}
+\providetranslation{sf-(ODw)}{sf}
+\providetranslation{SF-(ODw)}{SF}
+\providetranslation{s-(ODw)}{s}
+\providetranslation{S-(ODw)}{S}
+\providetranslation{south-(ODw)}{süd}
+\providetranslation{South-(ODw)}{Süd}
+\providetranslation{suiter-(ODw)}{färber}
+\providetranslation{Suiter-(ODw)}{Färber}
+\providetranslation{suit-(ODw)}{farbe}
+\providetranslation{Suit-(ODw)}{Farbe}
+\providetranslation{third suit forcing-(ODw)}{dritte farbe forcing}
+\providetranslation{Third Suit Forcing-(ODw)}{Dritte Farbe Forcing}
+\providetranslation{total points-(ODw)}{figuren-verteilungspunkte}
+\providetranslation{Total Points-(ODw)}{Figuren-Verteilungspunkte}
+\providetranslation{tp-(ODw)}{fv}
+\providetranslation{TP-(ODw)}{FV}
+\providetranslation{trial bid-(ODw)}{versuchsgebot}
+\providetranslation{Trial bid-(ODw)}{Versuchsgebot}
+\providetranslation{trick-(ODw)}{stich}
+\providetranslation{Trick-(ODw)}{Stich}
+\providetranslation{tsf-(ODw)}{3.\,ff}
+\providetranslation{TSF-(ODw)}{3.\,FF}
+\providetranslation{vulnerable-(ODw)}{gefahr}
+\providetranslation{Vulnerable-(ODw)}{Gefahr}
+\providetranslation{vul-(ODw)}{gef}
+\providetranslation{Vul-(ODw)}{Gef}
+\providetranslation{west-(ODw)}{west}
+\providetranslation{West-(ODw)}{West}
+\providetranslation{w-(ODw)}{w}
+\providetranslation{W-(ODw)}{W}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-Norsk.dict b/macros/latex/contrib/onedown/ODw-Norsk.dict
new file mode 100644
index 0000000000..2db801f3c8
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-Norsk.dict
@@ -0,0 +1,160 @@
+% this is file ODw-Norsk.dict from the OneDown bundle
+% Entries with a "!" denote an abreviated form
+% Thanks to Gunnar & Anne
+%
+% retrieve with e.g \translation{dealer-(ODw)} to get givare
+%
+\ProvidesDictionary{ODw}{Norsk}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1.}
+\providetranslation{2nd-(ODw)}{2.}
+\providetranslation{3rd-(ODw)}{3.}
+\providetranslation{4th-(ODw)}{4.}
+\providetranslation{ace-(ODw)}{ess}
+\providetranslation{Ace-(ODw)}{Ess}
+\providetranslation{all-(ODw)}{alle}
+\providetranslation{All-(ODw)}{Alle}
+\providetranslation{all!-(ODw)}{alle}
+\providetranslation{All!-(ODw)}{Alle}
+\providetranslation{all pass-(ODw)}{pass rundt}
+\providetranslation{All pass-(ODw)}{Pass rundt}
+\providetranslation{a-(ODw)}{e}
+\providetranslation{A-(ODw)}{E}
+%\providetranslation{award-(ODw)}{poeng}
+%\providetranslation{Award-(ODw)}{Poeng}
+\providetranslation{award-(ODw)}{vurdering}
+\providetranslation{Award-(ODw)}{Vurdering}
+\providetranslation{bid-(ODw)}{bud}
+\providetranslation{Bid-(ODw)}{Bud}
+\providetranslation{board-(ODw)}{spill}
+\providetranslation{Board-(ODw)}{Spill}
+\providetranslation{brd-(ODw)}{spill}
+\providetranslation{Brd-(ODw)}{Spill}
+\providetranslation{by-(ODw)}{ved}
+\providetranslation{call-(ODw)}{bud}
+\providetranslation{Call-(ODw)}{Bud}
+\providetranslation{-card-(ODw)}{-kortfarger}
+\providetranslation{contract-(ODw)}{kontrakt}
+\providetranslation{Contract-(ODw)}{Kontrakt}
+\providetranslation{contr-(ODw)}{kontr}
+\providetranslation{Contr-(ODw)}{Kontr}
+\providetranslation{Dbl-(ODw)}{Dbl}
+\providetranslation{dealer-(ODw)}{giver}
+\providetranslation{Dealer-(ODw)}{Giver}
+\providetranslation{deal-(ODw)}{giv}
+\providetranslation{Deal-(ODw)}{Giv}
+\providetranslation{deal!-(ODw)}{giv}
+\providetranslation{Deal!-(ODw)}{Giv}
+\providetranslation{declarer-(ODw)}{spilleförer}
+\providetranslation{Declarer-(ODw)}{Spilleförer}
+\providetranslation{decl-(ODw)}{spför}
+\providetranslation{Decl-(ODw)}{Spför}
+\providetranslation{distribution points-(ODw)}{trumfpoeng}
+\providetranslation{Distribution Points-(ODw)}{Trumfpoeng}
+\providetranslation{doubled-(ODw)}{doblet}
+\providetranslation{Doubled-(ODw)}{Doblet}
+\providetranslation{double-(ODw)}{doblet}
+\providetranslation{Double-(ODw)}{Doblet}
+\providetranslation{dp-(ODw)}{tp}
+\providetranslation{DP-(ODw)}{TP}
+\providetranslation{east-(ODw)}{øst}
+\providetranslation{East-(ODw)}{Øst}
+\providetranslation{e-(ODw)}{ø}
+\providetranslation{E-(ODw)}{Ø}
+\providetranslation{fourth suit forcing-(ODw)}{fjerde farge forcing}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Fjerde Farge Forcing}
+\providetranslation{fsf-(ODw)}{4.\,ff}
+\providetranslation{FSF-(ODw)}{4.\,FF}
+\providetranslation{game forcing-(ODw)}{utgangskrav}
+\providetranslation{Game Forcing-(ODw)}{UtgangsKrav}
+\providetranslation{gf-(ODw)}{uk}
+\providetranslation{GF-(ODw)}{UK}
+\providetranslation{Hand-(ODw)}{Hånd}
+\providetranslation{hand-(ODw)}{hånd}
+\providetranslation{hcp-(ODw)}{hp}
+\providetranslation{HCP-(ODw)}{HP}
+\providetranslation{high card points-(ODw)}{høy kort poeng}
+\providetranslation{High Card Points-(ODw)}{høy Kort Poeng}
+\providetranslation{hlp-(ODw)}{hlp}
+\providetranslation{HLP-(ODw)}{HLP}
+\providetranslation{jack-(ODw)}{knekt}
+\providetranslation{Jack-(ODw)}{Knekt}
+\providetranslation{J-(ODw)}{\mbox{K\kern-0.08emn}}
+\providetranslation{j-(ODw)}{\mbox{kn}}
+\providetranslation{king-(ODw)}{konge}
+\providetranslation{King-(ODw)}{Konge}
+\providetranslation{k-(ODw)}{k}
+\providetranslation{K-(ODw)}{K}
+\providetranslation{lead!-(ODw)}{utsp.}
+\providetranslation{Lead!-(ODw)}{Utsp.}
+\providetranslation{lead-(ODw)}{utspill}
+\providetranslation{Lead-(ODw)}{Utspill}
+\providetranslation{length points-(ODw)}{lengde poeng}
+\providetranslation{Length Points-(ODw)}{Lengde Poeng}
+\providetranslation{lp-(ODw)}{lp}
+\providetranslation{LP-(ODw)}{LP}
+\providetranslation{new minor forcing-(ODw)}{nye minor krav}
+\providetranslation{New Minor Forcing-(ODw)}{Nye Minor Krav}
+\providetranslation{nmf-(ODw)}{nmk}
+\providetranslation{NMF-(ODw)}{NMK}
+\providetranslation{n-(ODw)}{n}
+\providetranslation{N-(ODw)}{N}
+\providetranslation{none!-(ODw)}{ing}
+\providetranslation{None!-(ODw)}{Ing}
+\providetranslation{none-(ODw)}{ingen}
+\providetranslation{None-(ODw)}{Ingen}
+\providetranslation{north-(ODw)}{nord}
+\providetranslation{North-(ODw)}{Nord}
+\providetranslation{no trump-(ODw)}{uten trumf}
+\providetranslation{No Trump-(ODw)}{Uten Trumf}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{NT-(ODw)}{N\kern-0.07emT}
+\providetranslation{nt-(ODw)}{nt}
+\providetranslation{pass-(ODw)}{pass}
+\providetranslation{Pass-(ODw)}{Pass}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{d}
+\providetranslation{Q-(ODw)}{D}
+\providetranslation{queen-(ODw)}{dame}
+\providetranslation{Queen-(ODw)}{Dame}
+\providetranslation{ReDbl-(ODw)}{ReDbl}
+\providetranslation{redoubled-(ODw)}{redoblet}
+\providetranslation{Redoubled-(ODw)}{Redoblet}
+\providetranslation{redouble-(ODw)}{redoblet}
+\providetranslation{ReDouble-(ODw)}{Redoblet}
+\providetranslation{semi forcing-(ODw)}{RundKrav}
+\providetranslation{Semi Forcing-(ODw)}{RundKrav}
+\providetranslation{sf-(ODw)}{rk}
+\providetranslation{SF-(ODw)}{RK}
+\providetranslation{s-(ODw)}{s}
+\providetranslation{S-(ODw)}{S}
+\providetranslation{south-(ODw)}{syd}
+\providetranslation{South-(ODw)}{Syd}
+\providetranslation{suiter-(ODw)}{farger}
+\providetranslation{Suiter-(ODw)}{Farger}
+\providetranslation{suit-(ODw)}{farge}
+\providetranslation{Suit-(ODw)}{Farge}
+\providetranslation{third suit forcing-(ODw)}{tredje farge forcing}
+\providetranslation{Third Suit Forcing-(ODw)}{Tredje Farge Forcing}
+\providetranslation{total points-(ODw)}{totalt poeng}
+\providetranslation{Total Points-(ODw)}{Totalt Poeng}
+\providetranslation{tp-(ODw)}{tp}
+\providetranslation{TP-(ODw)}{TP}
+\providetranslation{trial bid-(ODw)}{prøving bud}
+\providetranslation{Trial bid-(ODw)}{Prøving bud}
+\providetranslation{trick-(ODw)}{trekk}
+\providetranslation{Trick-(ODw)}{Trekk}
+\providetranslation{tsf-(ODw)}{3.\,ff}
+\providetranslation{TSF-(ODw)}{3.\,FF}
+\providetranslation{vulnerable-(ODw)}{sone}
+\providetranslation{Vulnerable-(ODw)}{Sone}
+\providetranslation{vul-(ODw)}{sone}
+\providetranslation{Vul-(ODw)}{Sone}
+\providetranslation{west-(ODw)}{vest}
+\providetranslation{West-(ODw)}{Vest}
+\providetranslation{w-(ODw)}{v}
+\providetranslation{W-(ODw)}{V}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-Spanish.dict b/macros/latex/contrib/onedown/ODw-Spanish.dict
new file mode 100644
index 0000000000..60dc1e9e8b
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-Spanish.dict
@@ -0,0 +1,160 @@
+% this is file ODw-Spanish.dict from the OneDown bundle
+%
+% Entries with a "!" denote an abreviated form
+%
+% retrieve with e.g. \translation{dealer-(ODw)} to get dador
+%
+\ProvidesDictionary{ODw}{Spanish}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1er}
+\providetranslation{2nd-(ODw)}{2do}
+\providetranslation{3rd-(ODw)}{3er}
+\providetranslation{4th-(ODw)}{4th}
+\providetranslation{ace-(ODw)}{as}
+\providetranslation{Ace-(ODw)}{As}
+\providetranslation{all-(ODw)}{todos}
+\providetranslation{All-(ODw)}{Todos}
+\providetranslation{all!-(ODw)}{todos}
+\providetranslation{All!-(ODw)}{Todos}
+\providetranslation{all pass-(ODw)}{todos pasan}
+\providetranslation{All pass-(ODw)}{Todos pasan}
+\providetranslation{a-(ODw)}{a}
+\providetranslation{A-(ODw)}{A}
+\providetranslation{ap-(ODw)}{tp}
+\providetranslation{AP-(ODw)}{TP}
+\providetranslation{award-(ODw)}{premio}
+\providetranslation{Award-(ODw)}{Premio}
+\providetranslation{bid-(ODw)}{contrato}
+\providetranslation{Bid-(ODw)}{Contrato}
+\providetranslation{board-(ODw)}{estuche}
+\providetranslation{Board-(ODw)}{Estuche}
+\providetranslation{brd-(ODw)}{est}
+\providetranslation{Brd-(ODw)}{Est}
+\providetranslation{by-(ODw)}{por}
+\providetranslation{call-(ODw)}{annonce}
+\providetranslation{Call-(ODw)}{Annonce}
+\providetranslation{-card-(ODw)}{-carta}
+\providetranslation{contract-(ODw)}{contrato final}
+\providetranslation{Contract-(ODw)}{Contrato final}
+\providetranslation{contr-(ODw)}{ctrf}
+\providetranslation{Contr-(ODw)}{Ctrf}
+\providetranslation{Dbl-(ODw)}{Dbl}
+\providetranslation{dealer-(ODw)}{dador}
+\providetranslation{Dealer-(ODw)}{Dador}
+\providetranslation{deal!-(ODw)}{donne}
+\providetranslation{Deal!-(ODw)}{Donne}
+\providetranslation{deal-(ODw)}{donne}
+\providetranslation{Deal-(ODw)}{Donne}
+\providetranslation{declarer-(ODw)}{declarante}
+\providetranslation{Declarer-(ODw)}{Declarante}
+\providetranslation{decl-(ODw)}{decl}
+\providetranslation{Decl-(ODw)}{Decl}
+\providetranslation{distribution points-(ODw)}{puntos de distribución}
+\providetranslation{Distribution Points-(ODw)}{Puntos de Distribución}
+\providetranslation{doubled-(ODw)}{doblado}
+\providetranslation{Doubled-(ODw)}{Doblado}
+\providetranslation{double-(ODw)}{doblo}
+\providetranslation{Double-(ODw)}{Doblo}
+\providetranslation{dp-(ODw)}{pd}
+\providetranslation{DP-(ODw)}{PD}
+\providetranslation{east-(ODw)}{este}
+\providetranslation{East-(ODw)}{Este}
+\providetranslation{e-(ODw)}{e}
+\providetranslation{E-(ODw)}{E}
+\providetranslation{fourth suit forcing-(ODw)}{cuarto palo forcing}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Cuarto Palo Forcing}
+\providetranslation{fsf-(ODw)}{4th\,pf}
+\providetranslation{FSF-(ODw)}{4th\,PF}
+\providetranslation{game forcing-(ODw)}{forcing a manga}
+\providetranslation{Game Forcing-(ODw)}{Forcing a Manga}
+\providetranslation{GF-(ODw)}{FG}
+\providetranslation{gf-(ODw)}{fg}
+\providetranslation{hand-(ODw)}{mano}
+\providetranslation{Hand-(ODw)}{Mano}
+\providetranslation{hcp-(ODw)}{ph}
+\providetranslation{HCP-(ODw)}{PH}
+\providetranslation{high card points-(ODw)}{puntos de honores}
+\providetranslation{High Card Points-(ODw)}{Puntos de Honores}
+\providetranslation{hlp-(ODw)}{hl}
+\providetranslation{HLP-(ODw)}{HL}
+\providetranslation{jack-(ODw)}{jaco}
+\providetranslation{Jack-(ODw)}{Jaco}
+\providetranslation{j-(ODw)}{j}
+\providetranslation{J-(ODw)}{J}
+\providetranslation{king-(ODw)}{rey}
+\providetranslation{King-(ODw)}{Rey}
+\providetranslation{k-(ODw)}{r}
+\providetranslation{K-(ODw)}{R}
+\providetranslation{lead!-(ODw)}{ent.}
+\providetranslation{Lead!-(ODw)}{Ent.}
+\providetranslation{lead-(ODw)}{entame}
+\providetranslation{Lead-(ODw)}{Entame}
+\providetranslation{length points-(ODw)}{points de longueur}
+\providetranslation{Length Points-(ODw)}{Points de Longueur}
+\providetranslation{lp-(ODw)}{pl}
+\providetranslation{LP-(ODw)}{PL}
+\providetranslation{new minor forcing-(ODw)}{neuvo menor forcing}
+\providetranslation{New Minor Forcing-(ODw)}{Neuvo Menor Forcing}
+\providetranslation{nmf-(ODw)}{nmf}
+\providetranslation{NMF-(ODw)}{NMF}
+\providetranslation{n-(ODw)}{n}
+\providetranslation{N-(ODw)}{N}
+\providetranslation{none-(ODw)}{nadie}
+\providetranslation{None-(ODw)}{Nadie}
+\providetranslation{none!-(ODw)}{nadie}
+\providetranslation{None!-(ODw)}{Nadie}
+\providetranslation{north-(ODw)}{norte}
+\providetranslation{North-(ODw)}{Norte}
+\providetranslation{no trump-(ODw)}{sin triunfo}
+\providetranslation{No Trump-(ODw)}{Sin Triunfo}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{nt-(ODw)}{st}
+\providetranslation{NT-(ODw)}{S\kern-0.01emT}
+\providetranslation{pass-(ODw)}{paso}
+\providetranslation{Pass-(ODw)}{Paso}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{d}
+\providetranslation{Q-(ODw)}{D}
+\providetranslation{queen-(ODw)}{dama}
+\providetranslation{Queen-(ODw)}{Dama}
+\providetranslation{ReDbl-(ODw)}{ReDbl}
+\providetranslation{redoubled-(ODw)}{redoblado}
+\providetranslation{Redoubled-(ODw)}{Redoblado}
+\providetranslation{redouble-(ODw)}{redoblo}
+\providetranslation{Redouble-(ODw)}{Redoblo}
+\providetranslation{semi forcing-(ODw)}{semi forcing}
+\providetranslation{Semi Forcing-(ODw)}{Semi Forcing}
+\providetranslation{SF-(ODw)}{SF}
+\providetranslation{sf-(ODw)}{sf}
+\providetranslation{s-(ODw)}{s}
+\providetranslation{S-(ODw)}{S}
+\providetranslation{south-(ODw)}{sur}
+\providetranslation{South-(ODw)}{Sur}
+\providetranslation{suiter-(ODw)}{color}
+\providetranslation{Suiter-(ODw)}{Color}
+\providetranslation{suit-(ODw)}{palo}
+\providetranslation{Suit-(ODw)}{Palo}
+\providetranslation{third suit forcing-(ODw)}{tercer palo forcing}
+\providetranslation{Third Suit Forcing-(ODw)}{Tercer Palo Forcing}
+\providetranslation{total points-(ODw)}{puntos de honor-distribución}
+\providetranslation{Total Points-(ODw)}{Puntos de Honor-Distribución}
+\providetranslation{TP-(ODw)}{PHD}
+\providetranslation{tp-(ODw)}{phd}
+\providetranslation{trial bid-(ODw)}{trial bid}
+\providetranslation{Trial bid-(ODw)}{Trial bid}
+\providetranslation{trick-(ODw)}{baza}
+\providetranslation{Trick-(ODw)}{Baza}
+\providetranslation{tsf-(ODw)}{3er\,pf}
+\providetranslation{TSF-(ODw)}{3er\,PF}
+\providetranslation{vulnerable-(ODw)}{vulnerable}
+\providetranslation{Vulnerable-(ODw)}{Vulnerable}
+\providetranslation{vul-(ODw)}{vul}
+\providetranslation{Vul-(ODw)}{Vul}
+\providetranslation{west-(ODw)}{oeste}
+\providetranslation{West-(ODw)}{Oeste}
+\providetranslation{w-(ODw)}{o}
+\providetranslation{W-(ODw)}{O}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-Swedish.dict b/macros/latex/contrib/onedown/ODw-Swedish.dict
new file mode 100644
index 0000000000..633571cd40
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-Swedish.dict
@@ -0,0 +1,162 @@
+% this is file ODw-Swedish.dict from the OneDown bundle
+%
+% Entries with a "!" denote an abreviated form
+% Thanks to Per Karlberg
+% retrieve with e.g \translation{dealer-(ODw)} to get givare
+%
+\ProvidesDictionary{ODw}{Swedish}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1:a}
+\providetranslation{2nd-(ODw)}{2:a}
+\providetranslation{3rd-(ODw)}{3:e}
+\providetranslation{4th-(ODw)}{4:e}
+\providetranslation{ace-(ODw)}{äss}
+\providetranslation{Ace-(ODw)}{Äss}
+\providetranslation{all-(ODw)}{alla}
+\providetranslation{All-(ODw)}{Alla}
+\providetranslation{all!-(ODw)}{alla}
+\providetranslation{All!-(ODw)}{Alla}
+\providetranslation{all pass-(ODw)}{alla passet}
+\providetranslation{All pass-(ODw)}{Alla passet}
+\providetranslation{a-(ODw)}{ä}
+\providetranslation{A-(ODw)}{Ä}
+\providetranslation{ap-(ODw)}{ap}
+\providetranslation{AP-(ODw)}{AP}
+%\providetranslation{award-(ODw)}{poäng}
+%\providetranslation{Award-(ODw)}{Poäng}
+\providetranslation{award-(ODw)}{värdering}
+\providetranslation{Award-(ODw)}{Värdering}
+\providetranslation{bid-(ODw)}{bud}
+\providetranslation{Bid-(ODw)}{Bud}
+\providetranslation{board-(ODw)}{bricka}
+\providetranslation{Board-(ODw)}{Bricka}
+\providetranslation{brd-(ODw)}{brck}
+\providetranslation{Brd-(ODw)}{Brck}
+\providetranslation{by-(ODw)}{per}
+\providetranslation{call-(ODw)}{bud}
+\providetranslation{Call-(ODw)}{Bud}
+\providetranslation{-card-(ODw)}{-kort}
+\providetranslation{contract-(ODw)}{kontrakt}
+\providetranslation{Contract-(ODw)}{Kontrakt}
+\providetranslation{contr-(ODw)}{kontr}
+\providetranslation{Contr-(ODw)}{Kontr}
+\providetranslation{Dbl-(ODw)}{Dbl}
+\providetranslation{dealer-(ODw)}{givare}
+\providetranslation{Dealer-(ODw)}{Givare}
+\providetranslation{deal-(ODw)}{giv}
+\providetranslation{Deal-(ODw)}{Giv}
+\providetranslation{deal!-(ODw)}{giv}
+\providetranslation{Deal!-(ODw)}{Giv}
+\providetranslation{declarer-(ODw)}{spelförare}
+\providetranslation{Declarer-(ODw)}{Spelförare}
+\providetranslation{decl-(ODw)}{spför}
+\providetranslation{Decl-(ODw)}{Spför}
+\providetranslation{distribution points-(ODw)}{fördelningpoints}
+\providetranslation{Distribution Points-(ODw)}{Fördelningpoints}
+\providetranslation{doubled-(ODw)}{dubbelt}
+\providetranslation{Doubled-(ODw)}{Dubbelt}
+\providetranslation{double-(ODw)}{dubbelt}
+\providetranslation{Double-(ODw)}{Dubbelt}
+\providetranslation{dp-(ODw)}{fp}
+\providetranslation{DP-(ODw)}{FP}
+\providetranslation{east-(ODw)}{öst}
+\providetranslation{East-(ODw)}{Öst}
+\providetranslation{e-(ODw)}{ö}
+\providetranslation{E-(ODw)}{Ö}
+\providetranslation{fourth suit forcing-(ODw)}{fjärde farve forcing}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Fjärde Farve Forcing}
+\providetranslation{fsf-(ODw)}{4:e\,ff}
+\providetranslation{FSF-(ODw)}{4:e\,FF}
+\providetranslation{game forcing-(ODw)}{krav till udgang}
+\providetranslation{Game Forcing-(ODw)}{Krav till Udgang}
+\providetranslation{gf-(ODw)}{ku}
+\providetranslation{GF-(ODw)}{KU}
+\providetranslation{Hand-(ODw)}{Hand}
+\providetranslation{hand-(ODw)}{hand}
+\providetranslation{hcp-(ODw)}{hp}
+\providetranslation{HCP-(ODw)}{HP}
+\providetranslation{high card points-(ODw)}{Honnørpoints}
+\providetranslation{High Card Points-(ODw)}{honnørpoints}
+\providetranslation{hlp-(ODw)}{hlp}
+\providetranslation{HLP-(ODw)}{HLP}
+\providetranslation{jack-(ODw)}{knekt}
+\providetranslation{Jack-(ODw)}{Knekt}
+\providetranslation{j-(ODw)}{kn}
+\providetranslation{J-(ODw)}{\mbox{K\kern-0.08emn}}
+\providetranslation{king-(ODw)}{kung}
+\providetranslation{King-(ODw)}{Kung}
+\providetranslation{k-(ODw)}{k}
+\providetranslation{K-(ODw)}{K}
+\providetranslation{lead!-(ODw)}{utsp.}
+\providetranslation{Lead!-(ODw)}{Utsp.}
+\providetranslation{lead-(ODw)}{utspel}
+\providetranslation{Lead-(ODw)}{Utspel}
+\providetranslation{length points-(ODw)}{längd points}
+\providetranslation{Length Points-(ODw)}{Längd Points}
+\providetranslation{lp-(ODw)}{lp}
+\providetranslation{LP-(ODw)}{LP}
+\providetranslation{new minor forcing-(ODw)}{new minor forcing}
+\providetranslation{New Minor Forcing-(ODw)}{New Minor Forcing}
+\providetranslation{nmf-(ODw)}{nmf}
+\providetranslation{NMF-(ODw)}{NMF}
+\providetranslation{n-(ODw)}{n}
+\providetranslation{N-(ODw)}{N}
+\providetranslation{none!-(ODw)}{ing}
+\providetranslation{None!-(ODw)}{Ing}
+\providetranslation{none-(ODw)}{ingen}
+\providetranslation{None-(ODw)}{Ingen}
+\providetranslation{north-(ODw)}{norr}
+\providetranslation{North-(ODw)}{Norr}
+\providetranslation{no trump-(ODw)}{utan trumf}
+\providetranslation{No Trump-(ODw)}{Utan Trumf}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{NT-(ODw)}{N\kern-0.07emT}
+\providetranslation{nt-(ODw)}{nt}
+\providetranslation{pass-(ODw)}{pass}
+\providetranslation{Pass-(ODw)}{Pass}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{d}
+\providetranslation{Q-(ODw)}{D}
+\providetranslation{queen-(ODw)}{dame}
+\providetranslation{Queen-(ODw)}{Dame}
+\providetranslation{ReDbl-(ODw)}{ReDbl}
+\providetranslation{redoubled-(ODw)}{redubbelt}
+\providetranslation{Redoubled-(ODw)}{Redubbelt}
+\providetranslation{redouble-(ODw)}{redubbelt}
+\providetranslation{Redouble-(ODw)}{Redubbelt}
+\providetranslation{semi forcing-(ODw)}{semi forcing}
+\providetranslation{Semi Forcing-(ODw)}{Semi Forcing}
+\providetranslation{sf-(ODw)}{sf}
+\providetranslation{SF-(ODw)}{SF}
+\providetranslation{s-(ODw)}{s}
+\providetranslation{S-(ODw)}{S}
+\providetranslation{south-(ODw)}{syd}
+\providetranslation{South-(ODw)}{Syd}
+\providetranslation{suiter-(ODw)}{farver}
+\providetranslation{Suiter-(ODw)}{Farver}
+\providetranslation{suit-(ODw)}{farve}
+\providetranslation{Suit-(ODw)}{Farve}
+\providetranslation{third suit forcing-(ODw)}{tredje farve forcing}
+\providetranslation{Third Suit Forcing-(ODw)}{Tredje Farve Forcing}
+\providetranslation{total points-(ODw)}{total points}
+\providetranslation{Total Points-(ODw)}{Total Points}
+\providetranslation{tp-(ODw)}{sp}
+\providetranslation{TP-(ODw)}{SP}
+\providetranslation{trial bid-(ODw)}{pröv bud}
+\providetranslation{Trial bid-(ODw)}{Pröv bud}
+\providetranslation{trick-(ODw)}{stik}
+\providetranslation{Trick-(ODw)}{Stik}
+\providetranslation{tsf-(ODw)}{3:e\,ff}
+\providetranslation{TSF-(ODw)}{3:e\,FF}
+\providetranslation{vulnerable-(ODw)}{zon}
+\providetranslation{Vulnerable-(ODw)}{Zon}
+\providetranslation{vul-(ODw)}{zon}
+\providetranslation{Vul-(ODw)}{Zon}
+\providetranslation{west-(ODw)}{väst}
+\providetranslation{West-(ODw)}{Väst}
+\providetranslation{w-(ODw)}{v}
+\providetranslation{W-(ODw)}{V}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-Turkish.dict b/macros/latex/contrib/onedown/ODw-Turkish.dict
new file mode 100644
index 0000000000..cb7c7ef3a5
--- /dev/null
+++ b/macros/latex/contrib/onedown/ODw-Turkish.dict
@@ -0,0 +1,160 @@
+% this is file ODw-Turkish.dict from the OneDown bundle
+% thanks to Yilmaz Aksoy
+% Entries with a "!" denote an abreviated form
+%
+% retrieve with e.g. \translation{dealer-(ODw)} to get kâğıdı
+%
+\ProvidesDictionary{ODw}{Turkish}[V0.6-2021/04/24]
+
+\providetranslation{1st-(ODw)}{1.}
+\providetranslation{2nd-(ODw)}{2.}
+\providetranslation{3rd-(ODw)}{3.}
+\providetranslation{4th-(ODw)}{4.}
+\providetranslation{ace-(ODw)}{as}
+\providetranslation{Ace-(ODw)}{As}
+\providetranslation{all!-(ODw)}{herk}
+\providetranslation{All!-(ODw)}{Herk}
+\providetranslation{all-(ODw)}{herkes}
+\providetranslation{All-(ODw)}{Herkes}
+\providetranslation{all pass-(ODw)}{pas geçildi}
+\providetranslation{All pass-(ODw)}{Pas geçildi}
+\providetranslation{a-(ODw)}{a}
+\providetranslation{A-(ODw)}{A}
+\providetranslation{ap-(ODw)}{ap}
+\providetranslation{AP-(ODw)}{AP}
+\providetranslation{award-(ODw)}{puan}
+\providetranslation{Award-(ODw)}{Puan}
+\providetranslation{Bid-(ODw)}{Deklare}
+\providetranslation{bid-(ODw)}{deklare}
+\providetranslation{Board-(ODw)}{Oyun Tahtası}
+\providetranslation{board-(ODw)}{oyun tahtası}
+\providetranslation{Brd-(ODw)}{Oyun}
+\providetranslation{brd-(ODw)}{oyun}
+\providetranslation{by-(ODw)}{tarafından}
+\providetranslation{Call-(ODw)}{İlan etme}
+\providetranslation{call-(ODw)}{ilan etme}
+\providetranslation{-card-(ODw)}{-card}
+\providetranslation{contract-(ODw)}{kontrat}
+\providetranslation{Contract-(ODw)}{Kontrat}
+\providetranslation{contr-(ODw)}{kontr}
+\providetranslation{Contr-(ODw)}{Kontr}
+\providetranslation{Dbl-(ODw)}{Knt}
+\providetranslation{dealer-(ODw)}{dağıtan}
+\providetranslation{Dealer-(ODw)}{Dağıtan}
+\providetranslation{Deal-(ODw)}{El}
+\providetranslation{Deal!-(ODw)}{El}
+\providetranslation{deal-(ODw)}{el}
+\providetranslation{deal!-(ODw)}{el}
+\providetranslation{declarer-(ODw)}{deklaran}
+\providetranslation{Declarer-(ODw)}{Deklaran}
+\providetranslation{decl-(ODw)}{dekl}
+\providetranslation{Decl-(ODw)}{Dekl}
+\providetranslation{distribution points-(ODw)}{dağılım puanı}
+\providetranslation{Distribution Points-(ODw)}{Dağılım Puanı}
+\providetranslation{doubled-(ODw)}{konturlu}
+\providetranslation{Doubled-(ODw)}{Konturlu}
+\providetranslation{double-(ODw)}{kontur}
+\providetranslation{Double-(ODw)}{Kontur}
+\providetranslation{dp-(ODw)}{dp}
+\providetranslation{DP-(ODw)}{DP}
+\providetranslation{east-(ODw)}{doğu}
+\providetranslation{East-(ODw)}{Doğu}
+\providetranslation{e-(ODw)}{d}
+\providetranslation{E-(ODw)}{D}
+\providetranslation{fourth suit forcing-(ODw)}{dördüncü renk forsingi}
+\providetranslation{Fourth Suit Forcing-(ODw)}{Dördüncü Renk Forsingi}
+\providetranslation{fsf-(ODw)}{4.\,rf}
+\providetranslation{FSF-(ODw)}{4.\,RF}
+\providetranslation{game forcing-(ODw)}{manş forsingi}
+\providetranslation{Game Forcing-(ODw)}{Manş Forsingi}
+\providetranslation{gf-(ODw)}{mf}
+\providetranslation{GF-(ODw)}{MF}
+\providetranslation{hand-(ODw)}{el}
+\providetranslation{Hand-(ODw)}{El}
+\providetranslation{hcp-(ODw)}{op}
+\providetranslation{HCP-(ODw)}{OP}
+\providetranslation{high card points-(ODw)}{onör puanı}
+\providetranslation{High Card Points-(ODw)}{Onör Puanı}
+\providetranslation{hlp-(ODw)}{oup}
+\providetranslation{HLP-(ODw)}{OUP}
+\providetranslation{jack-(ODw)}{vale}
+\providetranslation{Jack-(ODw)}{Vale}
+\providetranslation{j-(ODw)}{v}
+\providetranslation{J-(ODw)}{V}
+\providetranslation{king-(ODw)}{papaz}
+\providetranslation{King-(ODw)}{Papaz}
+\providetranslation{k-(ODw)}{p}
+\providetranslation{K-(ODw)}{P}
+\providetranslation{Lead!-(ODw)}{Atak}
+\providetranslation{lead-(ODw)}{atak}
+\providetranslation{Lead-(ODw)}{Atak}
+\providetranslation{lead!-(ODw)}{atak}
+\providetranslation{length points-(ODw)}{uzunluk puanları}
+\providetranslation{Length Points-(ODw)}{Uunluk Puanları}
+\providetranslation{lp-(ODw)}{up}
+\providetranslation{LP-(ODw)}{UP}
+\providetranslation{new minor forcing-(ODw)}{yeni minör forsingi}
+\providetranslation{New Minor Forcing-(ODw)}{Yeni Minör Forsingi}
+\providetranslation{nmf-(ODw)}{nmf}
+\providetranslation{NMF-(ODw)}{NMF}
+\providetranslation{n-(ODw)}{k}
+\providetranslation{N-(ODw)}{K}
+\providetranslation{none-(ODw)}{hiç}
+\providetranslation{None-(ODw)}{Hiç}
+\providetranslation{none!-(ODw)}{hiç}
+\providetranslation{None!-(ODw)}{Hiç}
+\providetranslation{north-(ODw)}{kuzey}
+\providetranslation{North-(ODw)}{Kuzey}
+\providetranslation{no trump-(ODw)}{sanzatu}
+\providetranslation{No Trump-(ODw)}{Sanzatu}
+\providetranslation{Nr-(ODw)}{\textnumero}
+\providetranslation{Nr.-(ODw)}{\textnumero.}
+\providetranslation{nt-(ODw)}{sa}
+\providetranslation{NT-(ODw)}{S\kern-0.01emA}
+\providetranslation{pass-(ODw)}{pas}
+\providetranslation{Pass-(ODw)}{Pas}
+\providetranslation{pass!-(ODw)}{p}
+\providetranslation{Pass!-(ODw)}{P}
+\providetranslation{q-(ODw)}{k}
+\providetranslation{Q-(ODw)}{K}
+\providetranslation{queen-(ODw)}{kız}
+\providetranslation{Queen-(ODw)}{Kız}
+\providetranslation{ReDbl-(ODw)}{SürKnt}
+\providetranslation{Redoubled-(ODw)}{Sürkonturlu}
+\providetranslation{redoubled-(ODw)}{sürkonturlu}
+\providetranslation{redouble-(ODw)}{sürkontur}
+\providetranslation{Redouble-(ODw)}{Sürkontur}
+\providetranslation{semi forcing-(ODw)}{semi forsingi}
+\providetranslation{Semi Forcing-(ODw)}{Semi Forsingi}
+\providetranslation{sf-(ODw)}{sf}
+\providetranslation{SF-(ODw)}{SF}
+\providetranslation{s-(ODw)}{g}
+\providetranslation{S-(ODw)}{G}
+\providetranslation{south-(ODw)}{güney}
+\providetranslation{South-(ODw)}{Güney}
+\providetranslation{suiter-(ODw)}{renkli}
+\providetranslation{Suiter-(ODw)}{Renkli}
+\providetranslation{suit-(ODw)}{renk}
+\providetranslation{Suit-(ODw)}{Renk}
+\providetranslation{third suit forcing-(ODw)}{üçüncü renk forsingi}
+\providetranslation{Third Suit Forcing-(ODw)}{Üçüncü Renk Forsingi}
+\providetranslation{total points-(ODw)}{onör destek puanı}
+\providetranslation{Total Points-(ODw)}{Onör Destek Puanı}
+\providetranslation{tp-(ODw)}{odp}
+\providetranslation{TP-(ODw)}{ODP}
+\providetranslation{trial bid-(ODw)}{trial bid}
+\providetranslation{Trial bid-(ODw)}{Trial bid}
+\providetranslation{trick-(ODw)}{löve}
+\providetranslation{Trick-(ODw)}{Löve}
+\providetranslation{tsf-(ODw)}{3.\,sf}
+\providetranslation{TSF-(ODw)}{3.\,SF}
+\providetranslation{vulnerable-(ODw)}{zonda}
+\providetranslation{Vulnerable-(ODw)}{Zonda}
+\providetranslation{vul-(ODw)}{zon}
+\providetranslation{Vul-(ODw)}{Zon}
+\providetranslation{west-(ODw)}{batı}
+\providetranslation{West-(ODw)}{Batı}
+\providetranslation{w-(ODw)}{b}
+\providetranslation{W-(ODw)}{B}
+%
+\endinput
diff --git a/macros/latex/contrib/onedown/ODw-danish.trsl b/macros/latex/contrib/onedown/ODw-danish.trsl
deleted file mode 100644
index 0f8c9dbbc7..0000000000
--- a/macros/latex/contrib/onedown/ODw-danish.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-danish.trsl
-%
-% Entries with a "!" denote an abreviated form
-%
-%% retrieve with e.g \GetTranslation{dealer-(ODw)} to get givare
-%
-\ProvideDictionaryFor{danish}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1.}
-\NewDictTranslation{2nd-(ODw)}{2.}
-\NewDictTranslation{3rd-(ODw)}{3.}
-\NewDictTranslation{4th-(ODw)}{4.}
-\NewDictTranslation{ace-(ODw)}{es}
-\NewDictTranslation{Ace-(ODw)}{Es}
-\NewDictTranslation{all-(ODw)}{alle}
-\NewDictTranslation{All-(ODw)}{Alle}
-\NewDictTranslation{all!-(ODw)}{alle}
-\NewDictTranslation{All!-(ODw)}{Alle}
-\NewDictTranslation{all pass-(ODw)}{alle passer}
-\NewDictTranslation{All pass-(ODw)}{Alle passer}
-\NewDictTranslation{a-(ODw)}{e}
-\NewDictTranslation{A-(ODw)}{E}% Es
-%\NewDictTranslation{award-(ODw)}{poäng}
-%\NewDictTranslation{Award-(ODw)}{Poäng}
-\NewDictTranslation{award-(ODw)}{värdering}
-\NewDictTranslation{Award-(ODw)}{Värdering}
-\NewDictTranslation{bid-(ODw)}{meldt}
-\NewDictTranslation{Bid-(ODw)}{Meldt}
-\NewDictTranslation{board-(ODw)}{bræt}
-\NewDictTranslation{Board-(ODw)}{Bræt}
-\NewDictTranslation{brd-(ODw)}{brt}
-\NewDictTranslation{Brd-(ODw)}{Brt}
-\NewDictTranslation{by-(ODw)}{af}
-\NewDictTranslation{call-(ODw)}{bud}
-\NewDictTranslation{Call-(ODw)}{Bud}
-\NewDictTranslation{-card-(ODw)}{-kort}
-\NewDictTranslation{contract-(ODw)}{kontrakten}
-\NewDictTranslation{Contract-(ODw)}{Kontrakten}
-\NewDictTranslation{contr-(ODw)}{kontr}
-\NewDictTranslation{Contr-(ODw)}{Kontr}
-\NewDictTranslation{Dbl-(ODw)}{Dbl}
-\NewDictTranslation{dealer-(ODw)}{givet}
-\NewDictTranslation{Dealer-(ODw)}{Givet}
-\NewDictTranslation{deal-(ODw)}{giv}
-\NewDictTranslation{Deal-(ODw)}{Giv}
-\NewDictTranslation{deal!-(ODw)}{giv}
-\NewDictTranslation{Deal!-(ODw)}{Giv}
-\NewDictTranslation{declarer-(ODw)}{spilfører}
-\NewDictTranslation{Declarer-(ODw)}{Spilfører}
-\NewDictTranslation{decl-(ODw)}{spilf}
-\NewDictTranslation{Decl-(ODw)}{Spilf}
-\NewDictTranslation{distribution points-(ODw)}{fordelingspoints}
-\NewDictTranslation{Distribution Points-(ODw)}{Fordelingspoints}
-\NewDictTranslation{doubled-(ODw)}{dubbelt}
-\NewDictTranslation{Doubled-(ODw)}{Dubbelt}
-\NewDictTranslation{double-(ODw)}{dubbelt}
-\NewDictTranslation{Double-(ODw)}{Dubbelt}
-\NewDictTranslation{dp-(ODw)}{fp}
-\NewDictTranslation{DP-(ODw)}{FP}
-\NewDictTranslation{east-(ODw)}{øst}
-\NewDictTranslation{East-(ODw)}{Øst}
-\NewDictTranslation{e-(ODw)}{ø}
-\NewDictTranslation{E-(ODw)}{Ø}
-\NewDictTranslation{fourth suit forcing-(ODw)}{fjerde farve forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Fjerde Farve Forcing}
-\NewDictTranslation{fsf-(ODw)}{4.\,ff}
-\NewDictTranslation{FSF-(ODw)}{4.\,FF}
-\NewDictTranslation{game forcing-(ODw)}{krav till utgång}
-\NewDictTranslation{Game Forcing-(ODw)}{Krav till Utgång}
-\NewDictTranslation{gf-(ODw)}{ku}
-\NewDictTranslation{GF-(ODw)}{KU}
-\NewDictTranslation{Hand-(ODw)}{Hånd}
-\NewDictTranslation{hand-(ODw)}{hånd}
-\NewDictTranslation{hcp-(ODw)}{hp}
-\NewDictTranslation{HCP-(ODw)}{HP}
-\NewDictTranslation{high card points-(ODw)}{honnørpoints}
-\NewDictTranslation{High Card Points-(ODw)}{Honnørpoints}
-\NewDictTranslation{hlp-(ODw)}{hlp}
-\NewDictTranslation{HLP-(ODw)}{HLP}
-\NewDictTranslation{jack-(ODw)}{knægt}
-\NewDictTranslation{Jack-(ODw)}{Knægt}
-\NewDictTranslation{j-(ODw)}{kn}
-\NewDictTranslation{J-(ODw)}{\mbox{K\kern-0.08emn}}
-\NewDictTranslation{king-(ODw)}{konge}
-\NewDictTranslation{King-(ODw)}{Konge}
-\NewDictTranslation{k-(ODw)}{k}
-\NewDictTranslation{K-(ODw)}{K}
-\NewDictTranslation{lead!-(ODw)}{udsp.}
-\NewDictTranslation{Lead!-(ODw)}{Udsp.}
-\NewDictTranslation{Lead-(ODw)}{Udspillet}
-\NewDictTranslation{lead-(ODw)}{udspillet}
-\NewDictTranslation{length points-(ODw)}{længepoints}
-\NewDictTranslation{Length Points-(ODw)}{Længepoints}
-\NewDictTranslation{lp-(ODw)}{lp}
-\NewDictTranslation{LP-(ODw)}{LP}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{new minor forcing-(ODw)}{nye minor forcing}
-\NewDictTranslation{New Minor Forcing-(ODw)}{Nye Minor Forcing}
-\NewDictTranslation{nmf-(ODw)}{nmf}
-\NewDictTranslation{NMF-(ODw)}{NMF}
-\NewDictTranslation{none-(ODw)}{ingen}
-\NewDictTranslation{None-(ODw)}{Ingen}
-\NewDictTranslation{none!-(ODw)}{ingen}
-\NewDictTranslation{None!-(ODw)}{Ingen}
-\NewDictTranslation{north-(ODw)}{norr}
-\NewDictTranslation{North-(ODw)}{Norr}
-\NewDictTranslation{no trump-(ODw)}{uden trumf}
-\NewDictTranslation{No Trump-(ODw)}{Uden Trumf}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{NT-(ODw)}{U\kern-0.01emT}%Uden Trumf
-\NewDictTranslation{nt-(ODw)}{ut}
-\NewDictTranslation{pass-(ODw)}{pas}
-\NewDictTranslation{Pass-(ODw)}{Pas}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{d}
-\NewDictTranslation{Q-(ODw)}{D}
-\NewDictTranslation{queen-(ODw)}{dame}
-\NewDictTranslation{Queen-(ODw)}{Dame}
-\NewDictTranslation{ReDbl-(ODw)}{ReDbl}
-\NewDictTranslation{redoubled-(ODw)}{redubbelt}
-\NewDictTranslation{Redoubled-(ODw)}{Redubbelt}
-\NewDictTranslation{redouble-(ODw)}{redubbelt}
-\NewDictTranslation{ReDouble-(ODw)}{Redubbelt}
-\NewDictTranslation{semi forcing-(ODw)}{semi forcing}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi Forcing}
-\NewDictTranslation{sf-(ODw)}{sf}
-\NewDictTranslation{SF-(ODw)}{SF}
-\NewDictTranslation{s-(ODw)}{s}
-\NewDictTranslation{S-(ODw)}{S}
-\NewDictTranslation{south-(ODw)}{syd}
-\NewDictTranslation{South-(ODw)}{Syd}
-\NewDictTranslation{suiter-(ODw)}{farver}
-\NewDictTranslation{Suiter-(ODw)}{Farver}
-\NewDictTranslation{suit-(ODw)}{farve}
-\NewDictTranslation{Suit-(ODw)}{Farve}
-\NewDictTranslation{third suit forcing-(ODw)}{tredje farve forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Tredje Farve Forcing}
-\NewDictTranslation{total points-(ODw)}{total points}
-\NewDictTranslation{Total Points-(ODw)}{Total Points}
-\NewDictTranslation{tp-(ODw)}{tp}
-\NewDictTranslation{TP-(ODw)}{TP}
-\NewDictTranslation{trial bid-(ODw)}{trial bid}
-\NewDictTranslation{Trial bid-(ODw)}{Trial bid}
-\NewDictTranslation{trick-(ODw)}{træk}
-\NewDictTranslation{Trick-(ODw)}{Træk}
-\NewDictTranslation{tsf-(ODw)}{3.\,ff}
-\NewDictTranslation{TSF-(ODw)}{3.\,FF}
-\NewDictTranslation{vulnerable-(ODw)}{sårbar}
-\NewDictTranslation{Vulnerable-(ODw)}{Sårbar}
-\NewDictTranslation{vul-(ODw)}{sår}
-\NewDictTranslation{Vul-(ODw)}{Sår}
-\NewDictTranslation{west-(ODw)}{vest}
-\NewDictTranslation{West-(ODw)}{Vest}
-\NewDictTranslation{w-(ODw)}{v}
-\NewDictTranslation{W-(ODw)}{V}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-dutch.trsl b/macros/latex/contrib/onedown/ODw-dutch.trsl
deleted file mode 100644
index d2ab2df5c8..0000000000
--- a/macros/latex/contrib/onedown/ODw-dutch.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-dutch.trsl from the OneDown bundle
-%
-% Entries with a "!" denote an abreviated form
-%
-% retrieve with e.g. \GetTranslation{dealer-(ODw)} to get dealer
-%
-\ProvideDictionaryFor{dutch}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1ste}
-\NewDictTranslation{2nd-(ODw)}{2de}
-\NewDictTranslation{3rd-(ODw)}{3de}
-\NewDictTranslation{4th-(ODw)}{4de}
-\NewDictTranslation{ace-(ODw)}{aas}
-\NewDictTranslation{Ace-(ODw)}{Aas}
-\NewDictTranslation{all-(ODw)}{alle}
-\NewDictTranslation{All-(ODw)}{Alle}
-\NewDictTranslation{all!-(ODw)}{alle}
-\NewDictTranslation{All!-(ODw)}{Alle}
-\NewDictTranslation{all pass-(ODw)}{allen passen}
-\NewDictTranslation{All pass-(ODw)}{Allen passen}
-\NewDictTranslation{a-(ODw)}{a}
-\NewDictTranslation{A-(ODw)}{A}
-\NewDictTranslation{ap-(ODw)}{ap}
-\NewDictTranslation{AP-(ODw)}{AP}
-\NewDictTranslation{award-(ODw)}{beloning}
-\NewDictTranslation{Award-(ODw)}{Beloning}
-\NewDictTranslation{bid-(ODw)}{bod}
-\NewDictTranslation{Bid-(ODw)}{Bod}
-\NewDictTranslation{board-(ODw)}{spel}
-\NewDictTranslation{Board-(ODw)}{Spel}
-\NewDictTranslation{brd-(ODw)}{spel}
-\NewDictTranslation{Brd-(ODw)}{Spel}
-\NewDictTranslation{by-(ODw)}{door}
-\NewDictTranslation{call-(ODw)}{bod}
-\NewDictTranslation{Call-(ODw)}{Bod}
-\NewDictTranslation{-card-(ODw)}{-kaart}
-\NewDictTranslation{contract-(ODw)}{contract}
-\NewDictTranslation{Contract-(ODw)}{Contract}
-\NewDictTranslation{contr-(ODw)}{contr}
-\NewDictTranslation{Contr-(ODw)}{Contr}
-\NewDictTranslation{Dbl-(ODw)}{Dbl}
-\NewDictTranslation{dealer-(ODw)}{gever}
-\NewDictTranslation{Dealer-(ODw)}{Gever}
-\NewDictTranslation{deal-(ODw)}{spel}
-\NewDictTranslation{Deal-(ODw)}{Spel}
-\NewDictTranslation{deal!-(ODw)}{spel}
-\NewDictTranslation{Deal!-(ODw)}{Spel}
-\NewDictTranslation{declarer-(ODw)}{leider}
-\NewDictTranslation{Declarer-(ODw)}{Leider}
-\NewDictTranslation{decl-(ODw)}{leider}
-\NewDictTranslation{Decl-(ODw)}{Leider}
-\NewDictTranslation{distribution points-(ODw)}{distributie punten}
-\NewDictTranslation{Distribution Points-(ODw)}{Distributie Punten}
-\NewDictTranslation{doubled-(ODw)}{gedoubleerd}
-\NewDictTranslation{Doubled-(ODw)}{Gedoubleerd}
-\NewDictTranslation{double-(ODw)}{doublet}
-\NewDictTranslation{Double-(ODw)}{Doublet}
-\NewDictTranslation{dp-(ODw)}{dp}
-\NewDictTranslation{DP-(ODw)}{DP}
-\NewDictTranslation{east-(ODw)}{oost}
-\NewDictTranslation{East-(ODw)}{Oost}
-\NewDictTranslation{e-(ODw)}{o}
-\NewDictTranslation{E-(ODw)}{O}
-\NewDictTranslation{fourth suit forcing-(ODw)}{vierde kleur forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Vierde Kleur Forcing}
-\NewDictTranslation{fsf-(ODw)}{4de\,kf}
-\NewDictTranslation{FSF-(ODw)}{4de\,KF}
-\NewDictTranslation{game forcing-(ODw)}{manche forcing}
-\NewDictTranslation{Game Forcing-(ODw)}{Manche Forcing}
-\NewDictTranslation{gf-(ODw)}{mf}
-\NewDictTranslation{GF-(ODw)}{MF}
-\NewDictTranslation{hand-(ODw)}{hand}
-\NewDictTranslation{Hand-(ODw)}{Hand}
-\NewDictTranslation{hcp-(ODw)}{hp}
-\NewDictTranslation{HCP-(ODw)}{HP}
-\NewDictTranslation{high card points-(ODw)}{hoge punten}
-\NewDictTranslation{High Card Points-(ODw)}{Hoge Punten}
-\NewDictTranslation{hlp-(ODw)}{hlp}
-\NewDictTranslation{HLP-(ODw)}{HLP}
-\NewDictTranslation{jack-(ODw)}{boer}
-\NewDictTranslation{Jack-(ODw)}{Boer}
-\NewDictTranslation{j-(ODw)}{b}
-\NewDictTranslation{J-(ODw)}{B}
-\NewDictTranslation{king-(ODw)}{heer}
-\NewDictTranslation{King-(ODw)}{Heer}
-\NewDictTranslation{k-(ODw)}{h}
-\NewDictTranslation{K-(ODw)}{H}
-\NewDictTranslation{lead!-(ODw)}{uitk.}
-\NewDictTranslation{Lead!-(ODw)}{Uitk.}
-\NewDictTranslation{lead-(ODw)}{uitkomst}
-\NewDictTranslation{Lead-(ODw)}{Uitkomst}
-\NewDictTranslation{length points-(ODw)}{lengte punten}
-\NewDictTranslation{Length Points-(ODw)}{Lengte Punten}
-\NewDictTranslation{lp-(ODw)}{lp}
-\NewDictTranslation{LP-(ODw)}{LP}
-\NewDictTranslation{new minor forcing-(ODw)}{nieuwe lage kleur forcing}
-\NewDictTranslation{New Minor Forcing-(ODw)}{Nieuwe Lage Kleur Forcing}
-\NewDictTranslation{nmf-(ODw)}{nlf}
-\NewDictTranslation{NMF-(ODw)}{NLF}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{none-(ODw)}{geen}
-\NewDictTranslation{None-(ODw)}{Geen}
-\NewDictTranslation{none!-(ODw)}{geen}
-\NewDictTranslation{None!-(ODw)}{Geen}
-\NewDictTranslation{north-(ODw)}{noord}
-\NewDictTranslation{North-(ODw)}{Noord}
-\NewDictTranslation{no trump-(ODw)}{sans atout}
-\NewDictTranslation{No Trump-(ODw)}{Sans Atout}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{nt-(ODw)}{sa}
-\NewDictTranslation{NT-(ODw)}{S\kern-0.01emA}
-\NewDictTranslation{pass-(ODw)}{pas}
-\NewDictTranslation{Pass-(ODw)}{Pas}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{v}
-\NewDictTranslation{Q-(ODw)}{V}
-\NewDictTranslation{queen-(ODw)}{vrouw}
-\NewDictTranslation{Queen-(ODw)}{Vrouw}
-\NewDictTranslation{ReDbl-(ODw)}{ReDblt}
-\NewDictTranslation{redoubled-(ODw)}{geredoubleerd}
-\NewDictTranslation{Redoubled-(ODw)}{Geredoubleerd}
-\NewDictTranslation{redouble-(ODw)}{redoublet}
-\NewDictTranslation{ReDouble-(ODw)}{Redoublet}
-\NewDictTranslation{semi forcing-(ODw)}{semi-mancheforcing}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi-MancheForcing}
-\NewDictTranslation{sf-(ODw)}{smf}
-\NewDictTranslation{SF-(ODw)}{SMF}
-\NewDictTranslation{s-(ODw)}{z}
-\NewDictTranslation{S-(ODw)}{Z}
-\NewDictTranslation{south-(ODw)}{zuid}
-\NewDictTranslation{South-(ODw)}{Zuid}
-\NewDictTranslation{suiter-(ODw)}{kleurenspel}
-\NewDictTranslation{Suiter-(ODw)}{Kleurenspel}
-\NewDictTranslation{suit-(ODw)}{kleur}
-\NewDictTranslation{Suit-(ODw)}{Kleur}
-\NewDictTranslation{third suit forcing-(ODw)}{derde kleur forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Derde Kleur Forcing}
-\NewDictTranslation{total points-(ODw)}{totaal punten}
-\NewDictTranslation{Total Points-(ODw)}{Totaal Punten}
-\NewDictTranslation{tp-(ODw)}{tp}
-\NewDictTranslation{TP-(ODw)}{TP}
-\NewDictTranslation{trial bid-(ODw)}{help bod}
-\NewDictTranslation{Trial bid-(ODw)}{Help bod}
-\NewDictTranslation{trick-(ODw)}{slag}
-\NewDictTranslation{Trick-(ODw)}{Slag}
-\NewDictTranslation{tsf-(ODw)}{3de\,kf}
-\NewDictTranslation{TSF-(ODw)}{3de\,KF}
-\NewDictTranslation{vulnerable-(ODw)}{kwetsbaar}
-\NewDictTranslation{Vulnerable-(ODw)}{Kwetsbaar}
-\NewDictTranslation{vul-(ODw)}{kwetsb}
-\NewDictTranslation{Vul-(ODw)}{Kwetsb}
-\NewDictTranslation{west-(ODw)}{west}
-\NewDictTranslation{West-(ODw)}{West}
-\NewDictTranslation{w-(ODw)}{w}
-\NewDictTranslation{W-(ODw)}{W}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-english.trsl b/macros/latex/contrib/onedown/ODw-english.trsl
deleted file mode 100644
index 052acb217c..0000000000
--- a/macros/latex/contrib/onedown/ODw-english.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-english.trsl from the OneDown bundle
-%
-% Entries with a "!" denote an abreviated form
-%
-% retrieve with e.g. \GetTranslation{dealer-(ODw)} to get dealer
-%
-\ProvideDictionaryFor{english}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1st}
-\NewDictTranslation{2nd-(ODw)}{2nd}
-\NewDictTranslation{3rd-(ODw)}{3rd}
-\NewDictTranslation{4th-(ODw)}{4th}
-\NewDictTranslation{ace-(ODw)}{ace}
-\NewDictTranslation{Ace-(ODw)}{Ace}
-\NewDictTranslation{all-(ODw)}{all}
-\NewDictTranslation{All-(ODw)}{All}
-\NewDictTranslation{all!-(ODw)}{all}
-\NewDictTranslation{All!-(ODw)}{All}
-\NewDictTranslation{all pass-(ODw)}{all pass}
-\NewDictTranslation{All pass-(ODw)}{All pass}
-\NewDictTranslation{a-(ODw)}{a}
-\NewDictTranslation{A-(ODw)}{A}
-\NewDictTranslation{ap-(ODw)}{ap}
-\NewDictTranslation{AP-(ODw)}{AP}
-\NewDictTranslation{Award-(ODw)}{Award}
-\NewDictTranslation{award-(ODw)}{award}% = points you earn in a quiz
-\NewDictTranslation{Bid-(ODw)}{Bid}
-\NewDictTranslation{bid-(ODw)}{bid}% = e.g. 2C, 4H or 6NT
-\NewDictTranslation{Board-(ODw)}{Board}
-\NewDictTranslation{board-(ODw)}{board}% = equipment that holds 1 deal
-\NewDictTranslation{Brd-(ODw)}{Brd}
-\NewDictTranslation{brd-(ODw)}{brd}% = equipment that holds 1 deal
-\NewDictTranslation{by-(ODw)}{by}
-\NewDictTranslation{Call-(ODw)}{Call}
-\NewDictTranslation{call-(ODw)}{call}% = bid + pass, (re)double
-\NewDictTranslation{-card-(ODw)}{-card}
-\NewDictTranslation{contract-(ODw)}{contract}
-\NewDictTranslation{Contract-(ODw)}{Contract}
-\NewDictTranslation{contr-(ODw)}{contr}
-\NewDictTranslation{Contr-(ODw)}{Contr}
-\NewDictTranslation{Dbl-(ODw)}{Dbl}
-\NewDictTranslation{dealer-(ODw)}{dealer}
-\NewDictTranslation{Dealer-(ODw)}{Dealer}
-\NewDictTranslation{Deal-(ODw)}{Deal}
-\NewDictTranslation{Deal!-(ODw)}{Deal}
-\NewDictTranslation{deal-(ODw)}{deal}% = 4 hands
-\NewDictTranslation{deal!-(ODw)}{deal}% = 4 hands
-\NewDictTranslation{declarer-(ODw)}{declarer}
-\NewDictTranslation{Declarer-(ODw)}{Declarer}
-\NewDictTranslation{decl-(ODw)}{decl}
-\NewDictTranslation{Decl-(ODw)}{Decl}
-\NewDictTranslation{distribution points-(ODw)}{distribution points}
-\NewDictTranslation{Distribution Points-(ODw)}{Distribution Points}
-\NewDictTranslation{doubled-(ODw)}{doubled}
-\NewDictTranslation{Doubled-(ODw)}{Doubled}
-\NewDictTranslation{double-(ODw)}{double}
-\NewDictTranslation{Double-(ODw)}{Double}
-\NewDictTranslation{dp-(ODw)}{dp}
-\NewDictTranslation{DP-(ODw)}{DP}
-\NewDictTranslation{east-(ODw)}{east}
-\NewDictTranslation{East-(ODw)}{East}
-\NewDictTranslation{e-(ODw)}{e}
-\NewDictTranslation{E-(ODw)}{E}
-\NewDictTranslation{fourth suit forcing-(ODw)}{fourth suit forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Fourth Suit Forcing}
-\NewDictTranslation{fsf-(ODw)}{4th\,sf}
-\NewDictTranslation{FSF-(ODw)}{4th\,SF}
-\NewDictTranslation{game forcing-(ODw)}{game forcing}
-\NewDictTranslation{Game Forcing-(ODw)}{Game Forcing}
-\NewDictTranslation{gf-(ODw)}{gf}
-\NewDictTranslation{GF-(ODw)}{GF}
-\NewDictTranslation{Hand-(ODw)}{Hand}
-\NewDictTranslation{hand-(ODw)}{hand}% = 13 cards of 1 player
-\NewDictTranslation{hcp-(ODw)}{hcp}
-\NewDictTranslation{HCP-(ODw)}{HCP}
-\NewDictTranslation{high card points-(ODw)}{high card points}
-\NewDictTranslation{High Card Points-(ODw)}{High Card Points}
-\NewDictTranslation{hlp-(ODw)}{hlp}
-\NewDictTranslation{HLP-(ODw)}{HLP}
-\NewDictTranslation{jack-(ODw)}{jack}
-\NewDictTranslation{Jack-(ODw)}{Jack}
-\NewDictTranslation{j-(ODw)}{j}
-\NewDictTranslation{J-(ODw)}{J}
-\NewDictTranslation{king-(ODw)}{king}
-\NewDictTranslation{King-(ODw)}{King}
-\NewDictTranslation{k-(ODw)}{k}
-\NewDictTranslation{K-(ODw)}{K}
-\NewDictTranslation{lead-(ODw)}{lead}
-\NewDictTranslation{Lead-(ODw)}{Lead}
-\NewDictTranslation{lead!-(ODw)}{lead}
-\NewDictTranslation{Lead!-(ODw)}{Lead}
-\NewDictTranslation{length points-(ODw)}{length points}
-\NewDictTranslation{Length Points-(ODw)}{Length Points}
-\NewDictTranslation{lp-(ODw)}{lp}
-\NewDictTranslation{LP-(ODw)}{LP}
-\NewDictTranslation{new minor forcing-(ODw)}{new minor forcing}
-\NewDictTranslation{New Minor Forcing-(ODw)}{New Minor Forcing}
-\NewDictTranslation{nmf-(ODw)}{nmf}
-\NewDictTranslation{NMF-(ODw)}{NMF}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{none-(ODw)}{none}
-\NewDictTranslation{None-(ODw)}{None}
-\NewDictTranslation{none!-(ODw)}{none}
-\NewDictTranslation{None!-(ODw)}{None}
-\NewDictTranslation{north-(ODw)}{north}
-\NewDictTranslation{North-(ODw)}{North}
-\NewDictTranslation{no trump-(ODw)}{no trump}
-\NewDictTranslation{No Trump-(ODw)}{No Trump}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{NT-(ODw)}{N\kern-0.07emT}
-\NewDictTranslation{nt-(ODw)}{nt}
-\NewDictTranslation{pass-(ODw)}{pass}
-\NewDictTranslation{Pass-(ODw)}{Pass}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{q}
-\NewDictTranslation{Q-(ODw)}{Q}
-\NewDictTranslation{queen-(ODw)}{queen}
-\NewDictTranslation{Queen-(ODw)}{Queen}
-\NewDictTranslation{ReDbl-(ODw)}{ReDbl}
-\NewDictTranslation{redoubled-(ODw)}{redoubled}
-\NewDictTranslation{Redoubled-(ODw)}{Redoubled}
-\NewDictTranslation{redouble-(ODw)}{redouble}
-\NewDictTranslation{ReDouble-(ODw)}{ReDouble}
-\NewDictTranslation{semi forcing-(ODw)}{semi forcing}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi Forcing}
-\NewDictTranslation{sf-(ODw)}{sf}
-\NewDictTranslation{SF-(ODw)}{SF}
-\NewDictTranslation{s-(ODw)}{s}
-\NewDictTranslation{S-(ODw)}{S}
-\NewDictTranslation{south-(ODw)}{south}
-\NewDictTranslation{South-(ODw)}{South}
-\NewDictTranslation{suiter-(ODw)}{suiter}
-\NewDictTranslation{Suiter-(ODw)}{Suiter}
-\NewDictTranslation{suit-(ODw)}{suit}
-\NewDictTranslation{Suit-(ODw)}{Suit}
-\NewDictTranslation{third suit forcing-(ODw)}{third suit forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Third Suit Forcing}
-\NewDictTranslation{total points-(ODw)}{total points}
-\NewDictTranslation{Total Points-(ODw)}{Total Points}
-\NewDictTranslation{tp-(ODw)}{tp}
-\NewDictTranslation{TP-(ODw)}{TP}
-\NewDictTranslation{trial bid-(ODw)}{trial bid}
-\NewDictTranslation{Trial bid-(ODw)}{Trial bid}
-\NewDictTranslation{trick-(ODw)}{trick}
-\NewDictTranslation{Trick-(ODw)}{Trick}
-\NewDictTranslation{tsf-(ODw)}{3rd\,sf}
-\NewDictTranslation{TSF-(ODw)}{3rd\,SF}
-\NewDictTranslation{vulnerable-(ODw)}{vulnerable}
-\NewDictTranslation{Vulnerable-(ODw)}{Vulnerable}
-\NewDictTranslation{vul-(ODw)}{vul}
-\NewDictTranslation{Vul-(ODw)}{Vul}
-\NewDictTranslation{west-(ODw)}{west}
-\NewDictTranslation{West-(ODw)}{West}
-\NewDictTranslation{w-(ODw)}{w}
-\NewDictTranslation{W-(ODw)}{W}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-fallback.trsl b/macros/latex/contrib/onedown/ODw-fallback.trsl
deleted file mode 100644
index 7c79d06de3..0000000000
--- a/macros/latex/contrib/onedown/ODw-fallback.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-fallback.trsl from the OneDown bundle
-%
-% Entries with a "!" denote an abreviated form
-%
-% retrieve with e.g. \GetTranslation{dealer-(ODw)} to get dealer
-%
-\ProvideDictionaryFor{fallback}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1st}
-\NewDictTranslation{2nd-(ODw)}{2nd}
-\NewDictTranslation{3rd-(ODw)}{3rd}
-\NewDictTranslation{4th-(ODw)}{4th}
-\NewDictTranslation{ace-(ODw)}{ace}
-\NewDictTranslation{Ace-(ODw)}{Ace}
-\NewDictTranslation{all-(ODw)}{all}
-\NewDictTranslation{All-(ODw)}{All}
-\NewDictTranslation{all!-(ODw)}{all}
-\NewDictTranslation{All!-(ODw)}{All}
-\NewDictTranslation{all pass-(ODw)}{all pass}
-\NewDictTranslation{All pass-(ODw)}{All pass}
-\NewDictTranslation{a-(ODw)}{a}
-\NewDictTranslation{A-(ODw)}{A}
-\NewDictTranslation{ap-(ODw)}{ap}
-\NewDictTranslation{AP-(ODw)}{AP}
-\NewDictTranslation{Award-(ODw)}{Award}
-\NewDictTranslation{award-(ODw)}{award}% = points you earn in a quiz
-\NewDictTranslation{Bid-(ODw)}{Bid}
-\NewDictTranslation{bid-(ODw)}{bid}% = e.g. 2C, 4H or 6NT
-\NewDictTranslation{Board-(ODw)}{Board}
-\NewDictTranslation{board-(ODw)}{board}% = equipment that holds 1 deal
-\NewDictTranslation{Brd-(ODw)}{Brd}
-\NewDictTranslation{brd-(ODw)}{brd}% = equipment that holds 1 deal
-\NewDictTranslation{by-(ODw)}{by}
-\NewDictTranslation{Call-(ODw)}{Call}
-\NewDictTranslation{call-(ODw)}{call}% = bid + pass, (re)double
-\NewDictTranslation{-card-(ODw)}{-card}
-\NewDictTranslation{contract-(ODw)}{contract}
-\NewDictTranslation{Contract-(ODw)}{Contract}
-\NewDictTranslation{contr-(ODw)}{contr}
-\NewDictTranslation{Contr-(ODw)}{Contr}
-\NewDictTranslation{Dbl-(ODw)}{Dbl}
-\NewDictTranslation{dealer-(ODw)}{dealer}
-\NewDictTranslation{Dealer-(ODw)}{Dealer}
-\NewDictTranslation{Deal-(ODw)}{Deal}
-\NewDictTranslation{Deal!-(ODw)}{Deal}
-\NewDictTranslation{deal-(ODw)}{deal}% = 4 hands
-\NewDictTranslation{deal!-(ODw)}{deal}% = 4 hands
-\NewDictTranslation{declarer-(ODw)}{declarer}
-\NewDictTranslation{Declarer-(ODw)}{Declarer}
-\NewDictTranslation{decl-(ODw)}{decl}
-\NewDictTranslation{Decl-(ODw)}{Decl}
-\NewDictTranslation{distribution points-(ODw)}{distribution points}
-\NewDictTranslation{Distribution Points-(ODw)}{Distribution Points}
-\NewDictTranslation{doubled-(ODw)}{doubled}
-\NewDictTranslation{Doubled-(ODw)}{Doubled}
-\NewDictTranslation{double-(ODw)}{double}
-\NewDictTranslation{Double-(ODw)}{Double}
-\NewDictTranslation{dp-(ODw)}{dp}
-\NewDictTranslation{DP-(ODw)}{DP}
-\NewDictTranslation{east-(ODw)}{east}
-\NewDictTranslation{East-(ODw)}{East}
-\NewDictTranslation{e-(ODw)}{e}
-\NewDictTranslation{E-(ODw)}{E}
-\NewDictTranslation{fourth suit forcing-(ODw)}{fourth suit forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Fourth Suit Forcing}
-\NewDictTranslation{fsf-(ODw)}{4th\,sf}
-\NewDictTranslation{FSF-(ODw)}{4th\,SF}
-\NewDictTranslation{game forcing-(ODw)}{game forcing}
-\NewDictTranslation{Game Forcing-(ODw)}{Game Forcing}
-\NewDictTranslation{gf-(ODw)}{gf}
-\NewDictTranslation{GF-(ODw)}{GF}
-\NewDictTranslation{Hand-(ODw)}{Hand}
-\NewDictTranslation{hand-(ODw)}{hand}% = 13 cards of 1 player
-\NewDictTranslation{hcp-(ODw)}{hcp}
-\NewDictTranslation{HCP-(ODw)}{HCP}
-\NewDictTranslation{high card points-(ODw)}{high card points}
-\NewDictTranslation{High Card Points-(ODw)}{High Card Points}
-\NewDictTranslation{hlp-(ODw)}{hlp}
-\NewDictTranslation{HLP-(ODw)}{HLP}
-\NewDictTranslation{jack-(ODw)}{jack}
-\NewDictTranslation{Jack-(ODw)}{Jack}
-\NewDictTranslation{j-(ODw)}{j}
-\NewDictTranslation{J-(ODw)}{J}
-\NewDictTranslation{king-(ODw)}{king}
-\NewDictTranslation{King-(ODw)}{King}
-\NewDictTranslation{k-(ODw)}{k}
-\NewDictTranslation{K-(ODw)}{K}
-\NewDictTranslation{lead-(ODw)}{lead}
-\NewDictTranslation{Lead-(ODw)}{Lead}
-\NewDictTranslation{lead!-(ODw)}{lead}
-\NewDictTranslation{Lead!-(ODw)}{Lead}
-\NewDictTranslation{length points-(ODw)}{length points}
-\NewDictTranslation{Length Points-(ODw)}{Length Points}
-\NewDictTranslation{lp-(ODw)}{lp}
-\NewDictTranslation{LP-(ODw)}{LP}
-\NewDictTranslation{new minor forcing-(ODw)}{new minor forcing}
-\NewDictTranslation{New Minor Forcing-(ODw)}{New Minor Forcing}
-\NewDictTranslation{nmf-(ODw)}{nmf}
-\NewDictTranslation{NMF-(ODw)}{NMF}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{none-(ODw)}{none}
-\NewDictTranslation{None-(ODw)}{None}
-\NewDictTranslation{none!-(ODw)}{none}
-\NewDictTranslation{None!-(ODw)}{None}
-\NewDictTranslation{north-(ODw)}{north}
-\NewDictTranslation{North-(ODw)}{North}
-\NewDictTranslation{no trump-(ODw)}{no trump}
-\NewDictTranslation{No Trump-(ODw)}{No Trump}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{NT-(ODw)}{N\kern-0.07emT}
-\NewDictTranslation{nt-(ODw)}{nt}
-\NewDictTranslation{pass-(ODw)}{pass}
-\NewDictTranslation{Pass-(ODw)}{Pass}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{q}
-\NewDictTranslation{Q-(ODw)}{Q}
-\NewDictTranslation{queen-(ODw)}{queen}
-\NewDictTranslation{Queen-(ODw)}{Queen}
-\NewDictTranslation{ReDbl-(ODw)}{ReDbl}
-\NewDictTranslation{redoubled-(ODw)}{redoubled}
-\NewDictTranslation{Redoubled-(ODw)}{Redoubled}
-\NewDictTranslation{redouble-(ODw)}{redouble}
-\NewDictTranslation{ReDouble-(ODw)}{ReDouble}
-\NewDictTranslation{semi forcing-(ODw)}{semi forcing}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi Forcing}
-\NewDictTranslation{sf-(ODw)}{sf}
-\NewDictTranslation{SF-(ODw)}{SF}
-\NewDictTranslation{s-(ODw)}{s}
-\NewDictTranslation{S-(ODw)}{S}
-\NewDictTranslation{south-(ODw)}{south}
-\NewDictTranslation{South-(ODw)}{South}
-\NewDictTranslation{suiter-(ODw)}{suiter}
-\NewDictTranslation{Suiter-(ODw)}{Suiter}
-\NewDictTranslation{suit-(ODw)}{suit}
-\NewDictTranslation{Suit-(ODw)}{Suit}
-\NewDictTranslation{third suit forcing-(ODw)}{third suit forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Third Suit Forcing}
-\NewDictTranslation{total points-(ODw)}{total points}
-\NewDictTranslation{Total Points-(ODw)}{Total Points}
-\NewDictTranslation{tp-(ODw)}{tp}
-\NewDictTranslation{TP-(ODw)}{TP}
-\NewDictTranslation{trial bid-(ODw)}{trial bid}
-\NewDictTranslation{Trial bid-(ODw)}{Trial bid}
-\NewDictTranslation{trick-(ODw)}{trick}
-\NewDictTranslation{Trick-(ODw)}{Trick}
-\NewDictTranslation{tsf-(ODw)}{3rd\,sf}
-\NewDictTranslation{TSF-(ODw)}{3rd\,SF}
-\NewDictTranslation{vulnerable-(ODw)}{vulnerable}
-\NewDictTranslation{Vulnerable-(ODw)}{Vulnerable}
-\NewDictTranslation{vul-(ODw)}{vul}
-\NewDictTranslation{Vul-(ODw)}{Vul}
-\NewDictTranslation{west-(ODw)}{west}
-\NewDictTranslation{West-(ODw)}{West}
-\NewDictTranslation{w-(ODw)}{w}
-\NewDictTranslation{W-(ODw)}{W}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-french.trsl b/macros/latex/contrib/onedown/ODw-french.trsl
deleted file mode 100644
index 5a9ec7e8c1..0000000000
--- a/macros/latex/contrib/onedown/ODw-french.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-french.trsl from the OneDown bundle
-%
-% Entries with a "!" denote an abreviated form
-%
-% retrieve with e.g. \GetTranslation{dealer-(ODw)} to get donneur
-%
-\ProvideDictionaryFor{french}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1er}
-\NewDictTranslation{2nd-(ODw)}{2e}
-\NewDictTranslation{3rd-(ODw)}{3e}
-\NewDictTranslation{4th-(ODw)}{4e}
-\NewDictTranslation{ace-(ODw)}{as}
-\NewDictTranslation{Ace-(ODw)}{As}
-\NewDictTranslation{all-(ODw)}{tous}
-\NewDictTranslation{All-(ODw)}{Tous}
-\NewDictTranslation{all!-(ODw)}{tous}
-\NewDictTranslation{All!-(ODw)}{Tous}
-\NewDictTranslation{all pass-(ODw)}{tous passent}
-\NewDictTranslation{All pass-(ODw)}{Tous passent}
-\NewDictTranslation{a-(ODw)}{a}
-\NewDictTranslation{A-(ODw)}{A}
-\NewDictTranslation{ap-(ODw)}{tp}
-\NewDictTranslation{AP-(ODw)}{TP}
-\NewDictTranslation{award-(ODw)}{prix}
-\NewDictTranslation{Award-(ODw)}{Prix}
-\NewDictTranslation{bid-(ODw)}{enchère}
-\NewDictTranslation{Bid-(ODw)}{Enchère}
-\NewDictTranslation{board-(ODw)}{etui}
-\NewDictTranslation{Board-(ODw)}{Etui}
-\NewDictTranslation{brd-(ODw)}{etui}
-\NewDictTranslation{Brd-(ODw)}{Etui}
-\NewDictTranslation{by-(ODw)}{pour}
-\NewDictTranslation{call-(ODw)}{annonce}
-\NewDictTranslation{Call-(ODw)}{Annonce}
-\NewDictTranslation{-card-(ODw)}{-carte}
-\NewDictTranslation{contract-(ODw)}{contrat}
-\NewDictTranslation{Contract-(ODw)}{Contrat}
-\NewDictTranslation{contr-(ODw)}{contr}
-\NewDictTranslation{Contr-(ODw)}{Contr}
-\NewDictTranslation{Dbl-(ODw)}{Ctr}
-\NewDictTranslation{dealer-(ODw)}{donneur}
-\NewDictTranslation{Dealer-(ODw)}{Donneur}
-\NewDictTranslation{deal!-(ODw)}{donne}
-\NewDictTranslation{Deal!-(ODw)}{Donne}
-\NewDictTranslation{deal-(ODw)}{donne}
-\NewDictTranslation{Deal-(ODw)}{Donne}
-\NewDictTranslation{declarer-(ODw)}{déclarant}
-\NewDictTranslation{Declarer-(ODw)}{Déclarant}
-\NewDictTranslation{decl-(ODw)}{décl}
-\NewDictTranslation{Decl-(ODw)}{Décl}
-\NewDictTranslation{distribution points-(ODw)}{points de Distribution}
-\NewDictTranslation{Distribution Points-(ODw)}{Points de Distribution}
-\NewDictTranslation{doubled-(ODw)}{contré}
-\NewDictTranslation{Doubled-(ODw)}{Contré}
-\NewDictTranslation{double-(ODw)}{contre}
-\NewDictTranslation{Double-(ODw)}{Contre}
-\NewDictTranslation{dp-(ODw)}{pd}
-\NewDictTranslation{DP-(ODw)}{PD}
-\NewDictTranslation{east-(ODw)}{est}
-\NewDictTranslation{East-(ODw)}{Est}
-\NewDictTranslation{e-(ODw)}{e}
-\NewDictTranslation{E-(ODw)}{E}
-\NewDictTranslation{fourth suit forcing-(ODw)}{quatrième couleur forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Quatrième Couleur Forcing}
-\NewDictTranslation{fsf-(ODw)}{4e\,cf}
-\NewDictTranslation{FSF-(ODw)}{4e\,CF}
-\NewDictTranslation{game forcing-(ODw)}{forcing de manche}
-\NewDictTranslation{Game Forcing-(ODw)}{Forcing de Manche}
-\NewDictTranslation{GF-(ODw)}{FM}
-\NewDictTranslation{gf-(ODw)}{gf}
-\NewDictTranslation{hand-(ODw)}{main}
-\NewDictTranslation{Hand-(ODw)}{Main}
-\NewDictTranslation{hcp-(ODw)}{h}
-\NewDictTranslation{HCP-(ODw)}{H}
-\NewDictTranslation{high card points-(ODw)}{points d'honneurs}
-\NewDictTranslation{High Card Points-(ODw)}{Points d'Honneurs}
-\NewDictTranslation{hlp-(ODw)}{hl}
-\NewDictTranslation{HLP-(ODw)}{HL}
-\NewDictTranslation{jack-(ODw)}{valet}
-\NewDictTranslation{Jack-(ODw)}{Valet}
-\NewDictTranslation{j-(ODw)}{v}
-\NewDictTranslation{J-(ODw)}{V}
-\NewDictTranslation{king-(ODw)}{roi}
-\NewDictTranslation{King-(ODw)}{Roi}
-\NewDictTranslation{k-(ODw)}{r}
-\NewDictTranslation{K-(ODw)}{R}
-\NewDictTranslation{lead!-(ODw)}{ent.}
-\NewDictTranslation{Lead!-(ODw)}{Ent.}
-\NewDictTranslation{lead-(ODw)}{entame}
-\NewDictTranslation{Lead-(ODw)}{Entame}
-\NewDictTranslation{length points-(ODw)}{points de longueur}
-\NewDictTranslation{Length Points-(ODw)}{Points de Longueur}
-\NewDictTranslation{lp-(ODw)}{pl}
-\NewDictTranslation{LP-(ODw)}{PL}
-\NewDictTranslation{new minor forcing-(ODw)}{nouvelle mineure forcing}
-\NewDictTranslation{New Minor Forcing-(ODw)}{Nouvelle Mineure Forcing}
-\NewDictTranslation{nmf-(ODw)}{nmf}
-\NewDictTranslation{NMF-(ODw)}{NMF}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{none-(ODw)}{aucun}
-\NewDictTranslation{None-(ODw)}{Aucun}
-\NewDictTranslation{none!-(ODw)}{aucun}
-\NewDictTranslation{None!-(ODw)}{Aucun}
-\NewDictTranslation{north-(ODw)}{nord}
-\NewDictTranslation{North-(ODw)}{Nord}
-\NewDictTranslation{no trump-(ODw)}{sans atout}
-\NewDictTranslation{No Trump-(ODw)}{Sans Atout}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{nt-(ODw)}{sa}
-\NewDictTranslation{NT-(ODw)}{S\kern-0.01emA}
-\NewDictTranslation{pass-(ODw)}{passe}
-\NewDictTranslation{Pass-(ODw)}{Passe}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{d}
-\NewDictTranslation{Q-(ODw)}{D}
-\NewDictTranslation{queen-(ODw)}{dame}
-\NewDictTranslation{Queen-(ODw)}{Dame}
-\NewDictTranslation{ReDbl-(ODw)}{SurC}
-\NewDictTranslation{redoubled-(ODw)}{surcontré}
-\NewDictTranslation{Redoubled-(ODw)}{Surcontré}
-\NewDictTranslation{redouble-(ODw)}{surcontre}
-\NewDictTranslation{Redouble-(ODw)}{Surcontre}
-\NewDictTranslation{semi forcing-(ODw)}{semi forcing}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi Forcing}
-\NewDictTranslation{SF-(ODw)}{SF}
-\NewDictTranslation{sf-(ODw)}{sf}
-\NewDictTranslation{s-(ODw)}{s}
-\NewDictTranslation{S-(ODw)}{S}
-\NewDictTranslation{south-(ODw)}{sud}
-\NewDictTranslation{South-(ODw)}{Sud}
-\NewDictTranslation{suiter-(ODw)}{colore}
-\NewDictTranslation{Suiter-(ODw)}{Colore}
-\NewDictTranslation{suit-(ODw)}{couleur}
-\NewDictTranslation{Suit-(ODw)}{Couleur}
-\NewDictTranslation{third suit forcing-(ODw)}{troisième couleur forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Troisième Couleur Forcing}
-\NewDictTranslation{total points-(ODw)}{points total}
-\NewDictTranslation{Total Points-(ODw)}{Points Total}
-\NewDictTranslation{TP-(ODw)}{PT}
-\NewDictTranslation{tp-(ODw)}{tp}
-\NewDictTranslation{trial bid-(ODw)}{trial bid}
-\NewDictTranslation{Trial bid-(ODw)}{Trial bid}
-\NewDictTranslation{trick-(ODw)}{levée}
-\NewDictTranslation{Trick-(ODw)}{Levée}
-\NewDictTranslation{tsf-(ODw)}{3e\,cf}
-\NewDictTranslation{TSF-(ODw)}{3e\,CF}
-\NewDictTranslation{vulnerable-(ODw)}{vulnérable}
-\NewDictTranslation{Vulnerable-(ODw)}{Vulnérable}
-\NewDictTranslation{vul-(ODw)}{vul}
-\NewDictTranslation{Vul-(ODw)}{Vul}
-\NewDictTranslation{west-(ODw)}{ouest}
-\NewDictTranslation{West-(ODw)}{Ouest}
-\NewDictTranslation{w-(ODw)}{o}
-\NewDictTranslation{W-(ODw)}{O}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-german.trsl b/macros/latex/contrib/onedown/ODw-german.trsl
deleted file mode 100644
index b1cd730f37..0000000000
--- a/macros/latex/contrib/onedown/ODw-german.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-german.trsl from the OneDown bundle
-%
-% Entries with a "!" denote an abreviated form
-%
-% retrieve with e.g. \GetTranslation{dealer-(ODw)} to get teiler
-%
-\ProvideDictionaryFor{german}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1.}
-\NewDictTranslation{2nd-(ODw)}{2.}
-\NewDictTranslation{3rd-(ODw)}{3.}
-\NewDictTranslation{4th-(ODw)}{4.}
-\NewDictTranslation{ace-(ODw)}{ass}
-\NewDictTranslation{Ace-(ODw)}{Ass}
-\NewDictTranslation{all-(ODw)}{alle}
-\NewDictTranslation{All-(ODw)}{Alle}
-\NewDictTranslation{all!-(ODw)}{alle}
-\NewDictTranslation{All!-(ODw)}{Alle}
-\NewDictTranslation{all pass-(ODw)}{alle passen}
-\NewDictTranslation{All pass-(ODw)}{Alle passen}
-\NewDictTranslation{a-(ODw)}{a}
-\NewDictTranslation{A-(ODw)}{A}
-\NewDictTranslation{ap-(ODw)}{ap}
-\NewDictTranslation{AP-(ODw)}{AP}
-\NewDictTranslation{award-(ODw)}{Bewertung}
-\NewDictTranslation{Award-(ODw)}{Bewertung}
-\NewDictTranslation{bid-(ODw)}{gebot}
-\NewDictTranslation{Bid-(ODw)}{Gebot}
-\NewDictTranslation{board-(ODw)}{board}
-\NewDictTranslation{Board-(ODw)}{Board}
-\NewDictTranslation{brd-(ODw)}{brd}
-\NewDictTranslation{Brd-(ODw)}{Brd}
-\NewDictTranslation{by-(ODw)}{von}
-\NewDictTranslation{call-(ODw)}{ansage}
-\NewDictTranslation{Call-(ODw)}{Ansage}
-\NewDictTranslation{-card-(ODw)}{er}
-\NewDictTranslation{contract-(ODw)}{kontrakt}
-\NewDictTranslation{Contract-(ODw)}{Kontrakt}
-\NewDictTranslation{contr-(ODw)}{kontr}
-\NewDictTranslation{Contr-(ODw)}{Kontr}
-\NewDictTranslation{Dbl-(ODw)}{Kntr}
-\NewDictTranslation{dealer-(ODw)}{teiler}
-\NewDictTranslation{Dealer-(ODw)}{Teiler}
-\NewDictTranslation{deal!-(ODw)}{aust}
-\NewDictTranslation{Deal!-(ODw)}{Aust}
-\NewDictTranslation{deal-(ODw)}{austeilung}
-\NewDictTranslation{Deal-(ODw)}{Austeilung}
-\NewDictTranslation{declarer-(ODw)}{alleinspieler}
-\NewDictTranslation{Declarer-(ODw)}{Alleinspieler}
-\NewDictTranslation{decl-(ODw)}{alleinsp}
-\NewDictTranslation{Decl-(ODw)}{Alleinsp}
-\NewDictTranslation{distribution points-(ODw)}{verteilungspunkte}
-\NewDictTranslation{Distribution Points-(ODw)}{Verteilungspunkte}
-\NewDictTranslation{doubled-(ODw)}{kontriert}
-\NewDictTranslation{Doubled-(ODw)}{Kontriert}
-\NewDictTranslation{double-(ODw)}{kontra}
-\NewDictTranslation{Double-(ODw)}{Kontra}
-\NewDictTranslation{dp-(ODw)}{v}
-\NewDictTranslation{DP-(ODw)}{V}
-\NewDictTranslation{east-(ODw)}{ost}
-\NewDictTranslation{East-(ODw)}{Ost}
-\NewDictTranslation{e-(ODw)}{o}
-\NewDictTranslation{E-(ODw)}{O}
-\NewDictTranslation{fourth suit forcing-(ODw)}{vierte farbe forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Vierte Farbe Forcing}
-\NewDictTranslation{fsf-(ODw)}{4.\,ff}
-\NewDictTranslation{FSF-(ODw)}{4.\,FF}
-\NewDictTranslation{game forcing-(ODw)}{partie forcing}
-\NewDictTranslation{Game Forcing-(ODw)}{Partie Forcing}
-\NewDictTranslation{gf-(ODw)}{pf}
-\NewDictTranslation{GF-(ODw)}{PF}
-\NewDictTranslation{hand-(ODw)}{blatt}
-\NewDictTranslation{Hand-(ODw)}{Blatt}
-\NewDictTranslation{hcp-(ODw)}{f}
-\NewDictTranslation{HCP-(ODw)}{F}
-\NewDictTranslation{high card points-(ODw)}{figurenpunkte}
-\NewDictTranslation{High Card Points-(ODw)}{Figurenpunkte}
-\NewDictTranslation{hlp-(ODw)}{fl}
-\NewDictTranslation{HLP-(ODw)}{FL}
-\NewDictTranslation{jack-(ODw)}{bube}
-\NewDictTranslation{Jack-(ODw)}{Bube}
-\NewDictTranslation{j-(ODw)}{b}
-\NewDictTranslation{J-(ODw)}{B}
-\NewDictTranslation{king-(ODw)}{könig}
-\NewDictTranslation{King-(ODw)}{König}
-\NewDictTranslation{k-(ODw)}{k}
-\NewDictTranslation{K-(ODw)}{K}
-\NewDictTranslation{lead!-(ODw)}{aussp.}
-\NewDictTranslation{Lead!-(ODw)}{Aussp.}
-\NewDictTranslation{lead-(ODw)}{ausspiel}
-\NewDictTranslation{Lead-(ODw)}{Ausspiel}
-\NewDictTranslation{length points-(ODw)}{längenpunkte}
-\NewDictTranslation{Length Points-(ODw)}{Längenpunkte}
-\NewDictTranslation{lp-(ODw)}{l}
-\NewDictTranslation{LP-(ODw)}{L}
-\NewDictTranslation{new minor forcing-(ODw)}{neue unterfarbe forcing}
-\NewDictTranslation{New Minor Forcing-(ODw)}{Neue Unterfarbe Forcing}
-\NewDictTranslation{nmf-(ODw)}{nuf}
-\NewDictTranslation{NMF-(ODw)}{NUF}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{none-(ODw)}{keiner}
-\NewDictTranslation{None-(ODw)}{Keiner}
-\NewDictTranslation{none!-(ODw)}{keiner}
-\NewDictTranslation{None!-(ODw)}{Keiner}
-\NewDictTranslation{north-(ODw)}{nord}
-\NewDictTranslation{North-(ODw)}{Nord}
-\NewDictTranslation{no trump-(ODw)}{sans atout}
-\NewDictTranslation{No Trump-(ODw)}{Sans Atout}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{nt-(ODw)}{sa}
-\NewDictTranslation{NT-(ODw)}{S\kern-0.01emA}
-\NewDictTranslation{pass-(ODw)}{passe}
-\NewDictTranslation{Pass-(ODw)}{Passe}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{d}
-\NewDictTranslation{Q-(ODw)}{D}
-\NewDictTranslation{queen-(ODw)}{dame}
-\NewDictTranslation{Queen-(ODw)}{Dame}
-\NewDictTranslation{ReDbl-(ODw)}{ReKntr}
-\NewDictTranslation{redoubled-(ODw)}{rekontriert}
-\NewDictTranslation{Redoubled-(ODw)}{Rekontriert}
-\NewDictTranslation{redouble-(ODw)}{rekontra}
-\NewDictTranslation{ReDouble-(ODw)}{ReKontra}
-\NewDictTranslation{semi forcing-(ODw)}{semi forcing}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi Forcing}
-\NewDictTranslation{sf-(ODw)}{sf}
-\NewDictTranslation{SF-(ODw)}{SF}
-\NewDictTranslation{s-(ODw)}{s}
-\NewDictTranslation{S-(ODw)}{S}
-\NewDictTranslation{south-(ODw)}{süd}
-\NewDictTranslation{South-(ODw)}{Süd}
-\NewDictTranslation{suiter-(ODw)}{färber}
-\NewDictTranslation{Suiter-(ODw)}{Färber}
-\NewDictTranslation{suit-(ODw)}{farbe}
-\NewDictTranslation{Suit-(ODw)}{Farbe}
-\NewDictTranslation{third suit forcing-(ODw)}{dritte farbe forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Dritte Farbe Forcing}
-\NewDictTranslation{total points-(ODw)}{figuren-verteilungspunkte}
-\NewDictTranslation{Total Points-(ODw)}{Figuren-Verteilungspunkte}
-\NewDictTranslation{tp-(ODw)}{fv}
-\NewDictTranslation{TP-(ODw)}{FV}
-\NewDictTranslation{trial bid-(ODw)}{versuchsgebot}
-\NewDictTranslation{Trial bid-(ODw)}{Versuchsgebot}
-\NewDictTranslation{trick-(ODw)}{stich}
-\NewDictTranslation{Trick-(ODw)}{Stich}
-\NewDictTranslation{tsf-(ODw)}{3.\,ff}
-\NewDictTranslation{TSF-(ODw)}{3.\,FF}
-\NewDictTranslation{vulnerable-(ODw)}{gefahr}
-\NewDictTranslation{Vulnerable-(ODw)}{Gefahr}
-\NewDictTranslation{vul-(ODw)}{gef}
-\NewDictTranslation{Vul-(ODw)}{Gef}
-\NewDictTranslation{west-(ODw)}{west}
-\NewDictTranslation{West-(ODw)}{West}
-\NewDictTranslation{w-(ODw)}{w}
-\NewDictTranslation{W-(ODw)}{W}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-norwegian.trsl b/macros/latex/contrib/onedown/ODw-norwegian.trsl
deleted file mode 100644
index 894ad713dc..0000000000
--- a/macros/latex/contrib/onedown/ODw-norwegian.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-norsk.trsl from the OneDown bundle
-% Entries with a "!" denote an abreviated form
-% Thanks to Gunnar & Anne
-%
-% retrieve with e.g \GetTranslation{dealer-(ODw)} to get givare
-%
-\ProvideDictionaryFor{norwegian}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1.}
-\NewDictTranslation{2nd-(ODw)}{2.}
-\NewDictTranslation{3rd-(ODw)}{3.}
-\NewDictTranslation{4th-(ODw)}{4.}
-\NewDictTranslation{ace-(ODw)}{ess}
-\NewDictTranslation{Ace-(ODw)}{Ess}
-\NewDictTranslation{all-(ODw)}{alle}
-\NewDictTranslation{All-(ODw)}{Alle}
-\NewDictTranslation{all!-(ODw)}{alle}
-\NewDictTranslation{All!-(ODw)}{Alle}
-\NewDictTranslation{all pass-(ODw)}{pass rundt}
-\NewDictTranslation{All pass-(ODw)}{Pass rundt}
-\NewDictTranslation{a-(ODw)}{e}
-\NewDictTranslation{A-(ODw)}{E}
-%\NewDictTranslation{award-(ODw)}{poeng}
-%\NewDictTranslation{Award-(ODw)}{Poeng}
-\NewDictTranslation{award-(ODw)}{vurdering}
-\NewDictTranslation{Award-(ODw)}{Vurdering}
-\NewDictTranslation{bid-(ODw)}{bud}
-\NewDictTranslation{Bid-(ODw)}{Bud}
-\NewDictTranslation{board-(ODw)}{spill}
-\NewDictTranslation{Board-(ODw)}{Spill}
-\NewDictTranslation{brd-(ODw)}{spill}
-\NewDictTranslation{Brd-(ODw)}{Spill}
-\NewDictTranslation{by-(ODw)}{ved}
-\NewDictTranslation{call-(ODw)}{bud}
-\NewDictTranslation{Call-(ODw)}{Bud}
-\NewDictTranslation{-card-(ODw)}{-kortfarger}
-\NewDictTranslation{contract-(ODw)}{kontrakt}
-\NewDictTranslation{Contract-(ODw)}{Kontrakt}
-\NewDictTranslation{contr-(ODw)}{kontr}
-\NewDictTranslation{Contr-(ODw)}{Kontr}
-\NewDictTranslation{Dbl-(ODw)}{Dbl}
-\NewDictTranslation{dealer-(ODw)}{giver}
-\NewDictTranslation{Dealer-(ODw)}{Giver}
-\NewDictTranslation{deal-(ODw)}{giv}
-\NewDictTranslation{Deal-(ODw)}{Giv}
-\NewDictTranslation{deal!-(ODw)}{giv}
-\NewDictTranslation{Deal!-(ODw)}{Giv}
-\NewDictTranslation{declarer-(ODw)}{spilleförer}
-\NewDictTranslation{Declarer-(ODw)}{Spilleförer}
-\NewDictTranslation{decl-(ODw)}{spför}
-\NewDictTranslation{Decl-(ODw)}{Spför}
-\NewDictTranslation{distribution points-(ODw)}{trumfpoeng}
-\NewDictTranslation{Distribution Points-(ODw)}{Trumfpoeng}
-\NewDictTranslation{doubled-(ODw)}{doblet}
-\NewDictTranslation{Doubled-(ODw)}{Doblet}
-\NewDictTranslation{double-(ODw)}{doblet}
-\NewDictTranslation{Double-(ODw)}{Doblet}
-\NewDictTranslation{dp-(ODw)}{tp}
-\NewDictTranslation{DP-(ODw)}{TP}
-\NewDictTranslation{east-(ODw)}{øst}
-\NewDictTranslation{East-(ODw)}{Øst}
-\NewDictTranslation{e-(ODw)}{ø}
-\NewDictTranslation{E-(ODw)}{Ø}
-\NewDictTranslation{fourth suit forcing-(ODw)}{fjerde farge forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Fjerde Farge Forcing}
-\NewDictTranslation{fsf-(ODw)}{4.\,ff}
-\NewDictTranslation{FSF-(ODw)}{4.\,FF}
-\NewDictTranslation{game forcing-(ODw)}{utgangskrav}
-\NewDictTranslation{Game Forcing-(ODw)}{UtgangsKrav}
-\NewDictTranslation{gf-(ODw)}{uk}
-\NewDictTranslation{GF-(ODw)}{UK}
-\NewDictTranslation{Hand-(ODw)}{Hånd}
-\NewDictTranslation{hand-(ODw)}{hånd}
-\NewDictTranslation{hcp-(ODw)}{hp}
-\NewDictTranslation{HCP-(ODw)}{HP}
-\NewDictTranslation{high card points-(ODw)}{høy kort poeng}
-\NewDictTranslation{High Card Points-(ODw)}{høy Kort Poeng}
-\NewDictTranslation{hlp-(ODw)}{hlp}
-\NewDictTranslation{HLP-(ODw)}{HLP}
-\NewDictTranslation{jack-(ODw)}{knekt}
-\NewDictTranslation{Jack-(ODw)}{Knekt}
-\NewDictTranslation{J-(ODw)}{\mbox{K\kern-0.08emn}}
-\NewDictTranslation{j-(ODw)}{\mbox{kn}}
-\NewDictTranslation{king-(ODw)}{konge}
-\NewDictTranslation{King-(ODw)}{Konge}
-\NewDictTranslation{k-(ODw)}{k}
-\NewDictTranslation{K-(ODw)}{K}
-\NewDictTranslation{lead!-(ODw)}{utsp.}
-\NewDictTranslation{Lead!-(ODw)}{Utsp.}
-\NewDictTranslation{lead-(ODw)}{utspill}
-\NewDictTranslation{Lead-(ODw)}{Utspill}
-\NewDictTranslation{length points-(ODw)}{lengde poeng}
-\NewDictTranslation{Length Points-(ODw)}{Lengde Poeng}
-\NewDictTranslation{lp-(ODw)}{lp}
-\NewDictTranslation{LP-(ODw)}{LP}
-\NewDictTranslation{new minor forcing-(ODw)}{nye minor krav}
-\NewDictTranslation{New Minor Forcing-(ODw)}{Nye Minor Krav}
-\NewDictTranslation{nmf-(ODw)}{nmk}
-\NewDictTranslation{NMF-(ODw)}{NMK}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{none!-(ODw)}{ing}
-\NewDictTranslation{None!-(ODw)}{Ing}
-\NewDictTranslation{none-(ODw)}{ingen}
-\NewDictTranslation{None-(ODw)}{Ingen}
-\NewDictTranslation{north-(ODw)}{nord}
-\NewDictTranslation{North-(ODw)}{Nord}
-\NewDictTranslation{no trump-(ODw)}{uten trumf}
-\NewDictTranslation{No Trump-(ODw)}{Uten Trumf}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{NT-(ODw)}{N\kern-0.07emT}
-\NewDictTranslation{nt-(ODw)}{nt}
-\NewDictTranslation{pass-(ODw)}{pass}
-\NewDictTranslation{Pass-(ODw)}{Pass}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{d}
-\NewDictTranslation{Q-(ODw)}{D}
-\NewDictTranslation{queen-(ODw)}{dame}
-\NewDictTranslation{Queen-(ODw)}{Dame}
-\NewDictTranslation{ReDbl-(ODw)}{ReDbl}
-\NewDictTranslation{redoubled-(ODw)}{redoblet}
-\NewDictTranslation{Redoubled-(ODw)}{Redoblet}
-\NewDictTranslation{redouble-(ODw)}{redoblet}
-\NewDictTranslation{ReDouble-(ODw)}{Redoblet}
-\NewDictTranslation{semi forcing-(ODw)}{RundKrav}
-\NewDictTranslation{Semi Forcing-(ODw)}{RundKrav}
-\NewDictTranslation{sf-(ODw)}{rk}
-\NewDictTranslation{SF-(ODw)}{RK}
-\NewDictTranslation{s-(ODw)}{s}
-\NewDictTranslation{S-(ODw)}{S}
-\NewDictTranslation{south-(ODw)}{syd}
-\NewDictTranslation{South-(ODw)}{Syd}
-\NewDictTranslation{suiter-(ODw)}{farger}
-\NewDictTranslation{Suiter-(ODw)}{Farger}
-\NewDictTranslation{suit-(ODw)}{farge}
-\NewDictTranslation{Suit-(ODw)}{Farge}
-\NewDictTranslation{third suit forcing-(ODw)}{tredje farge forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Tredje Farge Forcing}
-\NewDictTranslation{total points-(ODw)}{totalt poeng}
-\NewDictTranslation{Total Points-(ODw)}{Totalt Poeng}
-\NewDictTranslation{tp-(ODw)}{tp}
-\NewDictTranslation{TP-(ODw)}{TP}
-\NewDictTranslation{trial bid-(ODw)}{prøving bud}
-\NewDictTranslation{Trial bid-(ODw)}{Prøving bud}
-\NewDictTranslation{trick-(ODw)}{trekk}
-\NewDictTranslation{Trick-(ODw)}{Trekk}
-\NewDictTranslation{tsf-(ODw)}{3.\,ff}
-\NewDictTranslation{TSF-(ODw)}{3.\,FF}
-\NewDictTranslation{vulnerable-(ODw)}{sone}
-\NewDictTranslation{Vulnerable-(ODw)}{Sone}
-\NewDictTranslation{vul-(ODw)}{sone}
-\NewDictTranslation{Vul-(ODw)}{Sone}
-\NewDictTranslation{west-(ODw)}{vest}
-\NewDictTranslation{West-(ODw)}{Vest}
-\NewDictTranslation{w-(ODw)}{v}
-\NewDictTranslation{W-(ODw)}{V}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-spanish.trsl b/macros/latex/contrib/onedown/ODw-spanish.trsl
deleted file mode 100644
index db88594dd7..0000000000
--- a/macros/latex/contrib/onedown/ODw-spanish.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-spanish.trsl from the OneDown bundle
-%
-% Entries with a "!" denote an abreviated form
-%
-% retrieve with e.g. \GetTranslation{dealer-(ODw)} to get donneur
-%
-\ProvideDictionaryFor{spanish}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1er}
-\NewDictTranslation{2nd-(ODw)}{2do}
-\NewDictTranslation{3rd-(ODw)}{3er}
-\NewDictTranslation{4th-(ODw)}{4th}
-\NewDictTranslation{ace-(ODw)}{as}
-\NewDictTranslation{Ace-(ODw)}{As}
-\NewDictTranslation{all-(ODw)}{todos}
-\NewDictTranslation{All-(ODw)}{Todos}
-\NewDictTranslation{all!-(ODw)}{todos}
-\NewDictTranslation{All!-(ODw)}{Todos}
-\NewDictTranslation{all pass-(ODw)}{todos pasan}
-\NewDictTranslation{All pass-(ODw)}{Todos pasan}
-\NewDictTranslation{a-(ODw)}{a}
-\NewDictTranslation{A-(ODw)}{A}
-\NewDictTranslation{ap-(ODw)}{tp}
-\NewDictTranslation{AP-(ODw)}{TP}
-\NewDictTranslation{award-(ODw)}{premio}
-\NewDictTranslation{Award-(ODw)}{Premio}
-\NewDictTranslation{bid-(ODw)}{contrato}
-\NewDictTranslation{Bid-(ODw)}{Contrato}
-\NewDictTranslation{board-(ODw)}{estuche}
-\NewDictTranslation{Board-(ODw)}{Estuche}
-\NewDictTranslation{brd-(ODw)}{est}
-\NewDictTranslation{Brd-(ODw)}{Est}
-\NewDictTranslation{by-(ODw)}{por}
-\NewDictTranslation{call-(ODw)}{annonce}
-\NewDictTranslation{Call-(ODw)}{Annonce}
-\NewDictTranslation{-card-(ODw)}{-carta}
-\NewDictTranslation{contract-(ODw)}{contrato final}
-\NewDictTranslation{Contract-(ODw)}{Contrato final}
-\NewDictTranslation{contr-(ODw)}{ctrf}
-\NewDictTranslation{Contr-(ODw)}{Ctrf}
-\NewDictTranslation{Dbl-(ODw)}{Dbl}
-\NewDictTranslation{dealer-(ODw)}{dador}
-\NewDictTranslation{Dealer-(ODw)}{Dador}
-\NewDictTranslation{deal!-(ODw)}{donne}
-\NewDictTranslation{Deal!-(ODw)}{Donne}
-\NewDictTranslation{deal-(ODw)}{donne}
-\NewDictTranslation{Deal-(ODw)}{Donne}
-\NewDictTranslation{declarer-(ODw)}{declarante}
-\NewDictTranslation{Declarer-(ODw)}{Declarante}
-\NewDictTranslation{decl-(ODw)}{decl}
-\NewDictTranslation{Decl-(ODw)}{Decl}
-\NewDictTranslation{distribution points-(ODw)}{puntos de distribución}
-\NewDictTranslation{Distribution Points-(ODw)}{Puntos de Distribución}
-\NewDictTranslation{doubled-(ODw)}{doblado}
-\NewDictTranslation{Doubled-(ODw)}{Doblado}
-\NewDictTranslation{double-(ODw)}{doblo}
-\NewDictTranslation{Double-(ODw)}{Doblo}
-\NewDictTranslation{dp-(ODw)}{pd}
-\NewDictTranslation{DP-(ODw)}{PD}
-\NewDictTranslation{east-(ODw)}{este}
-\NewDictTranslation{East-(ODw)}{Este}
-\NewDictTranslation{e-(ODw)}{e}
-\NewDictTranslation{E-(ODw)}{E}
-\NewDictTranslation{fourth suit forcing-(ODw)}{cuarto palo forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Cuarto Palo Forcing}
-\NewDictTranslation{fsf-(ODw)}{4th\,pf}
-\NewDictTranslation{FSF-(ODw)}{4th\,PF}
-\NewDictTranslation{game forcing-(ODw)}{forcing a manga}
-\NewDictTranslation{Game Forcing-(ODw)}{Forcing a Manga}
-\NewDictTranslation{GF-(ODw)}{FG}
-\NewDictTranslation{gf-(ODw)}{fg}
-\NewDictTranslation{hand-(ODw)}{mano}
-\NewDictTranslation{Hand-(ODw)}{Mano}
-\NewDictTranslation{hcp-(ODw)}{ph}
-\NewDictTranslation{HCP-(ODw)}{PH}
-\NewDictTranslation{high card points-(ODw)}{puntos de honores}
-\NewDictTranslation{High Card Points-(ODw)}{Puntos de Honores}
-\NewDictTranslation{hlp-(ODw)}{hl}
-\NewDictTranslation{HLP-(ODw)}{HL}
-\NewDictTranslation{jack-(ODw)}{jaco}
-\NewDictTranslation{Jack-(ODw)}{Jaco}
-\NewDictTranslation{j-(ODw)}{j}
-\NewDictTranslation{J-(ODw)}{J}
-\NewDictTranslation{king-(ODw)}{rey}
-\NewDictTranslation{King-(ODw)}{Rey}
-\NewDictTranslation{k-(ODw)}{r}
-\NewDictTranslation{K-(ODw)}{R}
-\NewDictTranslation{lead!-(ODw)}{ent.}
-\NewDictTranslation{Lead!-(ODw)}{Ent.}
-\NewDictTranslation{lead-(ODw)}{entame}
-\NewDictTranslation{Lead-(ODw)}{Entame}
-\NewDictTranslation{length points-(ODw)}{points de longueur}
-\NewDictTranslation{Length Points-(ODw)}{Points de Longueur}
-\NewDictTranslation{lp-(ODw)}{pl}
-\NewDictTranslation{LP-(ODw)}{PL}
-\NewDictTranslation{new minor forcing-(ODw)}{neuvo menor forcing}
-\NewDictTranslation{New Minor Forcing-(ODw)}{Neuvo Menor Forcing}
-\NewDictTranslation{nmf-(ODw)}{nmf}
-\NewDictTranslation{NMF-(ODw)}{NMF}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{none-(ODw)}{nadie}
-\NewDictTranslation{None-(ODw)}{Nadie}
-\NewDictTranslation{none!-(ODw)}{nadie}
-\NewDictTranslation{None!-(ODw)}{Nadie}
-\NewDictTranslation{north-(ODw)}{norte}
-\NewDictTranslation{North-(ODw)}{Norte}
-\NewDictTranslation{no trump-(ODw)}{sin triunfo}
-\NewDictTranslation{No Trump-(ODw)}{Sin Triunfo}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{nt-(ODw)}{st}
-\NewDictTranslation{NT-(ODw)}{S\kern-0.01emT}
-\NewDictTranslation{pass-(ODw)}{paso}
-\NewDictTranslation{Pass-(ODw)}{Paso}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{d}
-\NewDictTranslation{Q-(ODw)}{D}
-\NewDictTranslation{queen-(ODw)}{dama}
-\NewDictTranslation{Queen-(ODw)}{Dama}
-\NewDictTranslation{ReDbl-(ODw)}{ReDbl}
-\NewDictTranslation{redoubled-(ODw)}{redoblado}
-\NewDictTranslation{Redoubled-(ODw)}{Redoblado}
-\NewDictTranslation{redouble-(ODw)}{redoblo}
-\NewDictTranslation{Redouble-(ODw)}{Redoblo}
-\NewDictTranslation{semi forcing-(ODw)}{semi forcing}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi Forcing}
-\NewDictTranslation{SF-(ODw)}{SF}
-\NewDictTranslation{sf-(ODw)}{sf}
-\NewDictTranslation{s-(ODw)}{s}
-\NewDictTranslation{S-(ODw)}{S}
-\NewDictTranslation{south-(ODw)}{sur}
-\NewDictTranslation{South-(ODw)}{Sur}
-\NewDictTranslation{suiter-(ODw)}{color}
-\NewDictTranslation{Suiter-(ODw)}{Color}
-\NewDictTranslation{suit-(ODw)}{palo}
-\NewDictTranslation{Suit-(ODw)}{Palo}
-\NewDictTranslation{third suit forcing-(ODw)}{tercer palo forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Tercer Palo Forcing}
-\NewDictTranslation{total points-(ODw)}{puntos de honor-distribución}
-\NewDictTranslation{Total Points-(ODw)}{Puntos de Honor-Distribución}
-\NewDictTranslation{TP-(ODw)}{PHD}
-\NewDictTranslation{tp-(ODw)}{phd}
-\NewDictTranslation{trial bid-(ODw)}{trial bid}
-\NewDictTranslation{Trial bid-(ODw)}{Trial bid}
-\NewDictTranslation{trick-(ODw)}{baza}
-\NewDictTranslation{Trick-(ODw)}{Baza}
-\NewDictTranslation{tsf-(ODw)}{3er\,pf}
-\NewDictTranslation{TSF-(ODw)}{3er\,PF}
-\NewDictTranslation{vulnerable-(ODw)}{vulnerable}
-\NewDictTranslation{Vulnerable-(ODw)}{Vulnerable}
-\NewDictTranslation{vul-(ODw)}{vul}
-\NewDictTranslation{Vul-(ODw)}{Vul}
-\NewDictTranslation{west-(ODw)}{oeste}
-\NewDictTranslation{West-(ODw)}{Oeste}
-\NewDictTranslation{w-(ODw)}{o}
-\NewDictTranslation{W-(ODw)}{O}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-swedish.trsl b/macros/latex/contrib/onedown/ODw-swedish.trsl
deleted file mode 100644
index 5426b5e797..0000000000
--- a/macros/latex/contrib/onedown/ODw-swedish.trsl
+++ /dev/null
@@ -1,162 +0,0 @@
-% this is file ODw-swedish.trsl from the OneDown bundle
-%
-% Entries with a "!" denote an abreviated form
-% Thanks to Per Karlberg
-% retrieve with e.g \GetTranslation{dealer-(ODw)} to get givare
-%
-\ProvideDictionaryFor{swedish}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1:a}
-\NewDictTranslation{2nd-(ODw)}{2:a}
-\NewDictTranslation{3rd-(ODw)}{3:e}
-\NewDictTranslation{4th-(ODw)}{4:e}
-\NewDictTranslation{ace-(ODw)}{äss}
-\NewDictTranslation{Ace-(ODw)}{Äss}
-\NewDictTranslation{all-(ODw)}{alla}
-\NewDictTranslation{All-(ODw)}{Alla}
-\NewDictTranslation{all!-(ODw)}{alla}
-\NewDictTranslation{All!-(ODw)}{Alla}
-\NewDictTranslation{all pass-(ODw)}{alla passet}
-\NewDictTranslation{All pass-(ODw)}{Alla passet}
-\NewDictTranslation{a-(ODw)}{ä}
-\NewDictTranslation{A-(ODw)}{Ä}
-\NewDictTranslation{ap-(ODw)}{ap}
-\NewDictTranslation{AP-(ODw)}{AP}
-%\NewDictTranslation{award-(ODw)}{poäng}
-%\NewDictTranslation{Award-(ODw)}{Poäng}
-\NewDictTranslation{award-(ODw)}{värdering}
-\NewDictTranslation{Award-(ODw)}{Värdering}
-\NewDictTranslation{bid-(ODw)}{bud}
-\NewDictTranslation{Bid-(ODw)}{Bud}
-\NewDictTranslation{board-(ODw)}{bricka}
-\NewDictTranslation{Board-(ODw)}{Bricka}
-\NewDictTranslation{brd-(ODw)}{brck}
-\NewDictTranslation{Brd-(ODw)}{Brck}
-\NewDictTranslation{by-(ODw)}{per}
-\NewDictTranslation{call-(ODw)}{bud}
-\NewDictTranslation{Call-(ODw)}{Bud}
-\NewDictTranslation{-card-(ODw)}{-kort}
-\NewDictTranslation{contract-(ODw)}{kontrakt}
-\NewDictTranslation{Contract-(ODw)}{Kontrakt}
-\NewDictTranslation{contr-(ODw)}{kontr}
-\NewDictTranslation{Contr-(ODw)}{Kontr}
-\NewDictTranslation{Dbl-(ODw)}{Dbl}
-\NewDictTranslation{dealer-(ODw)}{givare}
-\NewDictTranslation{Dealer-(ODw)}{Givare}
-\NewDictTranslation{deal-(ODw)}{giv}
-\NewDictTranslation{Deal-(ODw)}{Giv}
-\NewDictTranslation{deal!-(ODw)}{giv}
-\NewDictTranslation{Deal!-(ODw)}{Giv}
-\NewDictTranslation{declarer-(ODw)}{spelförare}
-\NewDictTranslation{Declarer-(ODw)}{Spelförare}
-\NewDictTranslation{decl-(ODw)}{spför}
-\NewDictTranslation{Decl-(ODw)}{Spför}
-\NewDictTranslation{distribution points-(ODw)}{fördelningpoints}
-\NewDictTranslation{Distribution Points-(ODw)}{Fördelningpoints}
-\NewDictTranslation{doubled-(ODw)}{dubbelt}
-\NewDictTranslation{Doubled-(ODw)}{Dubbelt}
-\NewDictTranslation{double-(ODw)}{dubbelt}
-\NewDictTranslation{Double-(ODw)}{Dubbelt}
-\NewDictTranslation{dp-(ODw)}{fp}
-\NewDictTranslation{DP-(ODw)}{FP}
-\NewDictTranslation{east-(ODw)}{öst}
-\NewDictTranslation{East-(ODw)}{Öst}
-\NewDictTranslation{e-(ODw)}{ö}
-\NewDictTranslation{E-(ODw)}{Ö}
-\NewDictTranslation{fourth suit forcing-(ODw)}{fjärde farve forcing}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Fjärde Farve Forcing}
-\NewDictTranslation{fsf-(ODw)}{4:e\,ff}
-\NewDictTranslation{FSF-(ODw)}{4:e\,FF}
-\NewDictTranslation{game forcing-(ODw)}{krav till udgang}
-\NewDictTranslation{Game Forcing-(ODw)}{Krav till Udgang}
-\NewDictTranslation{gf-(ODw)}{ku}
-\NewDictTranslation{GF-(ODw)}{KU}
-\NewDictTranslation{Hand-(ODw)}{Hand}
-\NewDictTranslation{hand-(ODw)}{hand}
-\NewDictTranslation{hcp-(ODw)}{hp}
-\NewDictTranslation{HCP-(ODw)}{HP}
-\NewDictTranslation{high card points-(ODw)}{Honnørpoints}
-\NewDictTranslation{High Card Points-(ODw)}{honnørpoints}
-\NewDictTranslation{hlp-(ODw)}{hlp}
-\NewDictTranslation{HLP-(ODw)}{HLP}
-\NewDictTranslation{jack-(ODw)}{knekt}
-\NewDictTranslation{Jack-(ODw)}{Knekt}
-\NewDictTranslation{j-(ODw)}{kn}
-\NewDictTranslation{J-(ODw)}{\mbox{K\kern-0.08emn}}
-\NewDictTranslation{king-(ODw)}{kung}
-\NewDictTranslation{King-(ODw)}{Kung}
-\NewDictTranslation{k-(ODw)}{k}
-\NewDictTranslation{K-(ODw)}{K}
-\NewDictTranslation{lead!-(ODw)}{utsp.}
-\NewDictTranslation{Lead!-(ODw)}{Utsp.}
-\NewDictTranslation{lead-(ODw)}{utspel}
-\NewDictTranslation{Lead-(ODw)}{Utspel}
-\NewDictTranslation{length points-(ODw)}{längd points}
-\NewDictTranslation{Length Points-(ODw)}{Längd Points}
-\NewDictTranslation{lp-(ODw)}{lp}
-\NewDictTranslation{LP-(ODw)}{LP}
-\NewDictTranslation{new minor forcing-(ODw)}{new minor forcing}
-\NewDictTranslation{New Minor Forcing-(ODw)}{New Minor Forcing}
-\NewDictTranslation{nmf-(ODw)}{nmf}
-\NewDictTranslation{NMF-(ODw)}{NMF}
-\NewDictTranslation{n-(ODw)}{n}
-\NewDictTranslation{N-(ODw)}{N}
-\NewDictTranslation{none!-(ODw)}{ing}
-\NewDictTranslation{None!-(ODw)}{Ing}
-\NewDictTranslation{none-(ODw)}{ingen}
-\NewDictTranslation{None-(ODw)}{Ingen}
-\NewDictTranslation{north-(ODw)}{norr}
-\NewDictTranslation{North-(ODw)}{Norr}
-\NewDictTranslation{no trump-(ODw)}{utan trumf}
-\NewDictTranslation{No Trump-(ODw)}{Utan Trumf}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{NT-(ODw)}{N\kern-0.07emT}
-\NewDictTranslation{nt-(ODw)}{nt}
-\NewDictTranslation{pass-(ODw)}{pass}
-\NewDictTranslation{Pass-(ODw)}{Pass}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{d}
-\NewDictTranslation{Q-(ODw)}{D}
-\NewDictTranslation{queen-(ODw)}{dame}
-\NewDictTranslation{Queen-(ODw)}{Dame}
-\NewDictTranslation{ReDbl-(ODw)}{ReDbl}
-\NewDictTranslation{redoubled-(ODw)}{redubbelt}
-\NewDictTranslation{Redoubled-(ODw)}{Redubbelt}
-\NewDictTranslation{redouble-(ODw)}{redubbelt}
-\NewDictTranslation{Redouble-(ODw)}{Redubbelt}
-\NewDictTranslation{semi forcing-(ODw)}{semi forcing}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi Forcing}
-\NewDictTranslation{sf-(ODw)}{sf}
-\NewDictTranslation{SF-(ODw)}{SF}
-\NewDictTranslation{s-(ODw)}{s}
-\NewDictTranslation{S-(ODw)}{S}
-\NewDictTranslation{south-(ODw)}{syd}
-\NewDictTranslation{South-(ODw)}{Syd}
-\NewDictTranslation{suiter-(ODw)}{farver}
-\NewDictTranslation{Suiter-(ODw)}{Farver}
-\NewDictTranslation{suit-(ODw)}{farve}
-\NewDictTranslation{Suit-(ODw)}{Farve}
-\NewDictTranslation{third suit forcing-(ODw)}{tredje farve forcing}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Tredje Farve Forcing}
-\NewDictTranslation{total points-(ODw)}{total points}
-\NewDictTranslation{Total Points-(ODw)}{Total Points}
-\NewDictTranslation{tp-(ODw)}{sp}
-\NewDictTranslation{TP-(ODw)}{SP}
-\NewDictTranslation{trial bid-(ODw)}{pröv bud}
-\NewDictTranslation{Trial bid-(ODw)}{Pröv bud}
-\NewDictTranslation{trick-(ODw)}{stik}
-\NewDictTranslation{Trick-(ODw)}{Stik}
-\NewDictTranslation{tsf-(ODw)}{3:e\,ff}
-\NewDictTranslation{TSF-(ODw)}{3:e\,FF}
-\NewDictTranslation{vulnerable-(ODw)}{zon}
-\NewDictTranslation{Vulnerable-(ODw)}{Zon}
-\NewDictTranslation{vul-(ODw)}{zon}
-\NewDictTranslation{Vul-(ODw)}{Zon}
-\NewDictTranslation{west-(ODw)}{väst}
-\NewDictTranslation{West-(ODw)}{Väst}
-\NewDictTranslation{w-(ODw)}{v}
-\NewDictTranslation{W-(ODw)}{V}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/ODw-turkish.trsl b/macros/latex/contrib/onedown/ODw-turkish.trsl
deleted file mode 100644
index 384fa6dfb1..0000000000
--- a/macros/latex/contrib/onedown/ODw-turkish.trsl
+++ /dev/null
@@ -1,160 +0,0 @@
-% this is file ODw-turkish.trsl from the OneDown bundle
-% thanks to Yilmaz Aksoy
-% Entries with a "!" denote an abreviated form
-%
-% retrieve with e.g. \GetTranslation{dealer-(ODw)} to get kâğıdı
-%
-\ProvideDictionaryFor{turkish}{ODw}[V0.51-2019/10/15]
-
-\NewDictTranslation{1st-(ODw)}{1.}
-\NewDictTranslation{2nd-(ODw)}{2.}
-\NewDictTranslation{3rd-(ODw)}{3.}
-\NewDictTranslation{4th-(ODw)}{4.}
-\NewDictTranslation{ace-(ODw)}{as}
-\NewDictTranslation{Ace-(ODw)}{As}
-\NewDictTranslation{all!-(ODw)}{herk}
-\NewDictTranslation{All!-(ODw)}{Herk}
-\NewDictTranslation{all-(ODw)}{herkes}
-\NewDictTranslation{All-(ODw)}{Herkes}
-\NewDictTranslation{all pass-(ODw)}{pas geçildi}
-\NewDictTranslation{All pass-(ODw)}{Pas geçildi}
-\NewDictTranslation{a-(ODw)}{a}
-\NewDictTranslation{A-(ODw)}{A}
-\NewDictTranslation{ap-(ODw)}{ap}
-\NewDictTranslation{AP-(ODw)}{AP}
-\NewDictTranslation{award-(ODw)}{puan}
-\NewDictTranslation{Award-(ODw)}{Puan}
-\NewDictTranslation{Bid-(ODw)}{Deklare}
-\NewDictTranslation{bid-(ODw)}{deklare}
-\NewDictTranslation{Board-(ODw)}{Oyun Tahtası}
-\NewDictTranslation{board-(ODw)}{oyun tahtası}
-\NewDictTranslation{Brd-(ODw)}{Oyun}
-\NewDictTranslation{brd-(ODw)}{oyun}
-\NewDictTranslation{by-(ODw)}{tarafından}
-\NewDictTranslation{Call-(ODw)}{İlan etme}
-\NewDictTranslation{call-(ODw)}{ilan etme}
-\NewDictTranslation{-card-(ODw)}{-card}
-\NewDictTranslation{contract-(ODw)}{kontrat}
-\NewDictTranslation{Contract-(ODw)}{Kontrat}
-\NewDictTranslation{contr-(ODw)}{kontr}
-\NewDictTranslation{Contr-(ODw)}{Kontr}
-\NewDictTranslation{Dbl-(ODw)}{Knt}
-\NewDictTranslation{dealer-(ODw)}{dağıtan}
-\NewDictTranslation{Dealer-(ODw)}{Dağıtan}
-\NewDictTranslation{Deal-(ODw)}{El}
-\NewDictTranslation{Deal!-(ODw)}{El}
-\NewDictTranslation{deal-(ODw)}{el}
-\NewDictTranslation{deal!-(ODw)}{el}
-\NewDictTranslation{declarer-(ODw)}{deklaran}
-\NewDictTranslation{Declarer-(ODw)}{Deklaran}
-\NewDictTranslation{decl-(ODw)}{dekl}
-\NewDictTranslation{Decl-(ODw)}{Dekl}
-\NewDictTranslation{distribution points-(ODw)}{dağılım puanı}
-\NewDictTranslation{Distribution Points-(ODw)}{Dağılım Puanı}
-\NewDictTranslation{doubled-(ODw)}{konturlu}
-\NewDictTranslation{Doubled-(ODw)}{Konturlu}
-\NewDictTranslation{double-(ODw)}{kontur}
-\NewDictTranslation{Double-(ODw)}{Kontur}
-\NewDictTranslation{dp-(ODw)}{dp}
-\NewDictTranslation{DP-(ODw)}{DP}
-\NewDictTranslation{east-(ODw)}{doğu}
-\NewDictTranslation{East-(ODw)}{Doğu}
-\NewDictTranslation{e-(ODw)}{d}
-\NewDictTranslation{E-(ODw)}{D}
-\NewDictTranslation{fourth suit forcing-(ODw)}{dördüncü renk forsingi}
-\NewDictTranslation{Fourth Suit Forcing-(ODw)}{Dördüncü Renk Forsingi}
-\NewDictTranslation{fsf-(ODw)}{4.\,rf}
-\NewDictTranslation{FSF-(ODw)}{4.\,RF}
-\NewDictTranslation{game forcing-(ODw)}{manş forsingi}
-\NewDictTranslation{Game Forcing-(ODw)}{Manş Forsingi}
-\NewDictTranslation{gf-(ODw)}{mf}
-\NewDictTranslation{GF-(ODw)}{MF}
-\NewDictTranslation{hand-(ODw)}{el}
-\NewDictTranslation{Hand-(ODw)}{El}
-\NewDictTranslation{hcp-(ODw)}{op}
-\NewDictTranslation{HCP-(ODw)}{OP}
-\NewDictTranslation{high card points-(ODw)}{onör puanı}
-\NewDictTranslation{High Card Points-(ODw)}{Onör Puanı}
-\NewDictTranslation{hlp-(ODw)}{oup}
-\NewDictTranslation{HLP-(ODw)}{OUP}
-\NewDictTranslation{jack-(ODw)}{vale}
-\NewDictTranslation{Jack-(ODw)}{Vale}
-\NewDictTranslation{j-(ODw)}{v}
-\NewDictTranslation{J-(ODw)}{V}
-\NewDictTranslation{king-(ODw)}{papaz}
-\NewDictTranslation{King-(ODw)}{Papaz}
-\NewDictTranslation{k-(ODw)}{p}
-\NewDictTranslation{K-(ODw)}{P}
-\NewDictTranslation{Lead!-(ODw)}{Atak}
-\NewDictTranslation{lead-(ODw)}{atak}
-\NewDictTranslation{Lead-(ODw)}{Atak}
-\NewDictTranslation{lead!-(ODw)}{atak}
-\NewDictTranslation{length points-(ODw)}{uzunluk puanları}
-\NewDictTranslation{Length Points-(ODw)}{Uunluk Puanları}
-\NewDictTranslation{lp-(ODw)}{up}
-\NewDictTranslation{LP-(ODw)}{UP}
-\NewDictTranslation{new minor forcing-(ODw)}{yeni minör forsingi}
-\NewDictTranslation{New Minor Forcing-(ODw)}{Yeni Minör Forsingi}
-\NewDictTranslation{nmf-(ODw)}{nmf}
-\NewDictTranslation{NMF-(ODw)}{NMF}
-\NewDictTranslation{n-(ODw)}{k}
-\NewDictTranslation{N-(ODw)}{K}
-\NewDictTranslation{none-(ODw)}{hiç}
-\NewDictTranslation{None-(ODw)}{Hiç}
-\NewDictTranslation{none!-(ODw)}{hiç}
-\NewDictTranslation{None!-(ODw)}{Hiç}
-\NewDictTranslation{north-(ODw)}{kuzey}
-\NewDictTranslation{North-(ODw)}{Kuzey}
-\NewDictTranslation{no trump-(ODw)}{sanzatu}
-\NewDictTranslation{No Trump-(ODw)}{Sanzatu}
-\NewDictTranslation{Nr-(ODw)}{\textnumero}
-\NewDictTranslation{Nr.-(ODw)}{\textnumero.}
-\NewDictTranslation{nt-(ODw)}{sa}
-\NewDictTranslation{NT-(ODw)}{S\kern-0.01emA}
-\NewDictTranslation{pass-(ODw)}{pas}
-\NewDictTranslation{Pass-(ODw)}{Pas}
-\NewDictTranslation{pass!-(ODw)}{p}
-\NewDictTranslation{Pass!-(ODw)}{P}
-\NewDictTranslation{q-(ODw)}{k}
-\NewDictTranslation{Q-(ODw)}{K}
-\NewDictTranslation{queen-(ODw)}{kız}
-\NewDictTranslation{Queen-(ODw)}{Kız}
-\NewDictTranslation{ReDbl-(ODw)}{SürKnt}
-\NewDictTranslation{Redoubled-(ODw)}{Sürkonturlu}
-\NewDictTranslation{redoubled-(ODw)}{sürkonturlu}
-\NewDictTranslation{redouble-(ODw)}{sürkontur}
-\NewDictTranslation{Redouble-(ODw)}{Sürkontur}
-\NewDictTranslation{semi forcing-(ODw)}{semi forsingi}
-\NewDictTranslation{Semi Forcing-(ODw)}{Semi Forsingi}
-\NewDictTranslation{sf-(ODw)}{sf}
-\NewDictTranslation{SF-(ODw)}{SF}
-\NewDictTranslation{s-(ODw)}{g}
-\NewDictTranslation{S-(ODw)}{G}
-\NewDictTranslation{south-(ODw)}{güney}
-\NewDictTranslation{South-(ODw)}{Güney}
-\NewDictTranslation{suiter-(ODw)}{renkli}
-\NewDictTranslation{Suiter-(ODw)}{Renkli}
-\NewDictTranslation{suit-(ODw)}{renk}
-\NewDictTranslation{Suit-(ODw)}{Renk}
-\NewDictTranslation{third suit forcing-(ODw)}{üçüncü renk forsingi}
-\NewDictTranslation{Third Suit Forcing-(ODw)}{Üçüncü Renk Forsingi}
-\NewDictTranslation{total points-(ODw)}{onör destek puanı}
-\NewDictTranslation{Total Points-(ODw)}{Onör Destek Puanı}
-\NewDictTranslation{tp-(ODw)}{odp}
-\NewDictTranslation{TP-(ODw)}{ODP}
-\NewDictTranslation{trial bid-(ODw)}{trial bid}
-\NewDictTranslation{Trial bid-(ODw)}{Trial bid}
-\NewDictTranslation{trick-(ODw)}{löve}
-\NewDictTranslation{Trick-(ODw)}{Löve}
-\NewDictTranslation{tsf-(ODw)}{3.\,sf}
-\NewDictTranslation{TSF-(ODw)}{3.\,SF}
-\NewDictTranslation{vulnerable-(ODw)}{zonda}
-\NewDictTranslation{Vulnerable-(ODw)}{Zonda}
-\NewDictTranslation{vul-(ODw)}{zon}
-\NewDictTranslation{Vul-(ODw)}{Zon}
-\NewDictTranslation{west-(ODw)}{batı}
-\NewDictTranslation{West-(ODw)}{Batı}
-\NewDictTranslation{w-(ODw)}{b}
-\NewDictTranslation{W-(ODw)}{B}
-%
-\endinput
diff --git a/macros/latex/contrib/onedown/README b/macros/latex/contrib/onedown/README
index e4e096028c..fdc16ef9f6 100644
--- a/macros/latex/contrib/onedown/README
+++ b/macros/latex/contrib/onedown/README
@@ -1,13 +1,13 @@
--------------------------------------------------------------------------
-The OneDown package v1.4 - 2019/10/15
+The OneDown package v1.6 - 2021/04/27
A package to typeset diagrams for the game of bridge
--------------------------------------------------------------------------
Jacob Wiersma
Web:
-E-Mail: jack@schuli-wirsi.de
+E-Mail: jack46@schuli-wirsi.de
--------------------------------------------------------------------------
-Copyright 2018 Jacob Wiersma
+Copyright 2018-21 Jacob Wiersma
This work has the LPPL maintenance status `maintained'.
@@ -30,19 +30,18 @@ the files
onedown.dtx, onedown.ins,
onedown.sty, onedown.pdf
- - ODw-danish.trsl ODw-english.trsl ODw-french.trsl
- ODw-norwegian.trsl ODw-turkish.trsl ODw-dutch.trsl
- ODw-fallback.trsl ODw-german.trsl ODw-swedish.trsl
- ODw-spanish.trsl
+ - ODw-Danish.dict, ODw-Dutch.dict, ODw-English.dict,
+ ODw-French.dict, ODw-German.dict ODw-Norsk.dict,
+ ODw-Spanish.dict, ODw-Swedish.dict, ODw-Turkish.dict
the directory examples with the files
- - onedown-examples.pdf onedown-ref.pdf
+ - onedown-examples.pdf, onedown-ref.pdf
and 21 *.tex files
--------------------------------------------------------------------------
INSTALLATION
If onedown.sty is missing or you got a newer onedown.dtx/onedown.ins:
1) Run LaTeX on onedown.ins to create a new onedown.sty
-2) Copy onedown.sty and the .trsl files in your latex path
+2) Copy onedown.sty and the .dict files in your latex path
--------------------------------------------------------------------------
DOCUMENTATION
@@ -66,8 +65,8 @@ that are written in a separate file. Without this option this list will not
be generated. Use this option at your own risk.
MORE DOCUMENTATION
-- examples/onedown-examples.pdf
-- examples/onedown-ref.pdf
+- Examples/onedown-examples.pdf
+- Examples/onedown-ref.pdf
These are in english. To get PDFs which shows the (output of) onedown commands
in your language run
pdflatex '\AtBeginDocument{\def\RefLang{french}}\input{onedown-ref.tex}'
diff --git a/macros/latex/contrib/onedown/examples/CardSymbols.tex b/macros/latex/contrib/onedown/examples/CardSymbols.tex
new file mode 100644
index 0000000000..5ecca8a55d
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/CardSymbols.tex
@@ -0,0 +1,44 @@
+\documentclass[onedown-examples]{subfiles}
+
+\begin{document}
+\noindent
+\begin{tcolorbox}[colback=red!5!white,colframe=red!75!black,
+ title={Use card symbols like {\setdefaults{colors=b+w}♣,♢,♡,♠} directly as input}]
+%\begin{HBox}{Use card symbols like {\setdefaults{colors=b+w}♣,♢,♡,♠} directly as input}
+If you want to use the card symbols {\setdefaults{colors=b+w}♣,♢,♡,♠} within your \LaTeX-document,
+then put these lines in your preamble. That's all.
+\\[0.3em]
+\verb|\DeclareUnicodeCharacter{2660}{\Sp}|
+\verb|\DeclareUnicodeCharacter{2661}{\He}| \\
+\verb|\DeclareUnicodeCharacter{2662}{\Di}|
+\verb|\DeclareUnicodeCharacter{2663}{\Cl}| \\
+\verb|\DeclareUnicodeCharacter{2664}{\Sp}|
+\verb|\DeclareUnicodeCharacter{2665}{\He}| \\
+\verb|\DeclareUnicodeCharacter{2666}{\Di}|
+\verb|\DeclareUnicodeCharacter{2667}{\Cl}| \\[0.3em]
+
+%\vspace{0.3em}
+%\\[0.3em]
+If you put them in a file \textbf{\emph{onedown.symbols}}, somewhere where
+\LaTeX{} can find it, then the \OneDown package will take care of loading it. An
+apropriate place would be in your .texmf directory.
+\end{tcolorbox}
+%\end{HBox}
+\begin{tcolorbox}[colback=red!5!white,colframe=red!75!black,
+ title={To enter these card symbols on your keyboard, use this with Linux}]
+Add following lines to your \emph{.Xmodmap} and run \textbf{xmodmap .Xmodmap}
+\\[0.3em]
+{\ttfamily
+keycode 38 = 0x0061 0x0041 0x0061 0x0041 0x1002663 0x1002667 0x00e6 \\
+keycode 39 = 0x0073 0x0053 0x0073 0x0053 0x1002662 0x1002666 0x100017f \\
+keycode 40 = 0x0064 0x0044 0x0064 0x0044 0x1002661 0x1002665 0x00f0 \\
+keycode 41 = 0x0066 0x0046 0x0066 0x0046 0x1002660 0x1002664 0x01f0 \\
+keycode 65 = space nobreakspace space nobreakspace nobreakspace NoSymbol \\
+}
+\tcblower
+Now you can enter {\setdefaults{colors=b+w}♣,♢,♡,♠} with \emph{Shift+AltGr} a,s,d,f
+\end{tcolorbox}
+
+
+\end{document}
+\endinput
diff --git a/macros/latex/contrib/onedown/examples/Compass.pdf b/macros/latex/contrib/onedown/examples/Compass.pdf
new file mode 100644
index 0000000000..c9d613f276
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Compass.pdf
Binary files differ
diff --git a/macros/latex/contrib/onedown/examples/Compass.tex b/macros/latex/contrib/onedown/examples/Compass.tex
index 7cd46ecc79..cbb19739b5 100644
--- a/macros/latex/contrib/onedown/examples/Compass.tex
+++ b/macros/latex/contrib/onedown/examples/Compass.tex
@@ -2,8 +2,6 @@
%\usepackage{forloop}
\gamefont{\larger\larger}
-\newcounter{Nr}
-\newcounter{Tmp}
\makeatletter
\def\CP{\ODw@Compass}
\makeatother
@@ -12,11 +10,16 @@
\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.
+red. The command |\CP| is to be defined in every V- or HBox.
\par\vspace{1em}\noindent
%
\begin{VBox}{The 16 combinations of dealer/vulner\hfill File: \FileName}
+\newcounter{Nr}
+\newcounter{Tmp}
+\makeatletter
+ \def\CP{\ODw@Compass}
+\makeatother
\centering
\setdefaults{compsize=1.3,compmid=\boardtext}
\begin{tabular}{ll|ll}
@@ -40,10 +43,13 @@ 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
+we set the size factor back to 1. Notice the difference with the first
compass.
\vfill
\begin{HBox}{controlling the compass I\hfill File: \FileName}
+\makeatletter
+ \def\CP{\ODw@Compass}
+\makeatother
\CP
\setdefaults{compsize=1.5}\CP
\setdefaults*{compass=\Large}\CP
@@ -54,6 +60,9 @@ 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}
+\makeatletter
+ \def\CP{\ODw@Compass}
+\makeatother
\setdefaults{compsize=1.5}\CP
\setdefaults{compline=3}\CP
\setdefaults{compline=0.1}\CP
@@ -71,6 +80,9 @@ 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}
+\makeatletter
+ \def\CP{\ODw@Compass}
+\makeatother
\boardnr{0}
\setdefaults{compsize=1,compmid=x}\CP
\setdefaults{compsize=1.5}\CP
diff --git a/macros/latex/contrib/onedown/examples/Fontsizes.pdf b/macros/latex/contrib/onedown/examples/Fontsizes.pdf
new file mode 100644
index 0000000000..d2accbc38c
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Fontsizes.pdf
Binary files differ
diff --git a/macros/latex/contrib/onedown/examples/Fontsizes.tex b/macros/latex/contrib/onedown/examples/Fontsizes.tex
new file mode 100644
index 0000000000..24f4fd4ced
--- /dev/null
+++ b/macros/latex/contrib/onedown/examples/Fontsizes.tex
@@ -0,0 +1,33 @@
+%\documentclass[onedown-examples]{subfiles}
+\documentclass[10pt]{report}
+%
+\usepackage{libertine}
+\usepackage{onedown}
+
+%
+\makeatletter
+\newcommand{\mysize}[1]{%
+ \bgroup\noindent\csname#1\endcsname The #1 size is: \textbf{\csname#1\endcsname\f@size\,pt}.\\The baselineskip is \the\baselineskip\par\vskip2mm\egroup}
+\makeatother
+
+\begin{document}
+\noindent
+Here we show the different fontsizes with values and output. \\
+For the size commands \emph{ssmall} and \emph{HUGE} refer to package \textsf{moresizes}.
+\\[1em]
+%%%%%
+\mysize{tiny}
+\mysize{ssmall}
+\mysize{scriptsize}
+\mysize{footnotesize}
+\mysize{small}
+\mysize{normalsize}
+\mysize{large}
+\mysize{Large}
+\mysize{LARGE}
+\mysize{huge}
+\mysize{Huge}
+\mysize{HUGE}
+%%%%%
+\end{document}
+\endinput
diff --git a/macros/latex/contrib/onedown/examples/Languages.tex b/macros/latex/contrib/onedown/examples/Languages.tex
index 568f8d0c2a..0e5d0e6702 100644
--- a/macros/latex/contrib/onedown/examples/Languages.tex
+++ b/macros/latex/contrib/onedown/examples/Languages.tex
@@ -29,7 +29,7 @@ Refer to the \OneDown manual for details.
\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{}}
+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
diff --git a/macros/latex/contrib/onedown/examples/onedown-examples.pdf b/macros/latex/contrib/onedown/examples/onedown-examples.pdf
index 60c32c6677..1aab50b8d1 100644
--- a/macros/latex/contrib/onedown/examples/onedown-examples.pdf
+++ 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
index 1e5f5b57ad..12a00a6e24 100644
--- a/macros/latex/contrib/onedown/examples/onedown-examples.tex
+++ b/macros/latex/contrib/onedown/examples/onedown-examples.tex
@@ -9,28 +9,29 @@
%%-------------------------------------------------------
+\PassOptionsToPackage{shorthands=off}{babel}
+\documentclass[a4paper,fontsize=11pt,%
+ danish,%
+ dutch,%
+ french,%
+ german,%
+ norsk,%
+ spanish,%
+ swedish,%
+ turkish,%
+ english,% this is the default language
+]{scrartcl}
-\documentclass[a4paper,fontsize=11pt]{scrartcl}
\usepackage{scrlayer-scrpage}
%
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%
\usepackage{subfiles}% can compile stand-alone/combined
-\usepackage[%
- danish,%
- dutch,%
- french,%
- german,%
- norsk,%
- spanish,es-noshorthands,% unset active chars to avoid problems with '.' '’' '"' '~' '<' and '>'
- swedish,%
- turkish,shorthands=,% unset active chars to avoid problems with ':', '=' and '!'
- english,%
-]{babel}% introduce all known languages, default is english
+\usepackage{babel}%
%\usepackage[mono=false]{libertine}% verbatim needs option mono=false
-% linertine screws verbatim, at least I don't know how to handle that
+% libertine 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
@@ -115,10 +116,10 @@
\def\ExLang{english}
\begin{document}
% when compiled with:
-% pdflatex '\AtBeginDocument{\def\RefLang{YourLanguage}}\input{onedown-ref.tex}'
+% pdflatex '\AtBeginDocument{\def\ExLang{YourLanguage}}\input{onedown-ref.tex}'
% you'll get the onedown commands expansions in YourLanguage
% YourLanguage can be any language out of:
-% english, danish, dutch, french, german, norsk, spanish, swedish, turkish
+% danish, dutch, english, french, german, norsk, spanish, swedish, turkish
%
\expandafter\selectlanguage\expandafter{\ExLang}
\pdfbookmark[1]{Title}{Title}
@@ -128,8 +129,8 @@ 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)}
+\author{J.\,Wiersma\footnote{email: \textsf{jack@schuli-wirsi.de}}}
+\date{29 January 2020 (v0.5)}
\maketitle
\section*{Introduction}
@@ -152,12 +153,12 @@ 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.
-The explanatory text is always in the English language. But you can show the output of all commands
-in any of the supported languages.\\
-These are: english, danish, dutch, french, german, norsk, spanish, swedish, turkish. \\
+The explanatory text is always in the English language. But you can show the
+output of all commands in any of the supported languages.\\
+These are: danish, dutch, english, french, german, norsk, spanish, swedish, turkish. \\
You obtain this output in \emph{YourLanguage} by compiling onedown-ref.tex with: \\[0.2em]
-\verb|pdflatex '\AtBeginDocument{\def\RefLang{YourLanguage}}\input{onedown-examples.tex}'|
+\verb|pdflatex '\AtBeginDocument{\def\ExLang{YourLanguage}}\input{onedown-examples.tex}'|
\par\vspace{1\baselineskip}
\setlength\columnseprule{.8pt}% rule between cols
\begin{multicols}{3}[{\centering \textbf{\Large List of Examples}}]
@@ -189,5 +190,6 @@ You obtain this output in \emph{YourLanguage} by compiling onedown-ref.tex with:
\SubFile{ExpertQuiz}
\SubFile{Languages}
\SubFile{Compass}
+\SubFile{CardSymbols}
\end{document}
diff --git a/macros/latex/contrib/onedown/examples/onedown-ref.pdf b/macros/latex/contrib/onedown/examples/onedown-ref.pdf
index 8b6f3b9018..92ec145e0a 100644
--- a/macros/latex/contrib/onedown/examples/onedown-ref.pdf
+++ 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
index 6d16724130..95d6918172 100644
--- a/macros/latex/contrib/onedown/examples/onedown-ref.tex
+++ b/macros/latex/contrib/onedown/examples/onedown-ref.tex
@@ -8,24 +8,24 @@
%% USAGE: (pdf)latex onedown-ref.tex
%%-------------------------------------------------------
-\documentclass[a4paper,fontsize=11pt]{scrartcl}
-\usepackage{scrlayer-scrpage}
-%
-\usepackage[utf8]{inputenc}
-\usepackage[T1]{fontenc}
-%
-\usepackage[%
+\PassOptionsToPackage{shorthands=off}{babel}
+\documentclass[a4paper,fontsize=11pt,%
danish,%
dutch,%
french,%
german,%
norsk,%
- spanish,es-noshorthands,% unset active chars to avoid problems with '.' '’' '"' '~' '<' and '>'
+ spanish,%
swedish,%
- turkish,shorthands=,% unset active chars to avoid problems with ':', '=' and '!'
- english,%
-]{babel}% introduce all known languages, default is english
-
+ turkish,%
+ english,% this is the default language
+]{scrartcl}
+\usepackage{scrlayer-scrpage}
+%
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+%
+\usepackage{babel}%
\usepackage{onedown}% our own style to set bridge stuff
\usepackage[a4paper, total={185mm, 257mm},left=12mm,top=20mm]{geometry}
\newcommand\OneDown{\textcolor{red}{\smaller\bfseries\textsc{OneDown}}\xspace}
@@ -66,6 +66,7 @@
% english, danish, dutch, french, german, norsk, spanish, swedish, turkish
%
\expandafter\selectlanguage\expandafter{\RefLang}
+%
\larger
\newgeometry{total={150mm, 265mm},left=25mm,top=15mm}
\pagestyle{empty}
@@ -88,7 +89,7 @@ You obtain this output in \emph{YourLanguage} by compiling onedown-ref.tex with:
%
\verb|pdflatex '\AtBeginDocument{\def\RefLang{YourLanguage}}\input{onedown-ref.tex}'|
\\[0.7em]
-\centerline{\textbf{This document shows the commands for the \emph{\RefLang}\ language}}
+\centerline{\textbf{This document shows the commands for the \emph{\languagename}\ language}}
\begin{description}[itemsep=-0.3em]
\item[ace]: \ace
\item[Ace\Oarg{*!}]: \Ace, \Ace*, \Ace!, \Ace*!
diff --git a/macros/latex/contrib/onedown/onedown.dtx b/macros/latex/contrib/onedown/onedown.dtx
index 89f6d5034b..92ffa66155 100644
--- a/macros/latex/contrib/onedown/onedown.dtx
+++ b/macros/latex/contrib/onedown/onedown.dtx
@@ -24,20 +24,23 @@
\ProvidesFile{onedown.dtx}
%</driver>
%<package>\NeedsTeXFormat{LaTeX2e}[2014/05/01]
-%<package>\def\ODwstyleversion{1.4}\def\ODwstyledate{2019/10/15}
+%<package>\def\ODwstyleversion{1.6}\def\ODwstyledate{2021/04/27}
%<package>\ProvidesPackage{onedown}
%<package> [\ODwstyledate\space v\ODwstyleversion\space
-%<package> Typeset Bridge Diagrams - Jacob Wiersma (C) 2016-2019]
+%<package> Typeset Bridge Diagrams - Jacob Wiersma (C) 2016-2021]
%
%<*driver>
-%\documentclass[a4paper,12pt,draft]{ltxdoc}% with draft no hyperrefs
-\documentclass[a4paper,12pt]{ltxdoc}
+\PassOptionsToPackage{shorthands=off}{babel}
+%
+% with draft no hyperrefs
+\documentclass[a4paper,12pt,%
+german,dutch,french,swedish,english]{ltxdoc}
% the package |shortvrb| is auto-loaded, providing |...| as shorthand
\usepackage[utf8]{inputenc}
%
\usepackage[T1]{fontenc}
-\usepackage[german,dutch,french,swedish,english,shorthands=]{babel}
-\usepackage{onedown}[2019/10/15]
+\usepackage{babel}
+\usepackage{onedown}[2021/04/27]
\usepackage[normalem]{ulem}% for strikeout todos that are done
\usepackage{needspace}% keep contiguous lines on one page
\usepackage[inline]{enumitem}% Control various parameters of lists
@@ -185,7 +188,7 @@
\let\xspaceODwold=\xspace%
\def\xspace{}%
\foreignlanguage{#3}{%
- \IfBooleanTF#1{\GetTranslation{#2-(ODw)}}{#2}%
+ \IfBooleanTF#1{\translate{#2-(ODw)}}{#2}%
}%
\let\xspace=\xspaceODwold%
}% Translate
@@ -209,7 +212,7 @@
%</driver>
% \fi
%
-% \CheckSum{3771}
+% \CheckSum{3810}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -384,6 +387,18 @@
% I renamed \emph{symbols} into \textbf{ODw@symbols} and \emph{symbolsC} into \textbf{ODw@symbolsC}
% to solve this.
% }
+% \changes{v1.5}{2020/02/02}{\\
+% - Added a check if the etoolbox package is recent enough.\\
+% - Added code to load onedown.symbols (card symbols) and explained in onedown-examples
+% (CardSymbols) how to use it.
+% }
+% \changes{v1.6}{2021/04/25}{\\
+% - Switched to \packname{translator} due to incompatibilities with
+% \packname{translations}\\
+% - We now use \cmd{\translate} rather than \cmd{\GetTranslation}\\
+% - Translation files are named like: ODw-German.dict\\
+% - Adapted the code to read them on the fly
+% }
% ^^A Note: ^^21 denotes the exclamation mark (!)
% ^^A Note: Char ' is not allowed within changes
%
@@ -404,7 +419,7 @@
% \hangafter,\hangindent,\hbadness,\hbox,\heartsuit,\hfill,\ExplSyntaxOn,
% \hline,\hsize,\hskip,\hspace,\hss,\ht,\HUGE,\if,\IfBooleanTF,\moveto,
% \ifthenelse,\ifx,\itemsep,\kern,\labelsep,\labelwidth,\large,
-% \leftmargin,\leftskip,\lengthtest,\LoadDictionaryFor,\lower,
+% \leftmargin,\leftskip,\lengthtest,\uselanguage,\lower,
% \mathbf,\medskip,\multicolumn,\NeedsTeXFormat,\newboolean,\numexpr,
% \newcounter,\newdimen,\NewDocumentCommand,\strokepath,\closepath,
% \NewDocumentEnvironment,\newlength,\noindent,\p@,\par,\whiledo,
@@ -425,7 +440,7 @@
% \DeclareSymbolFont,\footnotemark,\footnotesize,\footnotetext,\isodd,
% \mathalpha,\pgfkeys,\pgfqkeys,\ProcessPgfOptions,\scriptsize,
% \shortstack,\superscript,\textcolor,\thinspace,\tiny,\underline,\value}
-% \DoNotIndex{\GetTranslation,\ifpdf,\iflanguage,\iffalse,\AfterPackage,
+% \DoNotIndex{\translate,\translation,\ifpdf,\iflanguage,\iffalse,\AfterPackage,
% \ifbool,\setbool,\newbool,\StrSubstitute,\StrCount,\StrDel,\ifcase,
% \ifboolexpr,\ifnumcomp,\or,\overline,\mbox,\@ODw}
% \setcounter{IndexColumns}{2}
@@ -461,7 +476,7 @@
% ^^A The frustrating ltxdoc also obfuscates this simple thing!
% \thispagestyle{empty}
% }
-% \author{Jacob Wiersma \\ \url{jack@schuli-wirsi.de}}
+% \author{Jacob Wiersma \\ \url{jack46@schuli-wirsi.de}}
% \date{v\ODwstyleversion~from \ODwstyledate}
%
% \maketitle
@@ -570,7 +585,7 @@ pdflatex --shell-escape onedown.dtx
% \fi
% Use:\\
% |pdflatex --shell-escape '\AtBeginDocument{\NoColortrue}\input{onedown.dtx}'|
-% as last run to get a pdf for printing on a monochrome printer.
+% as last run to get a |PDF| for printing on a monochrome printer.
% The |--shell-escape| flag is necesary to generate the list of user
% commands. If you think this is too dangerous, then run pdflatex without
% this flag and you will get the docmentation without the list of user
@@ -612,7 +627,7 @@ pdflatex --shell-escape onedown.dtx
% friendly package with detailed documentation. For example you don't need
% to say |\setlength{\handskip}{5mm}| or |\def\handskip{5mm}| but rather
% call the command |\handskip{1em}|. Not only the call is somewhat
-% friendlier, more important, setting the width in terms of the
+% friendlier, but more important, by setting the width in terms of the
% font used, it will automatically adapt its size accordingly to font and
% font-size changes. \OneDown features:
% \begin{itemize}
@@ -629,7 +644,7 @@ pdflatex --shell-escape onedown.dtx
% card diagrams with the hands of the \north, \east, etc.\ player can
% be defined in several ways. One can select which hands are to be shown.
% Bidding diagrams can be shown stand-alone or in connection with one or
-% more hands. In |bidding| diagrams annotations are possible.
+% more hands. One can add annotations to any bid in a bidding diagrams.
%
% \section{Usage}
%
@@ -638,7 +653,7 @@ pdflatex --shell-escape onedown.dtx
% \subsubsection{Requirements}
%
% The package \OneDown depends on several other packages, such as
-% \packname{ifthen}, \packname{translations} or \packname{xspace}. All
+% \packname{ifthen}, \packname{translator} or \packname{xspace}. All
% these packages get loaded automatically if not already used in your
% document. For a complete overview of all required packages, refer to page
% \pageref{RequirePackage}. All the packages are loaded without any option,
@@ -648,12 +663,15 @@ pdflatex --shell-escape onedown.dtx
% Furthermore, for the several languages that \OneDown supports, there are
% the dictionary files with translations of the specific bridge terms.
% These dictionaries follow the naming convention:
-% \texttt{ODw-\meta{language}.trsl} and are included in the bundle. The
-% name of the \meta{language} is generally the same as the name that you
-% use as option for \packname{babel}. There is one exception: the
+% |ODw-<Language>.dict| and are included in the bundle. The
+% name of the |<Language>| is generally the same as the name that you
+% use as option for \packname{babel}, but starting with a capital.
+% \iffalse
+% There is one exception: the
% Norwegian language uses |norsk| for \packname{babel} and |norwegian| for
-% \packname{translations}. But all the same, the |norwegian| dictionary is
+% \packname{translator}. But all the same, the |norwegian| dictionary is
% automatically loaded when |norsk| is used.
+% \fi
%
% Should you make a dictionary for a language that is not provided yet, or
% have corrections for an existing one, please send it to the maintainer,
@@ -665,13 +683,13 @@ pdflatex --shell-escape onedown.dtx
% your document if you want to load \OneDown with its default settings.
%
% \textbf{Warning:} \OneDown loads all necessary |ODw|-dictionaries
-% automatically at the begin of the document. In order to know which
+% automatically. In order to know which
% languages must be loaded, these must be specified \emph{before} package
% \packname{onedown} is loaded. In general this means that if you use
% \packname{babel} (or \packname{polyglossia}) you must
% load it before package \OneDown. If for some reason you cannot
% or do not want to do that, you can load any |ODw|-dictionary if you put
-% the command: |\LoadDictionaryFor{|\marg{language}|}{ODw}| in your
+% the command: |\uselanguage{<ODw-Language>}| in your
% preamble, provided that the dictionary is in the \TeX-path. For a
% discussion about the caveats of using e.g.\ babel, refer to section%
% \ref{Languages}.
@@ -679,15 +697,15 @@ pdflatex --shell-escape onedown.dtx
% \subsubsection{Options}\label{Options}
%
% To change the behaviour of \OneDown one can load the package with certain
-% options: |\usepackage[|\meta{options}|]{onedown}|. Of course this 'option
+% options: |\usepackage[<options>]{onedown}|. Of course this 'option
% loading' takes place in the preamble. But it is also possible to set (or
% change) options within the document by calling the macro |\setdefaults|.
-% This macro uses the same \meta{key}=\meta{val} syntax as is used for the
+% This macro uses the same |key=val| syntax as is used for the
% options and offers some more keys that cannot be used when loading the
% package. Refer to page~\pageref{Defaults} for details.
%
% As said before, the package loads its options using the
-% \meta{key}=\meta{val} syntax. These options deal with:
+% |key=val| syntax. These options deal with:
% \begin{itemize}
% \item[colors] \verb:colors=0|1|2|3|4A|4B:\\
% The color in which the card symbols will
@@ -733,16 +751,21 @@ pdflatex --shell-escape onedown.dtx
% option.
% \end{itemize}
%
-% \subsubsection{Active Characters: a Warning}\label{Languages}
+% \subsubsection{Languages \& Dictionaries}\label{Languages}
%
-% \OneDown uses the \packname{tranlation} package to automatically
+% \OneDown uses the \packname{tranlator} package to automatically
% translate often appearing brigde terms like e.g.\ \emph{declarer}. It does
% so by looking up these terms in the special |ODw|-dictionary for the
% active language. The current \OneDown version supports English, German,
-% Dutch, French, most Scadinavian languages and Turkish. Some dictionaries
-% may not be complete or may contain errors, please send
+% Dutch, French, Spanish, most Scandinavian languages and Turkish. Some
+% dictionaries may not be complete or may contain errors, please send
% corrections/additions to the maintainer.
%
+% In order to make \packname{translator} do its job (automatically select the
+% right translation when the current language switches to another), it is
+% necessary to specify the languages with the |documentclass|, and not with
+% |babel|!
+%
% \needspace{5\baselineskip}
%
% \paragraph*{\textcolor{red}{\centering Warning for people using active
@@ -773,7 +796,27 @@ pdflatex --shell-escape onedown.dtx
% So babel-Turkish makes the equal sign and exlamation mark active. This
% leads to errors when you call e.g.\ |\setdefaults{warn=on}| or |\hand!|.
% If you do not need any character to be active, then load this language
-% with |\usepackage[turkish,shorthands=]{babel}|. If you do need the
+% with |\usepackage[turkish,shorthands=]{babel}|.
+%
+% You can also put |\PassOptionsToPackage{shorthands=off}{babel}|
+% above your |documentclass| line. Here is a complete example:
+% % \iffalse
+%<*verb>
+% \fi
+\begin{verbnobox}[\small]
+\PassOptionsToPackage{shorthands=off}{babel}
+\documentclass[a4paper,fontsize=11pt,%
+ dutch,%
+ german,%
+ english,% this is the default language
+]{scrartcl}
+\usepackage{babel}
+\end{verbnobox}
+% \iffalse
+%</verb>
+% \fi
+%
+% If you do need the
% shorthand then you must disable it every time you have to use e.g.\ the
% |=|~character as a normal character by:
%
@@ -802,6 +845,7 @@ pdflatex --shell-escape onedown.dtx
% page layout of this document too much, we scaled them down to
% |footnotesize|.
% \gamefont{\bfseries\sffamily\footnotesize}
+%
% Sometimes the output of a command is shown as an example. This output is
% framed in this document like \example{this}, just to recognize it easily
% as an output example. In an accompanying
@@ -941,7 +985,7 @@ pdflatex --shell-escape onedown.dtx
%
% \subsubsection{The hands of the players}
% Before a card diagram can be shown, one must specify the cards that
-% each player holds. With the various \meta{player}|hand|-commands one can
+% each player holds. With the various |<player>hand|-commands one can
% do this. The suits they define are only shown when a |show|-command is
% issued after they have been defined. The |show|-commands are discussed on
% page \pageref{ShowCommands}.
@@ -1014,7 +1058,7 @@ pdflatex --shell-escape onedown.dtx
% \example{\onesuitAll{AQ6}{J3}{T54}{K2}}.
% \par\noindent
% Please note the order of the
-% players in the arguments: the first 2 denote the \north and \south hand.
+% players in the arguments: the first two denote the \north and \south hand.
% The last 2 denote the \east and \west hand. We choose it this way so you
% can easily cut and paste one pair from the |\onesuitAll|, or extend
% |\onesuitNS| to showing all hands.
@@ -1223,7 +1267,7 @@ pdflatex --shell-escape onedown.dtx
% code for an abbreviated form, i.e.\ |\Lead[*!]|, because it produces only
% the variants \Lead and \Lead*. But remember that we also support automatic
% translations into other languages and that in another language an
-% abreviationt might be feasible: With the german language active |\Lead*|
+% abreviation might be feasible: With the german language active |\Lead*|
% and |\Lead*!| produce \foreignlanguage{german}{\example{\Lead*}} and
% \foreignlanguage{german}{\example{\Lead*!}} respectively.
@@ -1733,19 +1777,21 @@ pdflatex --shell-escape onedown.dtx
%
% \label{RequirePackage}
% \begin{macrocode}
+% Warn if a too old expl3 package is used.
+\RequirePackage{expl3}[2019/09/21]% needed for LaTeX3 packages (xparse)
\RequirePackage{%
xcolor,% colorizing symbols \Sp etc.
textcomp,% for the numbersign in environment play.
moresize,% add \HUGE and \ssmall to font-sizes
relsize,% relative font-sizes. (e.g. \smaller)
makecmds,% needed for provideenvironment
- expl3,% needed for LaTeX3 packages (xparse)
+% expl3,% needed for LaTeX3 packages (xparse)
xparse,% optional params and starred commands
xspace,% handling of spacing behind a command
calc,% makes calculations and lengths easier
ifthen,% easy booleans, tests and loops
adjustbox,% stacked boxes in L-/R-Lower captions
- translations,% auto-translate terms (e.g. East->Ost)
+ translator,% auto-translate terms (e.g. East->Ost)
array,% actions for tabular column cells
collcell,% macro calls for tabular column cells
pgfopts,% for keyval opts, loads also pgfkeys
@@ -1759,21 +1805,14 @@ pdflatex --shell-escape onedown.dtx
% Add exceptions for xspace
% \begin{macrocode}
\xspaceaddexceptions{%
- = \markit \, \suit \GetTranslation
+ = \markit \, \suit \translate
2 3 4 5 6 7 8 9 T J Q K A
}
% \end{macrocode}
-% Load the fallback dictionary. This is the default one and equals the
-% English dictionary. All other dictionaries are loaded on the fly, when
-% needed, provided they are in the \TeX-path.
-%
-% \begin{macrocode}
-\LoadDictionaryFor{fallback}{ODw}
-% \end{macrocode}
%
% \subsubsection{Options}
%
-% We use the \packname{pgf} \meta{key}=\meta{val} system for our
+% We use the \packname{pgf} |<key>=<val>| system for our
% options: |colors|, |warn| and |err|.
% \begin{macrocode}
\pgfkeys{/ODw/.is family}
@@ -2197,7 +2236,7 @@ pdflatex --shell-escape onedown.dtx
% \NT) that are used in the game of bridge.
% We define the international version with the English shortcuts. We use
% the |xcolor| package to colorize the suit symbols. The color can be set
-% as an \meta{key}=\meta{val} option when loading the package. The option
+% as an |<key>=<val>| option when loading the package. The option
% |colors=0| means mono-color (black only), synonyms of key 0 are |mono|
% and |black|. |colors=1| means black and white, a synonym is |b+w|.
% |colors=2| means bi-color (black and red), with synonym |b+r|.
@@ -2326,12 +2365,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF#1{%
\IfBooleanTF#2
- {\,[0.3]\GetTranslation{NT-(ODw)}}%
- {\GetTranslation{No Trump-(ODw)}}%
+ {\,[0.3]\translate{NT-(ODw)}}%
+ {\translate{No Trump-(ODw)}}%
}{%
\IfBooleanTF#2
- {\,[0.3]\GetTranslation{nt-(ODw)}}%
- {\GetTranslation{no trump-(ODw)}}%
+ {\,[0.3]\translate{nt-(ODw)}}%
+ {\translate{no trump-(ODw)}}%
}%
\egroup%
\xspace%
@@ -2745,20 +2784,20 @@ pdflatex --shell-escape onedown.dtx
% \begin{macro}{\ODw@W}
% \begin{macrocode}
\def\ODw@N{%
- \@ifstar{\GetTranslation{N-(ODw)}}%
- {\GetTranslation{n-(ODw)}}%
+ \@ifstar{\translate{N-(ODw)}}%
+ {\translate{n-(ODw)}}%
}
\def\ODw@E{%
- \@ifstar{\GetTranslation{E-(ODw)}}%
- {\GetTranslation{e-(ODw)}}%
+ \@ifstar{\translate{E-(ODw)}}%
+ {\translate{e-(ODw)}}%
}
\def\ODw@S{%
- \@ifstar{\GetTranslation{S-(ODw)}}%
- {\GetTranslation{s-(ODw)}}%
+ \@ifstar{\translate{S-(ODw)}}%
+ {\translate{s-(ODw)}}%
}
\def\ODw@W{%
- \@ifstar{\GetTranslation{W-(ODw)}}%
- {\GetTranslation{w-(ODw)}}%
+ \@ifstar{\translate{W-(ODw)}}%
+ {\translate{w-(ODw)}}%
}
% \end{macrocode}
% \end{macro}
@@ -2783,20 +2822,20 @@ pdflatex --shell-escape onedown.dtx
% \begin{macro}{\ODw@West}
% \begin{macrocode}
\def\ODw@North{%
- \@ifstar{\GetTranslation{North-(ODw)}}%
- {\GetTranslation{north-(ODw)}}%
+ \@ifstar{\translate{North-(ODw)}}%
+ {\translate{north-(ODw)}}%
}
\def\ODw@East{%
- \@ifstar{\GetTranslation{East-(ODw)}}%
- {\GetTranslation{east-(ODw)}}%
+ \@ifstar{\translate{East-(ODw)}}%
+ {\translate{east-(ODw)}}%
}
\def\ODw@South{%
- \@ifstar{\GetTranslation{South-(ODw)}}%
- {\GetTranslation{south-(ODw)}}%
+ \@ifstar{\translate{South-(ODw)}}%
+ {\translate{south-(ODw)}}%
}
\def\ODw@West{%
- \@ifstar{\GetTranslation{West-(ODw)}}%
- {\GetTranslation{west-(ODw)}}%
+ \@ifstar{\translate{West-(ODw)}}%
+ {\translate{west-(ODw)}}%
}
% \end{macrocode}
% \end{macro}
@@ -2815,12 +2854,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{Pass!-(ODw)}}%
- {\GetTranslation{Pass-(ODw)}}%
+ {\translate{Pass!-(ODw)}}%
+ {\translate{Pass-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{pass!-(ODw)}}%
- {\GetTranslation{pass-(ODw)}}%
+ {\translate{pass!-(ODw)}}%
+ {\translate{pass-(ODw)}}%
}% TF#1
\egroup%
\xspace%
@@ -2839,12 +2878,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF#1{%
\IfBooleanTF{#2}%
- {\GetTranslation{AP-(ODw)}}%
- {\GetTranslation{All pass-(ODw)}}%
+ {\translate{AP-(ODw)}}%
+ {\translate{All pass-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{ap-(ODw)}}%
- {\GetTranslation{all pass-(ODw)}}%
+ {\translate{ap-(ODw)}}%
+ {\translate{all pass-(ODw)}}%
}% TF#1
\egroup%
\xspace%
@@ -2863,12 +2902,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF#1{%
\IfBooleanTF{#2}%
- {\GetTranslation{Dbl-(ODw)}}%
- {\GetTranslation{Double-(ODw)}}%
+ {\translate{Dbl-(ODw)}}%
+ {\translate{Double-(ODw)}}%
}{%
\IfBooleanTF{#2}%
{X}%
- {\GetTranslation{double-(ODw)}}%
+ {\translate{double-(ODw)}}%
}% TF#1
\egroup%
\xspace%
@@ -2887,12 +2926,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF#1{%
\IfBooleanTF{#2}%
- {\GetTranslation{ReDbl-(ODw)}}%
- {\GetTranslation{ReDouble-(ODw)}}%
+ {\translate{ReDbl-(ODw)}}%
+ {\translate{ReDouble-(ODw)}}%
}{%
\IfBooleanTF{#2}%
{\mbox{X\kern-0.1em X}}%
- {\GetTranslation{redouble-(ODw)}}%
+ {\translate{redouble-(ODw)}}%
}% TF#1
\egroup%
\xspace%
@@ -4049,7 +4088,7 @@ pdflatex --shell-escape onedown.dtx
% board number. |\boardtext*| outputs something like 'Board:~23'.
% \begin{macrocode}
\NewDocumentCommand\boardtext{s}{%
- \IfBooleanTF#1{\GetTranslation{Board-(ODw)}:\,\ODw@BoardText}%
+ \IfBooleanTF#1{\translate{Board-(ODw)}:\,\ODw@BoardText}%
{\ODw@BoardText}%
}% boardtext
% \end{macrocode}
@@ -4066,7 +4105,7 @@ pdflatex --shell-escape onedown.dtx
\gdef\ODw@BoardText{%
\bgroup%
\ODw@OtherFont%
-% \GetTranslation{Board-(ODw)} #1%
+% \translate{Board-(ODw)} #1%
#1%
\egroup%
}%
@@ -4250,7 +4289,7 @@ pdflatex --shell-escape onedown.dtx
% \end{macro}
%
% \begin{macro}{\handskip}\MacroDef{handskip}[\marg{length}]
-% |\handskip| adds \meta{length} to |SkipWidth|, i.e.\ the distance between
+% |\handskip| adds |<length>| to |SkipWidth|, i.e.\ the distance between
% the card diagram (with or without the east hand) and the |bidding|
% diagram.
% \begin{macrocode}
@@ -4266,7 +4305,7 @@ pdflatex --shell-escape onedown.dtx
% \begin{macrocode}
\def\ODw@DealerText{%
\bgroup%
- \ODw@OtherFont\GetTranslation{Dealer-(ODw)}%
+ \ODw@OtherFont\translate{Dealer-(ODw)}%
\egroup%
}% ODw@DealerText
% \end{macrocode}
@@ -4283,11 +4322,11 @@ pdflatex --shell-escape onedown.dtx
\bgroup%
\ODw@OtherFont%
\IfBooleanTF#1{%
- \IfBooleanTF#2{\GetTranslation{Vul-(ODw)}}%
- {\GetTranslation{Vulnerable-(ODw)}}%
+ \IfBooleanTF#2{\translate{Vul-(ODw)}}%
+ {\translate{Vulnerable-(ODw)}}%
}{%
- \IfBooleanTF#2{\GetTranslation{vul-(ODw)}}%
- {\GetTranslation{vulnerable-(ODw)}}%
+ \IfBooleanTF#2{\translate{vul-(ODw)}}%
+ {\translate{vulnerable-(ODw)}}%
}%
\egroup%
\xspace%
@@ -4298,7 +4337,7 @@ pdflatex --shell-escape onedown.dtx
% \begin{macro}{\ODw@AwardText} Typesets the text to be put as 'title' in
% the \emph{award} part of a expert quiz.
% \begin{macrocode}
-\def\ODw@AwardText{\textsf{\GetTranslation{Award-(ODw)}}}
+\def\ODw@AwardText{\textsf{\translate{Award-(ODw)}}}
% \end{macrocode}
% \end{macro}
%
@@ -4726,7 +4765,7 @@ pdflatex --shell-escape onedown.dtx
\def\ODw@Tricks{%
\setcounter{ODw@PlayerNr}{0}%
\gdef\ODw@Last{\ODw@NextLead}%
- \expandafter\GetTranslation%
+ \expandafter\translate%
\expandafter{\ODw@NextLead-(ODw)}:\,%
% write a colon and a thin space in the table,
% as separator between lead player and lead card.
@@ -4833,10 +4872,10 @@ pdflatex --shell-escape onedown.dtx
%
\provideenvironment{TableII}{%
\begin{tabular}[b]{FPPP}%
- \multicolumn{1}{c}{\GetTranslation{Lead!-(ODw)}} &%
- \cci{\GetTranslation{2nd-(ODw)}} &%
- \cci{\GetTranslation{3rd-(ODw)}} &%
- \cci{\GetTranslation{4th-(ODw)}} \\[0.3em]\hline%
+ \multicolumn{1}{c}{\translate{Lead!-(ODw)}} &%
+ \cci{\translate{2nd-(ODw)}} &%
+ \cci{\translate{3rd-(ODw)}} &%
+ \cci{\translate{4th-(ODw)}} \\[0.3em]\hline%
\multicolumn{4}{c}{}\\[-\ODw@EXtra]%
}{%
\end{tabular}%
@@ -4866,7 +4905,7 @@ pdflatex --shell-escape onedown.dtx
% \begin{macrocode}
%
\begin{tabular}[b]{r}% TableI
- \cci{\GetTranslation{Nr-(ODw)}}\\[0.3em]
+ \cci{\translate{Nr-(ODw)}}\\[0.3em]
\hline\\[-\ODw@EXtra]%
\setcounter{ODw@Cnt}{1}%
\whiledo{\theODw@Cnt<\theODw@Nr}{%
@@ -4996,7 +5035,7 @@ pdflatex --shell-escape onedown.dtx
%
% \subsection{Resetting the Game}
%
-% We use \packname{pgfkeys} with its \meta{key}=\meta{val} system to
+% We use \packname{pgfkeys} with its |<key>=<val>| system to
%specify the fonts and other things that we want to have as defaults,
%rather than the intitial \OneDown values. Therefore we first define the
%keys and the store for it.
@@ -5302,12 +5341,12 @@ pdflatex --shell-escape onedown.dtx
%JW \ODw@GameFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{A-(ODw)}}%
- {\GetTranslation{Ace-(ODw)}}%
+ {\translate{A-(ODw)}}%
+ {\translate{Ace-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{a-(ODw)}}%
- {\GetTranslation{ace-(ODw)}}%
+ {\translate{a-(ODw)}}%
+ {\translate{ace-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5326,12 +5365,12 @@ pdflatex --shell-escape onedown.dtx
%JW \ODw@GameFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{K-(ODw)}}%
- {\GetTranslation{King-(ODw)}}%
+ {\translate{K-(ODw)}}%
+ {\translate{King-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{k-(ODw)}}%
- {\GetTranslation{king-(ODw)}}%
+ {\translate{k-(ODw)}}%
+ {\translate{king-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5350,12 +5389,12 @@ pdflatex --shell-escape onedown.dtx
%JW \ODw@GameFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{Q-(ODw)}}%
- {\GetTranslation{Queen-(ODw)}}%
+ {\translate{Q-(ODw)}}%
+ {\translate{Queen-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{q-(ODw)}}%
- {\GetTranslation{queen-(ODw)}}%
+ {\translate{q-(ODw)}}%
+ {\translate{queen-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5374,12 +5413,12 @@ pdflatex --shell-escape onedown.dtx
%JW \ODw@GameFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{J-(ODw)}}%
- {\GetTranslation{Jack-(ODw)}}%
+ {\translate{J-(ODw)}}%
+ {\translate{Jack-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{j-(ODw)}}%
- {\GetTranslation{jack-(ODw)}}%
+ {\translate{j-(ODw)}}%
+ {\translate{jack-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5419,12 +5458,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{All!-(ODw)}}%
- {\GetTranslation{All-(ODw)}}%
+ {\translate{All!-(ODw)}}%
+ {\translate{All-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{all!-(ODw)}}%
- {\GetTranslation{all-(ODw)}}%
+ {\translate{all!-(ODw)}}%
+ {\translate{all-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5443,12 +5482,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{None!-(ODw)}}%
- {\GetTranslation{None-(ODw)}}%
+ {\translate{None!-(ODw)}}%
+ {\translate{None-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{none!-(ODw)}}%
- {\GetTranslation{none-(ODw)}}%
+ {\translate{none!-(ODw)}}%
+ {\translate{none-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5473,12 +5512,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{Contr-(ODw)}}%
- {\GetTranslation{Contract-(ODw)}}%
+ {\translate{Contr-(ODw)}}%
+ {\translate{Contract-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{contr-(ODw)}}%
- {\GetTranslation{contract-(ODw)}}%
+ {\translate{contr-(ODw)}}%
+ {\translate{contract-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5497,12 +5536,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{Lead!-(ODw)}}%
- {\GetTranslation{Lead-(ODw)}}%
+ {\translate{Lead!-(ODw)}}%
+ {\translate{Lead-(ODw)}}%
}{% else #1
\IfBooleanTF{#2}%
- {\GetTranslation{lead!-(ODw)}}%
- {\GetTranslation{lead-(ODw)}}%
+ {\translate{lead!-(ODw)}}%
+ {\translate{lead-(ODw)}}%
}% #1
\egroup%
\xspace%
@@ -5521,12 +5560,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{Decl-(ODw)}}%
- {\GetTranslation{Declarer-(ODw)}}%
+ {\translate{Decl-(ODw)}}%
+ {\translate{Declarer-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{decl-(ODw)}}%
- {\GetTranslation{declarer-(ODw)}}%
+ {\translate{decl-(ODw)}}%
+ {\translate{declarer-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5542,7 +5581,7 @@ pdflatex --shell-escape onedown.dtx
\newcommand\by{%
\bgroup%
\ODw@OtherFont%
- \GetTranslation{by-(ODw)}%
+ \translate{by-(ODw)}%
\egroup%
\xspace%
}% by
@@ -5557,12 +5596,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{Brd-(ODw)}}%
- {\GetTranslation{Board-(ODw)}}%
+ {\translate{Brd-(ODw)}}%
+ {\translate{Board-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{brd-(ODw)}}%
- {\GetTranslation{board-(ODw)}}%
+ {\translate{brd-(ODw)}}%
+ {\translate{board-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5581,12 +5620,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{Deal!-(ODw)}}%
- {\GetTranslation{Deal-(ODw)}}%
+ {\translate{Deal!-(ODw)}}%
+ {\translate{Deal-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{deal!-(ODw)}}%
- {\GetTranslation{deal-(ODw)}}%
+ {\translate{deal!-(ODw)}}%
+ {\translate{deal-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5603,8 +5642,8 @@ pdflatex --shell-escape onedown.dtx
\bgroup%
\ODw@OtherFont%
\IfBooleanTF{#1}{%
- \GetTranslation{Doubled-(ODw)}}{%
- \GetTranslation{doubled-(ODw)}%
+ \translate{Doubled-(ODw)}}{%
+ \translate{doubled-(ODw)}%
}%
\egroup%
\xspace%
@@ -5618,8 +5657,8 @@ pdflatex --shell-escape onedown.dtx
\bgroup%
\ODw@OtherFont%
\IfBooleanTF{#1}{%
- \GetTranslation{Redoubled-(ODw)}}{%
- \GetTranslation{redoubled-(ODw)}%
+ \translate{Redoubled-(ODw)}}{%
+ \translate{redoubled-(ODw)}%
}%
\egroup%
\xspace%
@@ -5639,12 +5678,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{HCP-(ODw)}}%
- {\GetTranslation{High Card Points-(ODw)}}%
+ {\translate{HCP-(ODw)}}%
+ {\translate{High Card Points-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{hcp-(ODw)}}%
- {\GetTranslation{high card points-(ODw)}}%
+ {\translate{hcp-(ODw)}}%
+ {\translate{high card points-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5664,19 +5703,19 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{LP-(ODw)}}%
- {\GetTranslation{Length Points-(ODw)}}%
+ {\translate{LP-(ODw)}}%
+ {\translate{Length Points-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{lp-(ODw)}}%
- {\GetTranslation{length points-(ODw)}}%
+ {\translate{lp-(ODw)}}%
+ {\translate{length points-(ODw)}}%
}%
\egroup%
\xspace%
}% Length Points
%
\def\LP{\,\lpts*!}
-\def\HLP{\,\bgroup\ODw@OtherFont\GetTranslation{HLP-(ODw)}\egroup\xspace}
+\def\HLP{\,\bgroup\ODw@OtherFont\translate{HLP-(ODw)}\egroup\xspace}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -5690,12 +5729,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{DP-(ODw)}}%
- {\GetTranslation{Distribution Points-(ODw)}}%
+ {\translate{DP-(ODw)}}%
+ {\translate{Distribution Points-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{dp-(ODw)}}%
- {\GetTranslation{distribution points-(ODw)}}%
+ {\translate{dp-(ODw)}}%
+ {\translate{distribution points-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5714,12 +5753,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{TP-(ODw)}}%
- {\GetTranslation{Total Points-(ODw)}}%
+ {\translate{TP-(ODw)}}%
+ {\translate{Total Points-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{tp-(ODw)}}%
- {\GetTranslation{total points-(ODw)}}%
+ {\translate{tp-(ODw)}}%
+ {\translate{total points-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5743,12 +5782,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{GF-(ODw)}}%
- {\GetTranslation{Game Forcing-(ODw)}}%
+ {\translate{GF-(ODw)}}%
+ {\translate{Game Forcing-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{gf-(ODw)}}%
- {\GetTranslation{game forcing-(ODw)}}%
+ {\translate{gf-(ODw)}}%
+ {\translate{game forcing-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5767,12 +5806,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{SF-(ODw)}}%
- {\GetTranslation{Semi Forcing-(ODw)}}%
+ {\translate{SF-(ODw)}}%
+ {\translate{Semi Forcing-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{sf-(ODw)}}%
- {\GetTranslation{semi forcing-(ODw)}}%
+ {\translate{sf-(ODw)}}%
+ {\translate{semi forcing-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5791,12 +5830,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{NMF-(ODw)}}%
- {\GetTranslation{New Minor Forcing-(ODw)}}%
+ {\translate{NMF-(ODw)}}%
+ {\translate{New Minor Forcing-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{nmf-(ODw)}}%
- {\GetTranslation{new minor forcing-(ODw)}}%
+ {\translate{nmf-(ODw)}}%
+ {\translate{new minor forcing-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5815,12 +5854,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{TSF-(ODw)}}%
- {\GetTranslation{Third Suit Forcing-(ODw)}}%
+ {\translate{TSF-(ODw)}}%
+ {\translate{Third Suit Forcing-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{tsf-(ODw)}}%
- {\GetTranslation{third suit forcing-(ODw)}}%
+ {\translate{tsf-(ODw)}}%
+ {\translate{third suit forcing-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5839,12 +5878,12 @@ pdflatex --shell-escape onedown.dtx
\ODw@OtherFont%
\IfBooleanTF{#1}{%
\IfBooleanTF{#2}%
- {\GetTranslation{FSF-(ODw)}}%
- {\GetTranslation{Fourth Suit Forcing-(ODw)}}%
+ {\translate{FSF-(ODw)}}%
+ {\translate{Fourth Suit Forcing-(ODw)}}%
}{%
\IfBooleanTF{#2}%
- {\GetTranslation{fsf-(ODw)}}%
- {\GetTranslation{fourth suit forcing-(ODw)}}%
+ {\translate{fsf-(ODw)}}%
+ {\translate{fourth suit forcing-(ODw)}}%
}%
\egroup%
\xspace%
@@ -5886,30 +5925,85 @@ pdflatex --shell-escape onedown.dtx
% \end{macrocode}
% Now we load the dictionaries for the languages that are to be used in
% the document. We use \packname{tracklang} to iterate over all the
-% document languages and load the corresponding |ODw|-dictionaries. Due to
+% document languages and load the corresponding |ODw|-dictionaries.
+% \iffalse
+% Due to
% an inconsistency between \packname{babel} and \packname{translations}
% with respect to the Norwegian language (\packname{babel} calls this
% language \emph{norsk} whereas \packname{translations} insist on using
% \emph{norwegian}, we redefine |\thislang| to the latter if it happens to
% be \emph{norsk}.
+% \fi
% \begin{macrocode}
-\AtBeginDocument{%
+%\AtBeginDocument{%
+\usedictionary{ODw}
+%%%%
\ForEachTrackedLanguage{\thislang}{%
- \ifthenelse{\equal{\thislang}{norsk}}%
- {\def\thislang{norwegian}}{}%
- \IfFileExists{ODw-\thislang.trsl}%
- {%
- \LoadDictionaryFor{\thislang}{ODw}%
- \PackageInfo{ODw}{%
- Translation dictionary ODw-\thislang.trsl loaded%
- }%
- }{%
- \PackageWarning{ODw}{%
- Translation dictionary ODw-\thislang.trsl not found%
- }%
- }%
+ \PackageInfo{ODw}{Language \thislang\ detected}%
+%
+% Commented out due to translator
+% \ifthenelse{\equal{\thislang}{norsk}}%
+% {\def\thislang{norwegian}}{}%
+%
+ \IfEqCase{\thislang}{%
+ {danish}{\IfFileExists{ODw-Danish.dict}%
+ {\uselanguage{Danish}%
+ \PackageInfo{ODw}{Dictionary ODw-Danish.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-Danish.dict missing}}}%
+%
+ {dutch}{\IfFileExists{ODw-Dutch.dict}%
+ {\uselanguage{Dutch}%
+ \PackageInfo{ODw}{Dictionary ODw-Dutch.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-Dutch.dict missing}}}%
+%
+ {english}{\IfFileExists{ODw-English.dict}%
+ {\uselanguage{English}%
+ \PackageInfo{ODw}{Dictionary ODw-English.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-English.dict missing}}}%
+%
+ {french}{\IfFileExists{ODw-French.dict}%
+ {\uselanguage{French}%
+ \PackageInfo{ODw}{Dictionary ODw-French.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-French.dict missing}}}%
+%
+ {german}{\IfFileExists{ODw-German.dict}%
+ {\uselanguage{German}%
+ \PackageInfo{ODw}{Dictionary ODw-German.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-German.dict missing}}}%
+%
+ {norsk}{\IfFileExists{ODw-Norsk.dict}%
+ {\uselanguage{Norsk}%
+ \PackageInfo{ODw}{Dictionary ODw-Norsk.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-Norsk.dict missing}}}%
+%
+ {spanish}{\IfFileExists{ODw-Spanish.dict}%
+ {\uselanguage{Spanish}%
+ \PackageInfo{ODw}{Dictionary ODw-Spanish.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-Spanish.dict missing}}}%
+%
+ {swedish}{\IfFileExists{ODw-Swedish.dict}%
+ {\uselanguage{Swedish}%
+ \PackageInfo{ODw}{Dictionary ODw-Swedish.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-Swedish.dict missing}}}%
+%
+ {turkish}{\IfFileExists{ODw-Turkish.dict}%
+ {\uselanguage{Turkish}%
+ \PackageInfo{ODw}{Dictionary ODw-Turkish.dict loaded}
+ }{\PackageWarning{ODw}{Dictionary ODw-Turkish.dict missing}}}%
+%
+ }[%
+ \PackageWarning{ODw}%
+ {Language \thislang\space not supported by OneDown}
+ ]% IfEqCase
+%
}% ForEach
-}% AtBeginDocument
+%%%%%
+%}% AtBeginDocument
+% Look if we can find a file called onedown.symbols somewhere in the \LaTeX-path
+% If so, we load it (the code for inputting card symbols directly from keyboard).
+% If not, we keep silent about it
+\@input{onedown.symbols}
+%
% \end{macrocode}
% That's it folks, happy \TeX ing!
% \begin{macrocode}
diff --git a/macros/latex/contrib/onedown/onedown.pdf b/macros/latex/contrib/onedown/onedown.pdf
index c503a27925..726f4bb0d3 100644
--- a/macros/latex/contrib/onedown/onedown.pdf
+++ b/macros/latex/contrib/onedown/onedown.pdf
Binary files differ