summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-11-02 20:29:17 +0000
committerKarl Berry <karl@freefriends.org>2016-11-02 20:29:17 +0000
commit22cdd18a2a6b8bfca945af635e646880edd2914e (patch)
treec32ca5b64c6714e0c701e3ecdc97a8c15409b7f2 /Master/texmf-dist
parent27bf9c3c2b8fd52f3d4a8555aef8bef8f0fe95ba (diff)
babel-german (2nov16)
git-svn-id: svn://tug.org/texlive/trunk@42424 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/generic/babel-german/germanb.pdfbin358361 -> 367522 bytes
-rw-r--r--Master/texmf-dist/doc/generic/babel-german/ngermanb.pdfbin346124 -> 354170 bytes
-rw-r--r--Master/texmf-dist/source/generic/babel-german/germanb.dtx159
-rw-r--r--Master/texmf-dist/source/generic/babel-german/ngermanb.dtx177
-rw-r--r--Master/texmf-dist/tex/generic/babel-german/austrian.ldf2
-rw-r--r--Master/texmf-dist/tex/generic/babel-german/german.ldf2
-rw-r--r--Master/texmf-dist/tex/generic/babel-german/germanb.ldf17
-rw-r--r--Master/texmf-dist/tex/generic/babel-german/naustrian.ldf2
-rw-r--r--Master/texmf-dist/tex/generic/babel-german/ngerman.ldf2
-rw-r--r--Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf30
-rw-r--r--Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf2
-rw-r--r--Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf2
12 files changed, 220 insertions, 175 deletions
diff --git a/Master/texmf-dist/doc/generic/babel-german/germanb.pdf b/Master/texmf-dist/doc/generic/babel-german/germanb.pdf
index 646ba4d3ba5..167823dc3ad 100644
--- a/Master/texmf-dist/doc/generic/babel-german/germanb.pdf
+++ b/Master/texmf-dist/doc/generic/babel-german/germanb.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/babel-german/ngermanb.pdf b/Master/texmf-dist/doc/generic/babel-german/ngermanb.pdf
index d56953e0874..e0fe9861751 100644
--- a/Master/texmf-dist/doc/generic/babel-german/ngermanb.pdf
+++ b/Master/texmf-dist/doc/generic/babel-german/ngermanb.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/generic/babel-german/germanb.dtx b/Master/texmf-dist/source/generic/babel-german/germanb.dtx
index 01120318de0..59b0c61bf53 100644
--- a/Master/texmf-dist/source/generic/babel-german/germanb.dtx
+++ b/Master/texmf-dist/source/generic/babel-german/germanb.dtx
@@ -38,7 +38,7 @@
%<germanb>\ProvidesLanguage{germanb}
%\fi
%\ProvidesFile{germanb.dtx}
- [2016/11/01 v2.8 German support for babel (traditional orthography)]
+ [2016/11/02 v2.9 German support for babel (traditional orthography)]
%\iffalse
%
%<*filedriver>
@@ -50,13 +50,16 @@
\usepackage{array}
\usepackage{booktabs}
\usepackage[tableposition=top]{caption}
+\usepackage{marginnote}
\newcommand*\TeXhax{\TeX hax}
\newcommand*\babel{\textsf{babel}}
\newcommand*\Babel{\textsf{Babel}}
\newcommand*\langvar{$\langle \it lang \rangle$}
+\newcommand*\graph[1]{$\langle$#1$\rangle$}
\newcommand*\note[1]{}
\newcommand*\Lopt[1]{\textsf{#1}}
\newcommand*\file[1]{\texttt{#1}}
+\newcommand*\newfeature[1]{\marginnote{\footnotesize New feature\\in v.\,#1!}}
\GlossaryMin = .33\textheight
\begin{document}
@@ -126,7 +129,7 @@
%
% \title{Babel support for the German language (traditional~orthography)}
% \author{Johannes Braams \and Bernd Raichle \and Walter Schmidt \and J\"urgen Spitzm\"uller\thanks{%
-% Current maintainer. Address correspondence to juergen (at) spitzmueller (dot) org.}}
+% Current maintainer. Please report issues via \protect\url{https://github.com/jspitz/babel-german}.}}
% \date{\fileversion\ (\filedate)}
% \maketitle
%
@@ -181,60 +184,68 @@
% \caption{Shorthands provided by \file{germanb.ldf}}\label{tab:german-quote}
% \begin{tabular}{l>{\raggedright}p{.9\textwidth}}
% \toprule
-% |"a| & umlaut \"a (shorthand for |\"a|). Similar shorthands are
+% |"a| & Umlaut \graph{\"a} (shorthand for |\"a|). Similar shorthands are
% available for all other lower- and uppercase
% vowels (umlauts: |"a|, |"o|, |"u|, |"A|, |"O|,
-% |"U|, as well as tremata: |"e|, |"i|, |"E|, |"I|). \tabularnewline
-% |"s| & German \ss{} (shorthand for |\ss{}|). \tabularnewline
-% |"z| & German \ss{} (shorthand for |\ss{}|). \tabularnewline
-% |"ck| & for |ck| to be hyphenated as |k-k|. \tabularnewline
-% |"ff| & for |ff| to be hyphenated as |ff-f|,
-% this is also implemented for |l|, |m|, |n|, |p|,
-% |r| and |t|. \tabularnewline
-% |"S| & |SS| (|\uppercase{"s}|, since \ss{} must be written
-% as SS -- or SZ, see below -- in uppercase writing). \tabularnewline
-% |"Z| & |SZ| (|\uppercase{"z}|, since \ss{} must be written
-% as SZ -- or SS, see above -- in uppercase writing). \tabularnewline
-% \verb="|= & disable ligature at this position
-% (e.\,g. \verb=Auf"|lage=). \tabularnewline
-% |"-| & an additional breakpoint that does still
+% |"U|; tremata: |"e|, |"i|, |"E|, |"I|). \tabularnewline
+% |"s| & German \graph{\ss} (shorthand for |\ss{}|). \tabularnewline
+% |"z| & German \graph{\ss} (shorthand for |\ss{}|).
+% The difference to |"s| is the uppercase version. \tabularnewline
+% |"ck| & \graph{ck}, hyphenated as \graph{k-k}. \tabularnewline
+% |"ff| & \graph{ff}, hyphenated as \graph{ff-f};
+% this is also implemented for \graph{l}, \graph{m},
+% \graph{n}, \graph{p}, \graph{r} and \graph{t}. \tabularnewline
+% |"S| & |\uppercase{"s}|, typeset as \graph{SS} (\graph{\ss}
+% must be written as \graph{SS} [or \graph{SZ}, see below]
+% in uppercase writing). \tabularnewline
+% |"Z| & |\uppercase{"z}|, typeset as \graph{SZ} (\graph{\ss}
+% must be written as \graph{SZ} [or \graph{SS}, see above]
+% in uppercase writing). \tabularnewline
+% \verb="|= & Disable ligature at this position (e.\,g., at morpheme
+% boundaries, as in \verb=Auf"|lage=). \tabularnewline
+% |"-| & An additional breakpoint that does still
% allow for hyphenation at the breakpoints preset in
% the hyphenation patterns (as opposed to |\-|). \tabularnewline
-% |""| & a breakpoint that does not output a hyphen sign
-% if the line break is performed (useful for compound
-% words with hyphen, e.\,g.\ |(Un-)""Sinn|). \tabularnewline
-% |"~| & a compound word mark without a breakpoint. Useful for
-% cases such as |bergauf und "~ab|. \tabularnewline
-% |"=| & a compound word mark with a breakpoint, allowing
+% |""| & A breakpoint that does not output a hyphen if the line
+% break is performed (useful for compound words with
+% hyphen, e.\,g., |(Un-)""Sinn|). \tabularnewline
+% |"~| & An explicit hyphen without a breakpoint. Useful for
+% cases where the hyphen should stick at the following
+% word, e.\,g., |bergauf und "~ab| . \tabularnewline
+% |"=| & An explicit hyphen with a breakpoint, allowing
% for hyphenation at the other points preset in the
-% hyphenation patterns (as opposed to plain |-|). \tabularnewline
-% |"`| & German left double quotes (i.\,e. ,,). \tabularnewline
-% |"'| & German right double quotes (i.\,e. ``). \tabularnewline
-% |"<| & French/Swiss left double quotes (i.\,e. <<). \tabularnewline
-% |">| & French/Swiss right double quotes (i.\,e. >>). \tabularnewline
+% hyphenation patterns (as opposed to plain |-|);
+% useful for long compounds. \tabularnewline
+% |"/| & \newfeature{2.9}A slash that allows for a linebreak.
+% As opposed to |\slash{}|, hyphenation at the breakpoints
+% preset in the hyphenation patterns is still allowed. \tabularnewline
+% |"`| & German left double quotes \graph{,,}. \tabularnewline
+% |"'| & German right double quotes \graph{``}. \tabularnewline
+% |"<| & French/Swiss left double quotes \graph{<<}. \tabularnewline
+% |">| & French/Swiss right double quotes \graph{>>}. \tabularnewline
% \bottomrule
% \end{tabular}
% \end{center}
% \end{table}
%
-% Table~\ref{tab:more-quote} lists some macros for quotation marks
+% Table~\ref{tab:more-quote} lists some \babel\ macros for quotation marks
% that might be used as an alternative to the quotation mark shorthands
% provided by \file{germanb.ldf}.
% \begin{table}[!h]
% \begin{center}
% \small
% \caption{Alternative commands for quotation marks (provided by \babel)}\label{tab:more-quote}
-% \begin{tabular}{lp{9cm}}
+% \begin{tabular}{lp{.88\textwidth}}
% \toprule
-% |\glqq| & German left double quotes (i.\,e. ,,). \tabularnewline
-% |\grqq| & German right double quotes (i.\,e. ``). \tabularnewline
-% |\glq| & German left single quotes (i.\,e. ,). \tabularnewline
-% |\grq| & German right single quotes (i.\,e. `). \tabularnewline
-% |\flqq| & French/Swiss left double quotes (i.\,e. <<). \tabularnewline
-% |\frqq| & French/Swiss right double quotes (i.\,e. >>). \tabularnewline
-% |\flq| & French/Swiss left single quotes (i.\,e. \guilsinglleft). \tabularnewline
-% |\frq| & French/Swiss right single quotes (i.\,e. \guilsinglright). \tabularnewline
-% |\dq| & the original quotation mark character (i.\,e. |"|). \tabularnewline
+% |\glqq| & German left double quotes \graph{,,}. \tabularnewline
+% |\grqq| & German right double quotes \graph{``}. \tabularnewline
+% |\glq| & German left single quotes \graph{,}. \tabularnewline
+% |\grq| & German right single quotes \graph{`}. \tabularnewline
+% |\flqq| & French/Swiss left double quotes \graph{<<}. \tabularnewline
+% |\frqq| & French/Swiss right double quotes \graph{>>}. \tabularnewline
+% |\flq| & French/Swiss left single quotes \graph{\guilsinglleft}. \tabularnewline
+% |\frq| & French/Swiss right single quotes \graph{\guilsinglright}. \tabularnewline
+% |\dq| & The straight quotation mark character \graph{\textquotedbl}. \tabularnewline
% \bottomrule
% \end{tabular}
% \end{center}
@@ -246,8 +257,8 @@
%
% \subsection{General settings}
%
-% If \file{germanb.ldf} is read via the \babel\ option \Lopt{germanb},
-% we make it behave as if \Lopt{german} was specified.
+% If \file{germanb.ldf} is read via the deprecated \babel\ option
+% \Lopt{germanb}, we make it behave as if \Lopt{german} was specified.
% \changes{Version 2.6l}{2008/03/17}{Making germanb behave like german
% needs some more work besides defining \cs{CurrentOption}}
% \changes{Version 2.6m}{2008/06/01}{Corrected a typo}
@@ -273,8 +284,8 @@
% \end{macrocode}
%
% The macro |\LdfInit| takes care of preventing that this file is
-% loaded more than once, checking the category code of the
-% \texttt{@} sign, etc.
+% loaded more than once with the same option, checking the category
+% code of the \texttt{@} sign, etc.
% \changes{Version 2.6d}{1996/11/02}{Now use \cs{LdfInit} to perform
% initial checks}
% \begin{macrocode}
@@ -284,7 +295,7 @@
% If \file{germanb.ldf} is read as an option, i.e. via |\usepackage|
% command, \texttt{german} could be an `unknown' language, so we
% have to make it known. We check for the existence of
-% |\l@german| to see whether we have to do something here.
+% |\l@german| and issue a warning if it is unknown.
%
% \changes{Version 2.0}{1991/04/23}{Now use \cs{adddialect} if
% language undefined}
@@ -302,21 +313,20 @@
%
% We set \texttt{austrian} as a dialect of \texttt{german},
% since the Austrian variety uses the same hyphenation patterns as
-% Germany's Standard German.
+% Germany's Standard German. If no German patterns are found, we issue
+% a warning.
% \changes{Version 2.0}{1991/04/23}{Now use \cs{adddialect} for
% austrian}
% \changes{Version 2.8}{2016/11/01}{Only add Austrian dialect if \texttt{austrian} is loaded}
+% \changes{Version 2.9}{2016/11/02}{Do not attempt to load \cs{l@austrian}, which does not exist}
% \begin{macrocode}
\def\bbl@tempa{austrian}
\ifx\CurrentOption\bbl@tempa
- \ifx\l@austrian\@undefined
- \ifx\l@german\@undefined
- \@nopatterns{Austrian (trad. orthography) and German (trad. orthography)}
- \adddialect\l@austrian0
- \else
- \@nopatterns{Austrian (trad. orthography)}
- \adddialect\l@austrian\l@german
- \fi
+ \ifx\l@german\@undefined
+ \@nopatterns{German (trad. orthography), needed by Austrian (trad. orthography)}
+ \adddialect\l@austrian0
+ \else
+ \adddialect\l@austrian\l@german
\fi
\fi
% \end{macrocode}
@@ -324,6 +334,7 @@
% For the Swiss variety, we attempt to load the specific
% \texttt{swissgerman} hyphenation patterns and fall back to
% \texttt{german} if those are not available.
+% If no patterns are found, we issue a warning.
% \changes{Version 2.7b}{2014/10/10}{Do not warn about missing swissgerman patterns
% if \texttt{swissgerman} is not loaded}
% \begin{macrocode}
@@ -415,7 +426,8 @@
% \begin{macro}{\captionsaustrian}
% The macro |\captionsaustrian| builds on |\@captionsgerman|, but
% redefines some strings following Austrian conventions (for the
-% respective variants, cf. \cite{vwb}).
+% respective variants, cf. \cite{vwb}). It is only defined if
+% \texttt{austrian} is requested.
% \changes{Version 2.8}{2016/11/01}{Only define \cs{captionsaustrian} if
% \texttt{austrian} is requested.}
% \begin{macrocode}
@@ -431,7 +443,8 @@
% \begin{macro}{\captionsswissgerman}
% The macro |\captionsswissgerman| builds on |\@captionsgerman|, but
% redefines some strings following Swiss conventions (for the
-% respective variants, cf. \cite{vwb}).
+% respective variants, cf. \cite{vwb}). It is only defined if
+% \texttt{swissgerman} is requested.
% \changes{Version 2.8}{2016/11/01}{Only define \cs{captionsswissgerman} if
% \texttt{swissgerman} is requested.}
% \begin{macrocode}
@@ -449,6 +462,7 @@
%
% \begin{macro}{\month@german}
% The macro |\month@german| defines German month names for all varieties.
+% \changes{Version 2.3e}{1991/11/10}{Added \cs{month@german}}
% \begin{macrocode}
\def\month@german{\ifcase\month\or
Januar\or Februar\or M\"arz\or April\or Mai\or Juni\or
@@ -459,7 +473,6 @@
% \begin{macro}{\dategerman}
% The macro |\dategerman| redefines the command
% |\today| to produce German dates.
-% \changes{Version 2.3e}{1991/11/10}{Added \cs{month@german}}
% \changes{Version 2.6f}{1997/10/01}{Use \cs{edef} to define
% \cs{today} to save memory}
% \changes{Version 2.6f}{1998/03/28}{use \cs{def} instead of
@@ -518,6 +531,10 @@
% \changes{Version 2.2}{1991/06/11}{Save all redefined macros}
% \begin{macro}{\extrasaustrian}
% \begin{macro}{\extrasswissgerman}
+% \changes{Version 2.7}{2013/12/13}{Added \cs{extrasswissgerman}.}
+% \begin{macro}{\noextrasaustrian}
+% \begin{macro}{\noextrasswissgerman}
+% \changes{Version 2.7}{2013/12/13}{Added \cs{noextrasswissgerman}.}
% \begin{macro}{\noextrasgerman}
% \changes{Version 1.1}{1990/07/30}{Added \cs{dieresis}}
% \changes{Version 2.0b}{1991/05/29}{added some comment chars to
@@ -526,8 +543,6 @@
% former state}
% \changes{Version 2.6d}{1996/07/10}{Construct control sequence
% \cs{extrasgerman} or \cs{extrasaustrian} on the fly}
-% \begin{macro}{\noextrasaustrian}
-% \begin{macro}{\noextrasswissgerman}
%
% The macros |\extrasgerman|, |\extrasaustrian|
% and |\extrasswissgerman|, respectively, will perform all the extra
@@ -535,19 +550,29 @@
% variety. The macro |\noextrasgerman| is used to cancel the
% actions of |\extrasgerman|. |\noextrasaustrian| and
% |\noextrasswissgerman| behave analoguously.
-% \changes{Version 2.7}{2013/12/13}{Added \cs{extrasswissgerman}
-% and \cs{noextrasswissgerman}.}
%
-% For all German varieties, the character \texttt{"} is
-% made active. This is done once, later on its definition may vary.
+% First, the character \texttt{"} is declared active for all German
+% varieties. This is done once, later on its definition may vary.
% \begin{macrocode}
\initiate@active@char{"}
+% \end{macrocode}
+%
+% Depending on the option with which the language definition file
+% has been loaded, the macro |\extrasgerman|, |\extrasaustrian|
+% or |\extrasswissgerman| is defined. Each of those is identical:
+% they load the shorthands defined below and activate the \texttt{"}
+% character.
+% \begin{macrocode}
\@namedef{extras\CurrentOption}{%
\languageshorthands{german}}
\expandafter\addto\csname extras\CurrentOption\endcsname{%
\bbl@activate{"}}
% \end{macrocode}
-% Turn the shorthands off again outside of German.
+% Next, again depending on the option with which the language definition
+% file has been loaded, the macro |\noextrasgerman|, |\noextrasaustrian|
+% or |\noextrasswissgerman| is defined.
+% These deactivate the \texttt{"} character and thus turn the shorthands
+% off again outside of the respective variety.
% \changes{Version 2.6i}{1999/12/16}{Deactivate shorthands outside of
% German.}
% \changes{Version 2.7}{2013/12/13}{Deactivate shorthands also outside of
@@ -716,7 +741,9 @@
{\relax\discretionary{ff-}{f}{ff}\allowhyphens}{f\bbl@nextff}}
\let\bbl@nextff=f
% \end{macrocode}
-% and some additional commands (hyphenation and ligature control):
+% and some additional commands (hyphenation, line breaking and ligature control):
+% \changes{Version 2.9}{2016/11/02}{Add \texttt{"/} shortcut for breakable slash
+% (taken from \texttt{dutch.ldf})}
% \begin{macrocode}
\declare@shorthand{german}{"-}{\nobreak\-\bbl@allowhyphens}
\declare@shorthand{german}{"|}{%
@@ -725,6 +752,8 @@
\declare@shorthand{german}{""}{\hskip\z@skip}
\declare@shorthand{german}{"~}{\textormath{\leavevmode\hbox{-}}{-}}
\declare@shorthand{german}{"=}{\penalty\@M-\hskip\z@skip}
+\declare@shorthand{german}{"/}{\textormath
+ {\bbl@allowhyphens\discretionary{/}{}{/}\bbl@allowhyphens}{}}
% \end{macrocode}
%
% \begin{macro}{\mdqon}
@@ -793,7 +822,7 @@
% \emph{Babel}.
% \url{http://www.ctan.org/pkg/babel}.
% \bibitem{HP} Partl, Hubert:
-% \emph{German \TeX}, \emph{TUGboat} 9 (1988) \#1, p.~70--72.
+% \emph{German \TeX}, \emph{TUGboat} 9/1 (1988), p.~70--72.
% \bibitem{gerdoc} Raichle, Bernd:
% \emph{German}.
% \url{http://www.ctan.org/pkg/german}.
diff --git a/Master/texmf-dist/source/generic/babel-german/ngermanb.dtx b/Master/texmf-dist/source/generic/babel-german/ngermanb.dtx
index 04f75ba8cb9..4e305683df7 100644
--- a/Master/texmf-dist/source/generic/babel-german/ngermanb.dtx
+++ b/Master/texmf-dist/source/generic/babel-german/ngermanb.dtx
@@ -28,7 +28,7 @@
% by Bernd Raichle, Hubert Partl et.al.
%
% \fi
-% \CheckSum{370}
+% \CheckSum{365}
%
% \iffalse
% Tell the \LaTeX\ system who we are and write an entry on the
@@ -42,7 +42,7 @@
%<germanb>\ProvidesLanguage{ngermanb}
%\fi
%\ProvidesFile{ngermanb.dtx}
- [2016/11/01 v2.8 German support for babel (new orthography)]
+ [2016/11/02 v2.9 German support for babel (new orthography)]
%\iffalse
%
%<*filedriver>
@@ -54,13 +54,16 @@
\usepackage{array}
\usepackage{booktabs}
\usepackage[tableposition=top]{caption}
+\usepackage{marginnote}
\newcommand*\TeXhax{\TeX hax}
\newcommand*\babel{\textsf{babel}}
\newcommand*\Babel{\textsf{Babel}}
\newcommand*\langvar{$\langle \it lang \rangle$}
+\newcommand*\graph[1]{$\langle$#1$\rangle$}
\newcommand*\note[1]{}
\newcommand*\Lopt[1]{\textsf{#1}}
\newcommand*\file[1]{\texttt{#1}}
+\newcommand*\newfeature[1]{\marginnote{\footnotesize New feature\\in v.\,#1!}}
\GlossaryMin = .33\textheight
\begin{document}
@@ -72,9 +75,6 @@
%
%\RecordChanges
%
-% \changes{Version 2.7b}{2014-10-10}{Omit warn­ing about miss­ing swiss­ger­man pat­terns
-% when \texttt{nswissgerman} is not re­quested.}
-%
% \changes{Version 2.7}{2013/12/13}{Added support for variety \texttt{nswissgerman}.}
% \changes{Version 2.7}{2013/12/13}{Revised \texttt{naustrian} support.}
% \changes{Version 2.7}{2013/12/13}{Revised documentation: Turn the \babel{}
@@ -86,7 +86,7 @@
%
% \title{Babel support for the German language (new~orthography)}
% \author{Johannes Braams \and Bernd Raichle \and Walter Schmidt \and J\"urgen Spitzm\"uller\thanks{%
-% Current maintainer. Address correspondence to juergen (at) spitzmueller (dot) org.}}
+% Current maintainer. Please report issues via \protect\url{https://github.com/jspitz/babel-german}.}}
% \date{\fileversion\ (\filedate)}
% \maketitle
%
@@ -138,59 +138,65 @@
% by \file{ngermanb.ldf}}\label{tab:german-quote}
% \begin{tabular}{l>{\raggedright}p{.9\textwidth}}
% \toprule
-% |"a| & umlaut \"a (shorthand for |\"a|). Similar shorthands are
+% |"a| & Umlaut \graph{\"a} (shorthand for |\"a|). Similar shorthands are
% available for all other lower- and uppercase
% vowels (umlauts: |"a|, |"o|, |"u|, |"A|, |"O|,
-% |"U|, as well as tremata: |"e|, |"i|, |"E|, |"I|). \tabularnewline
-% |"s| & German \ss{} (shorthand for |\ss{}|). \tabularnewline
-% |"z| & German \ss{} (shorthand for |\ss{}|). \tabularnewline
-% |"S| & |SS| (|\uppercase{"s}|, since \ss{} must be written
-% as SS in uppercase writing). \tabularnewline
-% |"Z| & |SZ| (|\uppercase{"z}|). An alternative to |"S| common
-% in traditional spelling, where \ss{} could also
-% be written as SZ instead of SS in uppercase writing.
-% Note that, with reformed orthography, the SZ
-% variant has been deprecated in favour of SS only. \tabularnewline
-% \verb="|= & disable ligature at this position
-% (e.\,g. \verb=Auf"|lage=). \tabularnewline
-% |"-| & an additional breakpoint that does still
-% allow for hyphenation at the breakpoints preset in
+% |"U|; tremata: |"e|, |"i|, |"E|, |"I|). \tabularnewline
+% |"s| & German \graph{\ss} (shorthand for |\ss{}|). \tabularnewline
+% |"z| & German \graph{\ss} (shorthand for |\ss{}|).
+% The difference to |"s| is the uppercase version. \tabularnewline
+% |"S| & |\uppercase{"s}|, typeset as \graph{SS}(\graph{\ss}
+% must be written as \graph{SS} in uppercase writing). \tabularnewline
+% |"Z| & |\uppercase{"z}|, typeset as \graph{SZ}. In traditional
+% spelling, \graph{\ss} could also be written as \graph{SZ}
+% instead of \graph{SS} in uppercase writing. Note that,
+% with reformed orthography, the \graph{SZ} variant has
+% been deprecated in favour of \graph{SS} only. \tabularnewline
+% \verb="|= & Disable ligature at this position (e.\,g., at morpheme
+% boundaries, as in \verb=Auf"|lage=). \tabularnewline
+% |"-| & An additional breakpoint that does still
+% allow for hyphenation at the breakpoints preset in
% the hyphenation patterns (as opposed to |\-|). \tabularnewline
-% |""| & a breakpoint that does not output a hyphen sign
-% if the line break is performed (useful for compound
-% words with hyphen, e.\,g.\ |(Un-)""Sinn|). \tabularnewline
-% |"~| & a compound word mark without a breakpoint. Useful for
-% cases such as |bergauf und "~ab|. \tabularnewline
-% |"=| & a compound word mark with a breakpoint, allowing
+% |""| & A breakpoint that does not output a hyphen if the line
+% break is performed (useful for compound words with
+% hyphen, e.\,g., |(Un-)""Sinn|). \tabularnewline
+% |"~| & An explicit hyphen without a breakpoint. Useful for
+% cases where the hyphen should stick at the following
+% word, e.\,g., |bergauf und "~ab| . \tabularnewline
+% |"=| & An explicit hyphen with a breakpoint, allowing
% for hyphenation at the other points preset in the
-% hyphenation patterns (as opposed to plain |-|). \tabularnewline
-% |"`| & German left double quotes (i.\,e. ,,). \tabularnewline
-% |"'| & German right double quotes (i.\,e. ``). \tabularnewline
-% |"<| & French/Swiss left double quotes (i.\,e. <<). \tabularnewline
-% |">| & French/Swiss right double quotes (i.\,e. >>). \tabularnewline
+% hyphenation patterns (as opposed to plain |-|);
+% useful for long compounds. \tabularnewline
+% |"/| & \newfeature{2.9}A slash that allows for a linebreak.
+% As opposed to |\slash{}|, hyphenation at the breakpoints
+% preset in the hyphenation patterns is still allowed. \tabularnewline
+% |"`| & German left double quotes \graph{,,}. \tabularnewline
+% |"'| & German right double quotes \graph{``}. \tabularnewline
+% |"<| & French/Swiss left double quotes \graph{<<}. \tabularnewline
+% |">| & French/Swiss right double quotes \graph{>>}. \tabularnewline
% \bottomrule
% \end{tabular}
% \end{center}
% \end{table}
%
-% Table~\ref{tab:more-quote} lists some macros for quotation marks
+% Table~\ref{tab:more-quote} lists some \babel\ macros for quotation marks
% that might be used as an alternative to the quotation mark shorthands
% provided by \file{ngermanb.ldf}.
% \begin{table}[!h]
% \begin{center}
% \small
% \caption{Alternative commands for quotation marks (provided by \babel)}\label{tab:more-quote}
-% \begin{tabular}{lp{9cm}}
+% \begin{tabular}{lp{.88\textwidth}}
% \toprule
-% |\glqq| & German left double quotes (i.\,e. ,,). \tabularnewline
-% |\grqq| & German right double quotes (i.\,e. ``). \tabularnewline
-% |\glq| & German left single quotes (i.\,e. ,). \tabularnewline
-% |\grq| & German right single quotes (i.\,e. `). \tabularnewline
-% |\flqq| & French/Swiss left double quotes (i.\,e. <<). \tabularnewline
-% |\frqq| & French/Swiss right double quotes (i.\,e. >>). \tabularnewline
-% |\flq| & French/Swiss left single quotes (i.\,e. \guilsinglleft). \tabularnewline
-% |\frq| & French/Swiss right single quotes (i.\,e. \guilsinglright). \tabularnewline
-% |\dq| & the original quotation mark character (i.\,e. |"|). \tabularnewline
+% |\glqq| & German left double quotes \graph{,,}. \tabularnewline
+% |\grqq| & German right double quotes \graph{``}. \tabularnewline
+% |\glq| & German left single quotes \graph{,}. \tabularnewline
+% |\grq| & German right single quotes \graph{`}. \tabularnewline
+% |\flqq| & French/Swiss left double quotes \graph{<<}. \tabularnewline
+% |\frqq| & French/Swiss right double quotes \graph{>>}. \tabularnewline
+% |\flq| & French/Swiss left single quotes \graph{\guilsinglleft}. \tabularnewline
+% |\frq| & French/Swiss right single quotes \graph{\guilsinglright}. \tabularnewline
+% |\dq| & The straight quotation mark character \graph{\textquotedbl}. \tabularnewline
% \bottomrule
% \end{tabular}
% \end{center}
@@ -203,8 +209,8 @@
%
% \subsection{General settings}
%
-% If \file{ngermanb.ldf} is read via the \babel\ option \Lopt{ngermanb},
-% we make it behave as if \Lopt{ngerman} was specified.
+% If \file{ngermanb.ldf} is read via the deprecated \babel\ option
+% \Lopt{ngermanb}, we make it behave as if \Lopt{ngerman} was specified.
% \iffalse
%<*germanb>
% \fi
@@ -216,16 +222,16 @@
% \end{macrocode}
%
% The macro |\LdfInit| takes care of preventing that this file is
-% loaded more than once, checking the category code of the
-% \texttt{@} sign, etc.
+% loaded more than once with the same option, checking the category
+% code of the \texttt{@} sign, etc.
% \begin{macrocode}
\LdfInit\CurrentOption{captions\CurrentOption}
% \end{macrocode}
%
% If \file{ngermanb.ldf} is read as an option, i.e., by the |\usepackage|
-% command, \texttt{ngerman} will be an `unknown' language, so we
+% command, \texttt{ngerman} could be an `unknown' language, so we
% have to make it known. We check for the existence of
-% |\l@ngerman| to see whether we have to do something here.
+% |\l@ngerman| and issue a warning if it is unknown.
%
% \begin{macrocode}
\ifx\l@ngerman\@undefined
@@ -236,32 +242,29 @@
%
% We set \texttt{naustrian} and \texttt{nswissgerman} as dialects
% of \texttt{ngerman}, since they use the same hyphenation patterns
-% than \texttt{ngerman}.
+% than \texttt{ngerman}. If no \texttt{ngerman} patterns are found,
+% we issue a warning.
% \changes{Version 2.8}{2016/11/01}{Only add dialects if the respective
% variety is loaded}
+% \changes{Version 2.9}{2016/11/02}{Do not attempt to load \cs{l@naustrian}
+% or \cs{l@nswissgerman}, which do not exist}
% \begin{macrocode}
\def\bbl@tempa{naustrian}
\ifx\CurrentOption\bbl@tempa
- \ifx\l@naustrian\@undefined
- \ifx\l@ngerman\@undefined
- \@nopatterns{Austrian (new orthography) and German (new orthography)}
- \adddialect\l@naustrian0
- \else
- \@nopatterns{Austrian}
- \adddialect\l@naustrian\l@ngerman
- \fi
+ \ifx\l@ngerman\@undefined
+ \@nopatterns{German (new orthography), needed by Austrian (new orthography)}
+ \adddialect\l@naustrian0
+ \else
+ \adddialect\l@naustrian\l@ngerman
\fi
\fi
\def\bbl@tempa{nswissgerman}
\ifx\CurrentOption\bbl@tempa
- \ifx\l@nswissgerman\@undefined
- \ifx\l@ngerman\@undefined
- \@nopatterns{Swiss German (new orthography) and German (new orthography)}
- \adddialect\l@nswissgerman0
- \else
- \@nopatterns{Swiss German (new orthography)}
- \adddialect\l@nswissgerman\l@ngerman
- \fi
+ \ifx\l@ngerman\@undefined
+ \@nopatterns{German (new orthography), needed by Swiss German (new orthography)}
+ \adddialect\l@nswissgerman0
+ \else
+ \adddialect\l@nswissgerman\l@ngerman
\fi
\fi
% \end{macrocode}
@@ -331,7 +334,8 @@
% \begin{macro}{\captionsnaustrian}
% The macro |\captionsnaustrian| builds on |\@captionsngerman|, but
% redefines some strings following Austrian conventions (for the
-% respective variants, cf. \cite{vwb}).
+% respective variants, cf. \cite{vwb}). It is only defined if
+% \texttt{naustrian} is requested.
% \changes{Version 2.8}{2016/11/01}{Only define \cs{captionsnaustrian} if
% \texttt{naustrian} is requested.}
% \begin{macrocode}
@@ -347,7 +351,8 @@
% \begin{macro}{\captionsnswissgerman}
% The macro |\captionsnswissgerman| builds on |\@captionsngerman|, but
% redefines some strings following Swiss conventions (for the
-% respective variants, cf. \cite{vwb}).
+% respective variants, cf. \cite{vwb}). It is only defined if
+% \texttt{nswissgerman} is requested.
% \changes{Version 2.8}{2016/11/01}{Only define \cs{captionsnswissgerman} if
% \texttt{nswissgerman} is requested.}
% \begin{macrocode}
@@ -419,32 +424,44 @@
%
% \subsection{Extras}
%
-% \begin{macro}{\extrasngerman}
% \begin{macro}{\extrasnaustrian}
% \begin{macro}{\extrasnswissgerman}
-% \begin{macro}{\noextrasngerman}
+% \changes{Version 2.7}{2013/12/13}{Added \cs{extrasnswissgerman}.}
+% \begin{macro}{\extrasngerman}
% \begin{macro}{\noextrasnaustrian}
% \begin{macro}{\noextrasnswissgerman}
+% \changes{Version 2.7}{2013/12/13}{Added \cs{noextrasnswissgerman}.}
+% \begin{macro}{\noextrasngerman}
% The macros |\extrasngerman|, |\extrasnaustrian|
% and |\extrasnswissgerman|, respectively, will perform all the extra
% definitions needed for the German language or the respective
% variety. The macro |\noextrasngerman| is used to cancel the
% actions of |\extrasngerman|. |\noextrasnaustrian| and
% |\noextrasnswissgerman| behave analoguously.
-% \changes{Version 2.7}{2013/12/13}{Added \cs{extrasnswissgerman}
-% and \cs{noextrasnswissgerman}.}
%
-% For all German varieties, the character \texttt{"} is
-% made active. This is done once, later on its definition may vary.
+% First, the character \texttt{"} is declared active for all German
+% varieties. This is done once, later on its definition may vary.
% \begin{macrocode}
\initiate@active@char{"}
+% \end{macrocode}
+%
+% Depending on the option with which the language definition file
+% has been loaded, the macro |\extrasngerman|, |\extrasnaustrian|
+% or |\extrasnswissgerman| is defined. Each of those is identical:
+% they load the shorthands defined below and activate the \texttt{"}
+% character.
+% \begin{macrocode}
\@namedef{extras\CurrentOption}{%
\languageshorthands{ngerman}}
\expandafter\addto\csname extras\CurrentOption\endcsname{%
\bbl@activate{"}}
% \end{macrocode}
-% Turn the shorthands off again outside of German.
-% \changes{Version 2.6j}{1999/12/16}{Deactivate shorthands ouside of
+% Next, again depending on the option with which the language definition
+% file has been loaded, the macro |\noextrasngerman|, |\noextrasnaustrian|
+% or |\noextrasnswissgerman| is defined.
+% These deactivate the \texttt{"} character and thus turn the shorthands
+% off again outside of the respective variety.
+% \changes{Version 2.6j}{1999/12/16}{Deactivate shorthands outside of
% German}
% \changes{Version 2.7}{2013/12/13}{Deactivate shorthands also outside of
% \texttt{naustrian} and \texttt{nswissgerman}.}
@@ -554,7 +571,9 @@
\declare@shorthand{ngerman}{"<}{\flqq}
\declare@shorthand{ngerman}{">}{\frqq}
% \end{macrocode}
-% and some additional commands (hyphenation and ligature control):
+% and some additional commands (hyphenation, line breaking and ligature control):
+% \changes{Version 2.9}{2016/11/02}{Add \texttt{"/} shortcut for breakable slash
+% (taken from \texttt{dutch.ldf})}
% \begin{macrocode}
\declare@shorthand{ngerman}{"-}{\nobreak\-\bbl@allowhyphens}
\declare@shorthand{ngerman}{"|}{%
@@ -563,6 +582,8 @@
\declare@shorthand{ngerman}{""}{\hskip\z@skip}
\declare@shorthand{ngerman}{"~}{\textormath{\leavevmode\hbox{-}}{-}}
\declare@shorthand{ngerman}{"=}{\penalty\@M-\hskip\z@skip}
+\declare@shorthand{ngerman}{"/}{\textormath
+ {\bbl@allowhyphens\discretionary{/}{}{/}\bbl@allowhyphens}{}}
% \end{macrocode}
%
% \begin{macro}{\mdqon}
@@ -622,7 +643,7 @@
% \emph{Babel}.
% \url{http://www.ctan.org/pkg/babel}.
% \bibitem{HP} Partl, Hubert:
-% \emph{German \TeX}, \emph{TUGboat} 9 (1988) \#1, p.~70--72.
+% \emph{German \TeX}, \emph{TUGboat} 9/1 (1988), p.~70--72.
% \bibitem{gerdoc} Raichle, Bernd:
% \emph{German}.
% \url{http://www.ctan.org/pkg/german}.
diff --git a/Master/texmf-dist/tex/generic/babel-german/austrian.ldf b/Master/texmf-dist/tex/generic/babel-german/austrian.ldf
index ec3bc329d9c..38d2df9ba78 100644
--- a/Master/texmf-dist/tex/generic/babel-german/austrian.ldf
+++ b/Master/texmf-dist/tex/generic/babel-german/austrian.ldf
@@ -33,7 +33,7 @@
%% juergen at spitzmueller dot org
%%
\ProvidesLanguage{austrian}
- [2016/11/01 v2.8 German support for babel (traditional orthography)]
+ [2016/11/02 v2.9 German support for babel (traditional orthography)]
\input germanb.ldf\relax
%%
%% \CharacterTable
diff --git a/Master/texmf-dist/tex/generic/babel-german/german.ldf b/Master/texmf-dist/tex/generic/babel-german/german.ldf
index 6ebc3253e20..598e0856183 100644
--- a/Master/texmf-dist/tex/generic/babel-german/german.ldf
+++ b/Master/texmf-dist/tex/generic/babel-german/german.ldf
@@ -33,7 +33,7 @@
%% juergen at spitzmueller dot org
%%
\ProvidesLanguage{german}
- [2016/11/01 v2.8 German support for babel (traditional orthography)]
+ [2016/11/02 v2.9 German support for babel (traditional orthography)]
\input germanb.ldf\relax
%%
%% \CharacterTable
diff --git a/Master/texmf-dist/tex/generic/babel-german/germanb.ldf b/Master/texmf-dist/tex/generic/babel-german/germanb.ldf
index cc5283ebecd..28b992174a1 100644
--- a/Master/texmf-dist/tex/generic/babel-german/germanb.ldf
+++ b/Master/texmf-dist/tex/generic/babel-german/germanb.ldf
@@ -33,7 +33,7 @@
%% juergen at spitzmueller dot org
%%
\ProvidesLanguage{germanb}
- [2016/11/01 v2.8 German support for babel (traditional orthography)]
+ [2016/11/02 v2.9 German support for babel (traditional orthography)]
\def\bbl@tempa{germanb}
\ifx\CurrentOption\bbl@tempa
\def\CurrentOption{german}
@@ -56,14 +56,11 @@
\fi
\def\bbl@tempa{austrian}
\ifx\CurrentOption\bbl@tempa
- \ifx\l@austrian\@undefined
- \ifx\l@german\@undefined
- \@nopatterns{Austrian (trad. orthography) and German (trad. orthography)}
- \adddialect\l@austrian0
- \else
- \@nopatterns{Austrian (trad. orthography)}
- \adddialect\l@austrian\l@german
- \fi
+ \ifx\l@german\@undefined
+ \@nopatterns{German (trad. orthography), needed by Austrian (trad. orthography)}
+ \adddialect\l@austrian0
+ \else
+ \adddialect\l@austrian\l@german
\fi
\fi
\def\bbl@tempa{swissgerman}
@@ -212,6 +209,8 @@
\declare@shorthand{german}{""}{\hskip\z@skip}
\declare@shorthand{german}{"~}{\textormath{\leavevmode\hbox{-}}{-}}
\declare@shorthand{german}{"=}{\penalty\@M-\hskip\z@skip}
+\declare@shorthand{german}{"/}{\textormath
+ {\bbl@allowhyphens\discretionary{/}{}{/}\bbl@allowhyphens}{}}
\def\mdqon{\shorthandon{"}}
\def\mdqoff{\shorthandoff{"}}
\def\ck{\allowhyphens\discretionary{k-}{k}{ck}\allowhyphens}
diff --git a/Master/texmf-dist/tex/generic/babel-german/naustrian.ldf b/Master/texmf-dist/tex/generic/babel-german/naustrian.ldf
index 35cc28d1c03..a8af6e0e1fd 100644
--- a/Master/texmf-dist/tex/generic/babel-german/naustrian.ldf
+++ b/Master/texmf-dist/tex/generic/babel-german/naustrian.ldf
@@ -33,7 +33,7 @@
%% juergen at spitzmueller dot org
%%
\ProvidesLanguage{naustrian}
- [2016/11/01 v2.8 German support for babel (new orthography)]
+ [2016/11/02 v2.9 German support for babel (new orthography)]
\input ngermanb.ldf\relax
%%
%% \CharacterTable
diff --git a/Master/texmf-dist/tex/generic/babel-german/ngerman.ldf b/Master/texmf-dist/tex/generic/babel-german/ngerman.ldf
index f9d01e5b754..2cbc65e1e3f 100644
--- a/Master/texmf-dist/tex/generic/babel-german/ngerman.ldf
+++ b/Master/texmf-dist/tex/generic/babel-german/ngerman.ldf
@@ -33,7 +33,7 @@
%% juergen at spitzmueller dot org
%%
\ProvidesLanguage{ngerman}
- [2016/11/01 v2.8 German support for babel (new orthography)]
+ [2016/11/02 v2.9 German support for babel (new orthography)]
\input ngermanb.ldf\relax
%%
%% \CharacterTable
diff --git a/Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf b/Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf
index e1a8093877c..72df6ac8578 100644
--- a/Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf
+++ b/Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf
@@ -33,7 +33,7 @@
%% juergen at spitzmueller dot org
%%
\ProvidesLanguage{ngermanb}
- [2016/11/01 v2.8 German support for babel (new orthography)]
+ [2016/11/02 v2.9 German support for babel (new orthography)]
\def\bbl@tempa{ngermanb}
\ifx\CurrentOption\bbl@tempa
\def\CurrentOption{ngerman}
@@ -45,26 +45,20 @@
\fi
\def\bbl@tempa{naustrian}
\ifx\CurrentOption\bbl@tempa
- \ifx\l@naustrian\@undefined
- \ifx\l@ngerman\@undefined
- \@nopatterns{Austrian (new orthography) and German (new orthography)}
- \adddialect\l@naustrian0
- \else
- \@nopatterns{Austrian}
- \adddialect\l@naustrian\l@ngerman
- \fi
+ \ifx\l@ngerman\@undefined
+ \@nopatterns{German (new orthography), needed by Austrian (new orthography)}
+ \adddialect\l@naustrian0
+ \else
+ \adddialect\l@naustrian\l@ngerman
\fi
\fi
\def\bbl@tempa{nswissgerman}
\ifx\CurrentOption\bbl@tempa
- \ifx\l@nswissgerman\@undefined
- \ifx\l@ngerman\@undefined
- \@nopatterns{Swiss German (new orthography) and German (new orthography)}
- \adddialect\l@nswissgerman0
- \else
- \@nopatterns{Swiss German (new orthography)}
- \adddialect\l@nswissgerman\l@ngerman
- \fi
+ \ifx\l@ngerman\@undefined
+ \@nopatterns{German (new orthography), needed by Swiss German (new orthography)}
+ \adddialect\l@nswissgerman0
+ \else
+ \adddialect\l@nswissgerman\l@ngerman
\fi
\fi
\@namedef{@captionsngerman}{%
@@ -178,6 +172,8 @@
\declare@shorthand{ngerman}{""}{\hskip\z@skip}
\declare@shorthand{ngerman}{"~}{\textormath{\leavevmode\hbox{-}}{-}}
\declare@shorthand{ngerman}{"=}{\penalty\@M-\hskip\z@skip}
+\declare@shorthand{ngerman}{"/}{\textormath
+ {\bbl@allowhyphens\discretionary{/}{}{/}\bbl@allowhyphens}{}}
\def\mdqon{\shorthandon{"}}
\def\mdqoff{\shorthandoff{"}}
\ldf@finish\CurrentOption
diff --git a/Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf b/Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf
index 8c514d05831..353c0f88427 100644
--- a/Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf
+++ b/Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf
@@ -33,7 +33,7 @@
%% juergen at spitzmueller dot org
%%
\ProvidesLanguage{nswissgerman}
- [2016/11/01 v2.8 German support for babel (new orthography)]
+ [2016/11/02 v2.9 German support for babel (new orthography)]
\input ngermanb.ldf\relax
%%
%% \CharacterTable
diff --git a/Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf b/Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf
index bdd9328c50c..7a61bd46cd6 100644
--- a/Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf
+++ b/Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf
@@ -33,7 +33,7 @@
%% juergen at spitzmueller dot org
%%
\ProvidesLanguage{swissgerman}
- [2016/11/01 v2.8 German support for babel (traditional orthography)]
+ [2016/11/02 v2.9 German support for babel (traditional orthography)]
\input germanb.ldf\relax
%%
%% \CharacterTable