diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel-french/frenchb.lua')
-rw-r--r-- | Master/texmf-dist/tex/generic/babel-french/frenchb.lua | 37 |
1 files changed, 16 insertions, 21 deletions
diff --git a/Master/texmf-dist/tex/generic/babel-french/frenchb.lua b/Master/texmf-dist/tex/generic/babel-french/frenchb.lua index 508bf77ec5a..cbc79319e72 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/03/18 v3.2a] +-- File `frenchb.lua' generated from frenchb.dtx [2016/04/18 v3.2b] -- -- Copyright © 2014-2016 Daniel Flipo -- <daniel (dot) flipo (at) free (dot) fr> @@ -38,7 +38,6 @@ local HLIST = node_id("hlist") local TEMP = node_id("temp") local KERN = node_id("kern") local GLUE = node_id("glue") -local GSPEC = node_id("glue_spec") local GLYPH = node_id("glyph") local PENALTY = node_id("penalty") local nobreak = new_node(PENALTY) @@ -70,12 +69,10 @@ local function new_glue_scaled (fid,width,stretch,shrink) end end local gl = new_node(GLUE,0) - local gl_spec = new_node(GSPEC) if fp then - gl_spec.width = width * fp.space - gl_spec.stretch = stretch * fp.space_stretch - gl_spec.shrink = shrink * fp.space_shrink - gl.spec = gl_spec + gl.width = width * fp.space + gl.stretch = stretch * fp.space_stretch + gl.shrink = shrink * fp.space_shrink return gl else return nil @@ -103,19 +100,18 @@ local function french_punctuation (head) prev_char = prev.char end end - local glue = prev_id == GLUE and prev_subtype == 0 + local is_glue = prev_id == GLUE local glue_wd - if glue then - glue_spec = prev.spec - glue_wd = glue_spec.width + if is_glue then + glue_wd = prev.width end - local realglue = glue and glue_wd > 1 + local realglue = is_glue and glue_wd > 1 if FB_punct_thin[char] or FB_punct_thick[char] then local SBDP = has_attribute(item, addDPspace) local auto = SBDP and SBDP > 0 if auto then if (prev_char and FB_punct_null[prev_char]) or - (glue and glue_wd <= 1) or + (is_glue and glue_wd <= 1) or (prev_id == HLIST and prev_subtype == 3) or (prev_id == TEMP) then auto = false @@ -140,12 +136,12 @@ local function french_punctuation (head) prev_id ~= TEMP and not (prev_id == HLIST and prev_subtype == 3) ) - if glue and glue_wd <= 1 then + if is_glue and glue_wd <= 1 then addgl = false end local fbglue = new_glue_scaled(fid,guilwd,guilst,guilsh) if addgl and fbglue then - if glue then + if is_glue then head = remove_node(head,prev,true) end insert_node_before(head, item, copy_node(nobreak)) @@ -177,20 +173,19 @@ local function french_punctuation (head) end end end - local glue = next_id == GLUE and next_subtype == 0 - if glue then - glue_spec = next.spec - glue_wd = glue_spec.width + local is_glue = next_id == GLUE + if is_glue then + glue_wd = next.width end local addgl = (next_char and not FB_guil_null[next_char]) or (next and not next_char) - if glue and glue_wd == 0 then + if is_glue and glue_wd == 0 then addgl = false end local fid = item.font local fbglue = new_glue_scaled(fid,guilwd,guilst,guilsh) if addgl and fbglue then - if glue then + if is_glue then head = remove_node(head,next,true) end insert_node_after(head, item, copy_node(fbglue)) |