From 04e521880f42c9699c6b045c32176f3f59bd11c8 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 19 Mar 2016 22:13:31 +0000 Subject: babel-french (19mar16) git-svn-id: svn://tug.org/texlive/trunk@40078 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/generic/babel-french/frenchb.ldf | 135 +++++++++++++++------ .../tex/generic/babel-french/frenchb.lua | 20 +-- 2 files changed, 112 insertions(+), 43 deletions(-) (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf b/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf index 22f52c7875c..4f81c129600 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/02/13 v3.1l French support from the babel system] + [2016/03/18 v3.2a French support from the babel system] %% %% File `frenchb.ldf' %% Babel package for LaTeX version 2e @@ -441,8 +441,6 @@ \ifFB@xetex@punct\XeTeXinterchartokenstate=0 \fi \ifFB@luatex@punct\FB@addDPspace=0 \FB@addGUILspace=0 \fi } -\newcommand*{\og}{\@empty} -\newcommand*{\fg}{\@empty} \ifLaTeXe \else \ifFBunicode @@ -469,7 +467,7 @@ \DeclareRobustCommand*{\FB@og}{\leavevmode \bgroup\FB@addGUILspace=1 \guillemotleft\egroup} \DeclareRobustCommand*{\FB@fg}{\ifdim\lastskip>\z@\unskip\fi - \bgroup\FB@addGUILspace=1 \guillemotright\egroup\xspace} + \bgroup\FB@addGUILspace=1 \guillemotright\egroup} \fi \ifFB@xetex@punct \DeclareRobustCommand*{\FB@og}{\leavevmode @@ -477,7 +475,7 @@ \FBguillspace} \DeclareRobustCommand*{\FB@fg}{\ifdim\lastskip>\z@\unskip\fi \FBguillspace - \bgroup\FBAutoSpaceGuillfalse\guillemotright\egroup\xspace} + \bgroup\FBAutoSpaceGuillfalse\guillemotright\egroup} \fi \ifFB@active@punct \DeclareRobustCommand*{\FB@og}{\leavevmode @@ -485,13 +483,16 @@ \FBguillspace} \DeclareRobustCommand*{\FB@fg}{\ifdim\lastskip>\z@\unskip\fi \FBguillspace - \guillemotright\xspace} + \guillemotright} \fi +\newcommand*{\og}{\@empty} +\newcommand*{\fg}{\@empty} \ifLaTeXe \def\bbl@frenchguillemets{\renewcommand*{\og}{\FB@og}% - \renewcommand*{\fg}{\FB@fg}} + \renewcommand*{\fg}{\FB@fg\xspace}} \renewcommand*{\og}{\textquotedblleft} - \renewcommand*{\fg}{\ifdim\lastskip>\z@\unskip\fi \textquotedblright} + \renewcommand*{\fg}{\ifdim\lastskip>\z@\unskip\fi + \textquotedblright\xspace} \else \def\bbl@frenchguillemets{\let\og\FB@og \let\fg\FB@fg} @@ -1612,36 +1613,102 @@ \let\@footnotemark\@footnotemarkFB \fi}% } -\newcommand*{\dotFFN}{.} -\newcommand*{\kernFFN}{\kern .5em} \newdimen\parindentFFN \parindentFFN=10in -\def\ftnISsymbol{\@fnsymbol\c@footnote} -\long\def\@makefntextFB#1{\ifx\thefootnote\ftnISsymbol - \@makefntextORI{#1}% - \else - \parindent=\parindentFFN - \rule\z@\footnotesep - \setbox\@tempboxa\hbox{\@thefnmark}% - \ifdim\wd\@tempboxa>\z@ - \llap{\@thefnmark}\dotFFN\kernFFN - \fi #1 - \fi}% -\AtBeginDocument{\@ifpackageloaded{bigfoot}{}% - {\ifdim\parindentFFN<10in +\newcommand*{\dotFFN}{.} +\newcommand*{\kernFFN}{\kern .5em} +\newlength\FBfnindent +\ifFB@koma + \let\@makefntextORI\@makefntext + \let\@@makefnmarkORI\@@makefnmark + \deffootnote[\FBfnindent]{0pt}{\parindentFFN}% + {\thefootnotemark\dotFFN\kernFFN} + \let\@makefntextFB\@makefntext + \let\@@makefnmarkFB\@@makefnmark + \deffootnote[\parindentFFN]{0pt}{\parindentFFN}% + {\textsuperscript{\thefootnotemark}} + \let\@makefntextTH\@makefntext + \let\@@makefnmarkTH\@@makefnmark + \let\@makefntext\@makefntextORI + \let\@@makefnmark\@@makefnmarkORI +\fi +\@ifclassloaded{memoir} + {\newcommand{\@makefntextFB}[1]{% + \def\footscript##1{##1\dotFFN\kernFFN}% + \setlength{\footmarkwidth}{\FBfnindent}% + \setlength{\footmarksep}{-\footmarkwidth}% + \setlength{\footparindent}{\parindentFFN}% + \makefootmark #1}% + }{} +\@ifclassloaded{beamer} + {\def\@makefntextFB#1{% + \def\insertfootnotetext{#1}% + \def\insertfootnotemark{\insertfootnotemarkFB}% + \usebeamertemplate***{footnote}}% + \def\insertfootnotemarkFB{% + \usebeamercolor[fg]{footnote mark}% + \usebeamerfont*{footnote mark}% + \@thefnmark\dotFFN\kernFFN}% + }{} +\providecommand*{\insertfootnotemarkFB}{% + \parindent=\parindentFFN + \rule\z@\footnotesep + \setbox\@tempboxa\hbox{\@thefnmark}% + \ifdim\wd\@tempboxa>\z@ + \llap{\@thefnmark}\dotFFN\kernFFN + \fi} +\providecommand\@makefntextFB[1]{\insertfootnotemarkFB #1} +\AtBeginDocument{% + \@ifpackageloaded{bigfoot}{}% + {\ifdim\parindentFFN<10in + \else + \parindentFFN=\parindent + \ifdim\parindentFFN<1.5em \parindentFFN=1.5em \fi + \fi + \settowidth{\FBfnindent}{\dotFFN\kernFFN}% + \addtolength{\FBfnindent}{\parindentFFN}% + \let\@makefntextORI\@makefntext + \ifFB@koma + \let\@@makefnmarkORI\@@makefnmark + \long\def\@makefntext#1{% + \ifFBFrenchFootnotes + \ifx\footnote\thanks + \let\@@makefnmark\@@makefnmarkTH + \@makefntextTH{#1}% \else - \parindentFFN=\parindent - \ifdim\parindentFFN<1.5em \parindentFFN=1.5em \fi + \let\@@makefnmark\@@makefnmarkFB + \@makefntextFB{#1}% \fi - \let\@makefntextORI\@makefntext - \long\def\@makefntext#1{% - \ifFBFrenchFootnotes - \@makefntextFB{#1}% - \else - \@makefntextORI{#1}% - \fi}% - }% - } + \else + \let\@@makefnmark\@@makefnmarkORI + \@makefntextORI{#1}% + \fi}% + \else + \@ifclassloaded{memoir}% + {\ifFBFrenchFootnotes + \setlength{\thanksmarkwidth}{\parindentFFN}% + \setlength{\thanksmarksep}{-\thanksmarkwidth}% + \fi + }{}% + \@ifclassloaded{beamer}% + {\ifFBFrenchFootnotes + \ifdim\parindentFFN=1.5em\else + \FBWarning{frenchb}{% + \protect\parindentFFN\space is ineffective% + \MessageBreak within the beamer class.\MessageBreak + Reported}% + \fi + \fi + }{}% + \long\def\@makefntext#1{% + \ifFBFrenchFootnotes + \@makefntextFB{#1}% + \else + \@makefntextORI{#1}% + \fi}% + \fi + }% +} \newcommand*{\AddThinSpaceBeforeFootnotes}{\FBAutoSpaceFootnotestrue} \newcommand*{\FrenchFootnotes}{\FBFrenchFootnotestrue} \newcommand*{\StandardFootnotes}{\FBFrenchFootnotesfalse} diff --git a/Master/texmf-dist/tex/generic/babel-french/frenchb.lua b/Master/texmf-dist/tex/generic/babel-french/frenchb.lua index 9464f25a581..508bf77ec5a 100644 --- a/Master/texmf-dist/tex/generic/babel-french/frenchb.lua +++ b/Master/texmf-dist/tex/generic/babel-french/frenchb.lua @@ -1,5 +1,5 @@ -- --- File `frenchb.lua' generated from frenchb.dtx [2016/02/13 v3.1l] +-- File `frenchb.lua' generated from frenchb.dtx [2016/03/18 v3.2a] -- -- Copyright © 2014-2016 Daniel Flipo -- @@ -75,9 +75,11 @@ local function new_glue_scaled (fid,width,stretch,shrink) gl_spec.width = width * fp.space gl_spec.stretch = stretch * fp.space_stretch gl_spec.shrink = shrink * fp.space_shrink + gl.spec = gl_spec + return gl + else + return nil end - gl.spec = gl_spec - return gl else return nil end @@ -125,7 +127,7 @@ local function french_punctuation (head) else fbglue = new_glue_scaled(fid,thinwd,thinst,thinsh) end - if realglue or auto then + if (realglue or auto) and fbglue then if realglue then head = remove_node(head,prev,true) end @@ -141,11 +143,11 @@ local function french_punctuation (head) if glue and glue_wd <= 1 then addgl = false end - if addgl then + local fbglue = new_glue_scaled(fid,guilwd,guilst,guilsh) + if addgl and fbglue then if glue then head = remove_node(head,prev,true) end - local fbglue = new_glue_scaled(fid,guilwd,guilst,guilsh) insert_node_before(head, item, copy_node(nobreak)) insert_node_before(head, item, copy_node(fbglue)) end @@ -185,12 +187,12 @@ local function french_punctuation (head) if glue and glue_wd == 0 then addgl = false end - if addgl then + local fid = item.font + local fbglue = new_glue_scaled(fid,guilwd,guilst,guilsh) + if addgl and fbglue then if glue then head = remove_node(head,next,true) end - local fid = item.font - local fbglue = new_glue_scaled(fid,guilwd,guilst,guilsh) insert_node_after(head, item, copy_node(fbglue)) insert_node_after(head, item, copy_node(nobreak)) end -- cgit v1.2.3