From 5e93f6d5bb5d6bb986f74910796cdc2337304d44 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 4 Nov 2016 21:36:39 +0000 Subject: tracklang (4nov16) git-svn-id: svn://tug.org/texlive/trunk@42435 c570f23f-e606-0410-a88d-b1316a301751 --- .../source/latex/tracklang/tracklang.dtx | 139 ++++++++++++++------- .../source/latex/tracklang/tracklang.ins | 2 +- 2 files changed, 98 insertions(+), 43 deletions(-) (limited to 'Master/texmf-dist/source/latex') diff --git a/Master/texmf-dist/source/latex/tracklang/tracklang.dtx b/Master/texmf-dist/source/latex/tracklang/tracklang.dtx index 98a2e09362a..d2c533d52e0 100644 --- a/Master/texmf-dist/source/latex/tracklang/tracklang.dtx +++ b/Master/texmf-dist/source/latex/tracklang/tracklang.dtx @@ -2,15 +2,15 @@ % tracklang.dtx generated using makedtx version 1.1 (c) Nicola Talbot % Command line args: % -author "Nicola Talbot" -% -section "chapter" -% -doc "tracklang-manual.tex" % -src "tracklang.sty\Z=>tracklang.sty" % -src "tracklang.tex\Z=>tracklang.tex" % -src "tracklang-region-codes.tex\Z=>tracklang-region-codes.tex" % -src "tracklang-scripts.sty\Z=>tracklang-scripts.sty" % -src "tracklang-scripts.tex\Z=>tracklang-scripts.tex" +% -section "chapter" +% -doc "tracklang-manual.tex" % tracklang -% Created on 2016/10/11 9:50 +% Created on 2016/11/3 19:43 %\fi %\iffalse %<*package> @@ -59,7 +59,7 @@ pdfauthor={Nicola L.C. Talbot}, pdftitle={tracklang: tracking language options}]{hyperref} -\CheckSum{3870} +\CheckSum{3892} \appto\MacroFont{\scriptsize} \renewcommand*{\usage}[1]{\textit{\hyperpage{#1}}} @@ -278,11 +278,11 @@ and~\ref{tab:nonisoopts}} % %\MakeShortVerb{"} % -%\title{tracklang v1.3.2: +%\title{tracklang v1.3.3: %tracking language options} %\author{Nicola L. C. Talbot\\\url{http://www.dickimaw-books.com/}} % -%\date{2016-10-11} +%\date{2016-11-03} %\maketitle % %\begin{abstract} @@ -2859,9 +2859,7 @@ and~\ref{tab:nonisoopts}} %by \styfmt{tracklang} (which may not be the same as \meta{dialect}). % %\item\ics{CurrentTrackedLanguage} -%The root language label used -%by \styfmt{tracklang}. (This should usually be the same as -%\ics{languagename}.) +%The root language label used by \styfmt{tracklang}. %\item\ics{CurrentTrackedDialectModifier} The dialect modifier. %\item\ics{CurrentTrackedDialectVariant} The dialect variant. %\item\ics{CurrentTrackedDialectScript} The dialect script. @@ -3191,7 +3189,7 @@ and~\ref{tab:nonisoopts}} % packages such as \styfmt{etoolbox}. % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{tracklang}[2016/10/11 v1.3.2 (NLCT) Track Languages] +\ProvidesPackage{tracklang}[2016/11/03 v1.3.3 (NLCT) Track Languages] % \end{macrocode} %\begin{macro}{\@tracklang@declareoption} % Set up package options. @@ -3444,7 +3442,7 @@ and~\ref{tab:nonisoopts}} % \end{macrocode} % Version info. % \begin{macrocode} -\expandafter\def\csname ver@tracklang.tex\endcsname{2016/10/11 v1.3.2 +\expandafter\def\csname ver@tracklang.tex\endcsname{2016/11/03 v1.3.3 (NLCT) Track Languages Generic Code} % \end{macrocode} % Define a long command for determining the existence of a control @@ -5037,27 +5035,59 @@ and~\ref{tab:nonisoopts}} %Provided for use by language hooks to establish the current tracked %dialect. This command doesn't change \cs{languagename} or %hyphenation patterns etc. It just provides convenient commands that -%can be accessed. +%can be accessed. The argument may be a \styfmt{tracklang} dialect +%label or the language hook label from which a \styfmt{tracklang} +%dialect label can be obtained or the root language label. +%\changes{1.3.3}{2016-11-03}{fixed mapping} % \begin{macrocode} \def\SetCurrentTrackedDialect#1{% - \edef\CurrentTrackedDialect{\GetTrackedDialectFromMapping{#1}}% + \edef\CurrentTrackedDialect{#1}% \IfTrackedDialect{\CurrentTrackedDialect}% {}% {% % \end{macrocode} -% Has the root language name been supplied? +% Has a mapping from this dialect to a tracklang dialect been supplied? % \begin{macrocode} - \IfTrackedLanguage{#1}% + \IfHookHasMappingFromTrackedDialect{\CurrentTrackedDialect}% {% + \IfTrackedDialect{\GetTrackedDialectFromMapping\CurrentTrackedDialect}% + {% + \edef\CurrentTrackedDialect{\GetTrackedDialectFromMapping + {\CurrentTrackedDialect}}% + }% + {% +% \end{macrocode} +% Has the root language name been supplied? +% \begin{macrocode} + \IfTrackedLanguage{#1}% + {% % \end{macrocode} % Get the last dialect to be tracked with this language. +% \begin{macrocode} + \edef\@tracklang@dialects{\TrackedDialectsFromLanguage{#1}}% + \@tracklang@for\@tracklang@dialect:=\@tracklang@dialects\do{% + \let\CurrentTrackedDialect\@tracklang@dialect + }% + }% + {}% + }% + }% + {% +% \end{macrocode} +% Has the root language name been supplied? % \begin{macrocode} - \edef\@tracklang@dialects{\TrackedDialectsFromLanguage{#1}}% - \@tracklang@for\@tracklang@dialect:=\@tracklang@dialects\do{% - \let\CurrentTrackedDialect\@tracklang@dialect + \IfTrackedLanguage{#1}% + {% +% \end{macrocode} +% Get the last dialect to be tracked with this language. +% \begin{macrocode} + \edef\@tracklang@dialects{\TrackedDialectsFromLanguage{#1}}% + \@tracklang@for\@tracklang@dialect:=\@tracklang@dialects\do{% + \let\CurrentTrackedDialect\@tracklang@dialect + }% }% + {}% }% - {}% }% \IfTrackedDialect{\CurrentTrackedDialect}% {% @@ -7776,6 +7806,9 @@ and~\ref{tab:nonisoopts}} \expandafter \let\expandafter\@tracklang@tmp\csname @tracklang@add@#1\endcsname \expandafter\def\csname @tracklang@add@#1\expandafter\endcsname +% \end{macrocode} +%\changes{1.3.3}{2016-11-03}{fixed mapping order} +% \begin{macrocode} \expandafter{\@tracklang@tmp\SetTrackedDialectLabelMap{#1}{#6}}% \fi % \end{macrocode} @@ -9420,7 +9453,7 @@ and~\ref{tab:nonisoopts}} % Try the mapping label next. % \begin{macrocode} \edef\@tracklang@tmp{% - \csname @tracklang@dialectmap@to@\CurrentTrackedDialect\endcsname}% + \csname @tracklang@dialectmap@tohook@\CurrentTrackedDialect\endcsname}% \@tracklang@ifundef{#2\@tracklang@tmp}% {% % \end{macrocode} @@ -9497,20 +9530,28 @@ and~\ref{tab:nonisoopts}} %\begin{macro}{\SetTrackedDialectLabelMap} %\changes{1.3}{2016-10-07}{new} %\begin{definition} -%\cs{SetTrackedDialectLabelMap}\marg{from}\marg{to} +%\cs{SetTrackedDialectLabelMap}\marg{tracklang-label}\marg{hook-label} %\end{definition} %Define a mapping between a \styfmt{tracklang} dialect label and the %corresponding label used by the language hook. For example, %\texttt{ngermanDE} is a recognised \styfmt{tracklang} dialect %label, but the closest \sty{babel} equivalent is \texttt{ngerman}, %so \texttt{ngermanDE} would need to be mapped to \texttt{ngerman} -%for the language hooks. The arguments are \meta{from} (the -%\styfmt{tracklang} dialect label) and \meta{to} (the \sty{babel}, +%for the language hooks. The arguments are \meta{tracklang-label} (the +%\styfmt{tracklang} dialect label) and \meta{hook-label} (the \sty{babel}, %\sty{polyglossia} etc label). % \begin{macrocode} \def\SetTrackedDialectLabelMap#1#2{% - \@tracklang@enamedef{@tracklang@dialectmap@to@#1}{#2}% - \@tracklang@enamedef{@tracklang@dialectmap@from@#2}{#1}% +% \end{macrocode} +% Store the mapping that can obtain the hook label from the +% tracklang label (tracklang to hook). +% \begin{macrocode} + \@tracklang@enamedef{@tracklang@dialectmap@tohook@#1}{#2}% +% \end{macrocode} +% Store the mapping that can obtain the tracklang label from the +% hook label. +% \begin{macrocode} + \@tracklang@enamedef{@tracklang@dialectmap@fromhook@#2}{#1}% } % \end{macrocode} %\end{macro} @@ -9518,13 +9559,27 @@ and~\ref{tab:nonisoopts}} %\begin{macro}{\IfTrackedDialectHasMapping} %\changes{1.3}{2016-10-07}{new} %\begin{definition} -%\cs{IfTrackedDialectHasMapping}\marg{label}\marg{true}\marg{false} +%\cs{IfTrackedDialectHasMapping}\marg{tracklang label}\marg{true}\marg{false} %\end{definition} -%Tests if the \sty{tracklang} dialect \meta{label} has been assigned -%a mapping. +%Test if the \styfmt{tracklang} dialect label has been assigned a +%mapping to a language hook. % \begin{macrocode} \def\IfTrackedDialectHasMapping#1#2#3{% - \@tracklang@ifundef{@tracklang@dialectmap@to@#1}{#3}{#2}% + \@tracklang@ifundef{@tracklang@dialectmap@tohook@#1}{#3}{#2}% +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\IfHookHasMappingFromTrackedDialect} +%\changes{1.3.3}{2016-11-03}{new} +%\begin{definition} +%\cs{IfHookHasMappingFromTrackedDialect}\marg{hook label}\marg{true}\marg{false} +%\end{definition} +%Tests if the language hook label has been assigned a mapping from a +%\styfmt{tracklang} dialect label. +% \begin{macrocode} +\def\IfHookHasMappingFromTrackedDialect#1#2#3{% + \@tracklang@ifundef{@tracklang@dialectmap@fromhook@#1}{#3}{#2}% } % \end{macrocode} %\end{macro} @@ -9532,14 +9587,14 @@ and~\ref{tab:nonisoopts}} %\begin{macro}{\GetTrackedDialectToMapping} %\changes{1.3}{2016-10-07}{new} %\begin{definition} -%\cs{GetTrackedDialectToMapping}\marg{label} +%\cs{GetTrackedDialectToMapping}\marg{tracklang label} %\end{definition} -%Gets the mapping for the given \sty{tracklang} dialect label or the -%\meta{label} itself if no mapping has been defined. +%Gets the mapping for the given \styfmt{tracklang} dialect label to a +%language hook label or the \meta{label} itself if no mapping has been defined. % \begin{macrocode} \def\GetTrackedDialectToMapping#1{% - \@tracklang@ifundef{@tracklang@dialectmap@to@#1}{#1}% - {\csname @tracklang@dialectmap@to@#1\endcsname}% + \@tracklang@ifundef{@tracklang@dialectmap@tohook@#1}{#1}% + {\csname @tracklang@dialectmap@tohook@#1\endcsname}% } % \end{macrocode} %\end{macro} @@ -9547,14 +9602,14 @@ and~\ref{tab:nonisoopts}} %\begin{macro}{\GetTrackedDialectFromMapping} %\changes{1.3}{2016-10-07}{new} %\begin{definition} -%\cs{GetTrackedDialectFromMapping}\marg{map} +%\cs{GetTrackedDialectFromMapping}\marg{language hook} %\end{definition} -%Gets the \sty{tracklang} dialect label from the \meta{map} or the -%\meta{map} itself if no mapping has been defined. +%Gets the reverse mapping from the given language hook to the +%\styfmt{tracklang} label. % \begin{macrocode} \def\GetTrackedDialectFromMapping#1{% - \@tracklang@ifundef{@tracklang@dialectmap@from@#1}{#1}% - {\csname @tracklang@dialectmap@from@#1\endcsname}% + \@tracklang@ifundef{@tracklang@dialectmap@fromhook@#1}{#1}% + {\csname @tracklang@dialectmap@fromhook@#1\endcsname}% } % \end{macrocode} %\end{macro} @@ -9826,7 +9881,7 @@ and~\ref{tab:nonisoopts}} % \end{macrocode} % Version info. % \begin{macrocode} -\expandafter\def\csname ver@tracklang-region-codes.tex\endcsname{2016/10/11 v1.3.2 +\expandafter\def\csname ver@tracklang-region-codes.tex\endcsname{2016/11/03 v1.3.3 (NLCT) Track Languages Regions}% % \end{macrocode} % @@ -10216,7 +10271,7 @@ and~\ref{tab:nonisoopts}} %\changes{1.3}{2016-10-07}{added tracklang-scripts.sty} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{tracklang-scripts}[2016/10/11 v1.3.2 (NLCT) Track +\ProvidesPackage{tracklang-scripts}[2016/11/03 v1.3.3 (NLCT) Track Language Scripts (LaTeX)] \RequirePackage{tracklang} \input{tracklang-scripts} @@ -10257,7 +10312,7 @@ Language Scripts (LaTeX)] % \end{macrocode} % Version info. % \begin{macrocode} -\expandafter\def\csname ver@tracklang-scripts.tex\endcsname{2016/10/11 v1.3.2 +\expandafter\def\csname ver@tracklang-scripts.tex\endcsname{2016/11/03 v1.3.3 (NLCT) Track Languages Scripts (Generic)}% % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/tracklang/tracklang.ins b/Master/texmf-dist/source/latex/tracklang/tracklang.ins index 95d515ac560..5fca13ec69c 100644 --- a/Master/texmf-dist/source/latex/tracklang/tracklang.ins +++ b/Master/texmf-dist/source/latex/tracklang/tracklang.ins @@ -1,4 +1,4 @@ -% tracklang.ins generated using makedtx version 1.1 2016/10/11 9:50 +% tracklang.ins generated using makedtx version 1.1 2016/11/3 19:43 \input docstrip \preamble -- cgit v1.2.3