summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-02-13 22:37:35 +0000
committerKarl Berry <karl@freefriends.org>2016-02-13 22:37:35 +0000
commitf961a4d006dd02df4e8f4429e4a046121c284295 (patch)
treefe5e822f8e6a036da7481d48aa6612973cc30a13 /Master/texmf-dist/tex/generic/babel-french/frenchb.ldf
parent6aad496527f7643fd4ce0ec486e8204cab355281 (diff)
babel-french (13feb16)
git-svn-id: svn://tug.org/texlive/trunk@39711 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel-french/frenchb.ldf')
-rw-r--r--Master/texmf-dist/tex/generic/babel-french/frenchb.ldf82
1 files changed, 26 insertions, 56 deletions
diff --git a/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf b/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf
index 0c708b3ccc9..22f52c7875c 100644
--- a/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf
+++ b/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf
@@ -33,7 +33,7 @@
%% extension .ins) which are part of the distribution.
%%
\ProvidesLanguage{frenchb}
- [2016/01/01 v3.1k French support from the babel system]
+ [2016/02/13 v3.1l French support from the babel system]
%%
%% File `frenchb.ldf'
%% Babel package for LaTeX version 2e
@@ -218,10 +218,8 @@
\fi
\ifFB@luatex@punct
\newcommand*{\FB@luatex@punct@french}{%
- \ifx\shorthandoffORI\@undefined
- \let\shorthandonORI\shorthandon
- \let\shorthandoffORI\shorthandoff
- \fi
+ \babel@save{\shorthandon}%
+ \babel@save{\shorthandoff}%
\def\shorthandoff##1{%
\ifx\PackageWarning\@undefined
\fb@warning{\noexpand\shorthandoff{;:!?} is helpless with
@@ -234,15 +232,7 @@
\fi}%
\def\shorthandon##1{}%
}
- \newcommand*{\FB@luatex@punct@nonfrench}{%
- \ifx\shorthandoffORI\@undefined
- \else
- \let\shorthandon\shorthandonORI
- \let\shorthandoff\shorthandoffORI
- \fi
- }
\FB@addto{extras}{\FB@luatex@punct@french}
- \FB@addto{noextras}{\FB@luatex@punct@nonfrench}
\def\activate@luatexpunct{%
\directlua{%
FR = \the\l@french
@@ -261,7 +251,6 @@
}%
}
\fi
-\newcount\FB@interchartokenstateORI
\ifFB@xetex@punct
\ifLaTeXe
\PackageInfo{frenchb.ldf}{No need for active punctuation characters%
@@ -277,22 +266,30 @@
\newXeTeXintercharclass\FB@guilo
\newXeTeXintercharclass\FB@guilf
\newXeTeXintercharclass\FB@guilnul
- \def\FB@charclassesORI{}
- \def\empty{}
- \def\FB@parse#1,#2\endparse{\def\FB@class{#1}%
- \def\FB@charclassesORI{#2}}%
+ \def\FBsavevariable@loop#1#2{\begingroup
+ \toks@\expandafter{\originalTeX #1}%
+ \edef\x{\endgroup
+ \def\noexpand\originalTeX{\the\toks@ #2=\the#1#2\relax}}%
+ \x}
+ \def\FB@charlist{"21,"3A,"3B,"3F,"AB,"BB,"28,"5B,"A0,"202F,%
+ "29,"5D,"7B,"7D,"2C,"2D,"2E,"22,"25,"27,"60,"2019}
\newcommand*{\FB@xetex@punct@french}{%
- \ifx\FB@charclassesORI\empty
- \FB@interchartokenstateORI=\XeTeXinterchartokenstate
- \bbl@for\FB@char
- {`\:,`\;,`\!,`\?,"AB,"BB,%
- `\(,`\[,`\{,`\,,`\.,`\-,`\),`\],`\},%
- `\%,"22,"27,"60,"2019,"A0,"202F}%
- {\edef\FB@charclassesORI{\FB@charclassesORI%
- \the\XeTeXcharclass\FB@char,}}%
- \let\shorthandonORI\shorthandon
- \let\shorthandoffORI\shorthandoff
- \fi
+ \babel@savevariable{\XeTeXinterchartokenstate}%
+ \babel@save{\shorthandon}%
+ \babel@save{\shorthandoff}%
+ \bbl@for\FB@char\FB@charlist
+ {\FBsavevariable@loop{\XeTeXcharclass}{\FB@char}}%
+ \def\shorthandoff##1{%
+ \ifx\PackageWarning\@undefined
+ \fb@warning{\noexpand\shorthandoff{;:!?} is helpless with
+ XeTeX,\\ use \noexpand\NoAutoSpacing
+ *inside a group* instead.}%
+ \else
+ \PackageWarning{frenchb.ldf}{\protect\shorthandoff{;:!?} is
+ helpless with XeTeX,\MessageBreak use \protect\NoAutoSpacing
+ \space *inside a group* instead;\MessageBreak reported}%
+ \fi}%
+ \def\shorthandon##1{}%
\XeTeXinterchartokenstate=1
\XeTeXcharclass `\: = \FB@punctthick
\XeTeXinterchartoks \z@ \FB@punctthick = {%
@@ -338,35 +335,8 @@
\bbl@for\FB@char
{`\{,`\,,`\.,`\-,`\),`\],`\},`\%,"22,"27,"60,"2019}%
{\XeTeXcharclass\FB@char=\z@}%
- \def\shorthandoff##1{%
- \ifx\PackageWarning\@undefined
- \fb@warning{\noexpand\shorthandoff{;:!?} is helpless with
- XeTeX,\\ use \noexpand\NoAutoSpacing
- *inside a group* instead.}%
- \else
- \PackageWarning{frenchb.ldf}{\protect\shorthandoff{;:!?} is
- helpless with XeTeX,\MessageBreak use \protect\NoAutoSpacing
- \space *inside a group* instead;\MessageBreak reported}%
- \fi}%
- \def\shorthandon##1{}%
- }
- \newcommand*{\FB@xetex@punct@nonfrench}{%
- \ifx\FB@charclassesORI\empty
- \else
- \bbl@for\FB@char
- {`\:,`\;,`\!,`\?,"AB,"BB,%
- `\(,`\[,`\{,`\,,`\.,`\-,`\),`\],`\},%
- `\%,"22,"27,"60,"2019,"A0,"202F}%
- {\expandafter\FB@parse\FB@charclassesORI\endparse
- \XeTeXcharclass\FB@char=\FB@class}%
- \def\FB@charclassesORI{}%
- \XeTeXinterchartokenstate=\FB@interchartokenstateORI
- \let\shorthandon\shorthandonORI
- \let\shorthandoff\shorthandoffORI
- \fi
}
\FB@addto{extras}{\FB@xetex@punct@french}
- \FB@addto{noextras}{\FB@xetex@punct@nonfrench}
\fi
\ifFB@active@punct
\initiate@active@char{:}%