diff options
| author | Marius <mariausol@gmail.com> | 2012-09-23 14:00:19 +0300 | 
|---|---|---|
| committer | Marius <mariausol@gmail.com> | 2012-09-23 14:00:19 +0300 | 
| commit | cef5e3d62b5db1988c912a1166e26e40f2c0d4ae (patch) | |
| tree | 981f35b8328f36179233b5b595456f1d5fae1ea6 /tex | |
| parent | cf40f55b353191d8d9043843e3ab6c43a2ba2633 (diff) | |
| download | context-cef5e3d62b5db1988c912a1166e26e40f2c0d4ae.tar.gz | |
beta 2012.09.23 12:40
Diffstat (limited to 'tex')
| -rw-r--r-- | tex/context/base/cont-new.mkii | 2 | ||||
| -rw-r--r-- | tex/context/base/cont-new.mkiv | 2 | ||||
| -rw-r--r-- | tex/context/base/context-version.pdf | bin | 4140 -> 4146 bytes | |||
| -rw-r--r-- | tex/context/base/context-version.png | bin | 106731 -> 106782 bytes | |||
| -rw-r--r-- | tex/context/base/context.mkii | 2 | ||||
| -rw-r--r-- | tex/context/base/context.mkiv | 2 | ||||
| -rw-r--r-- | tex/context/base/font-sol.lua | 45 | ||||
| -rw-r--r-- | tex/context/base/lpdf-fmt.lua | 1 | ||||
| -rw-r--r-- | tex/context/base/node-tra.lua | 2 | ||||
| -rw-r--r-- | tex/context/base/status-files.pdf | bin | 24577 -> 24590 bytes | |||
| -rw-r--r-- | tex/context/base/status-lua.pdf | bin | 195092 -> 195090 bytes | |||
| -rw-r--r-- | tex/context/base/typo-mar.mkiv | 2 | ||||
| -rw-r--r-- | tex/context/test/pdf-x1a-2001.mkiv | 2 | ||||
| -rw-r--r-- | tex/context/test/pdf-x1a-2003.mkiv | 2 | ||||
| -rw-r--r-- | tex/context/test/pdf-x3-2002.mkiv | 2 | ||||
| -rw-r--r-- | tex/context/test/pdf-x3-2003.mkiv | 2 | ||||
| -rw-r--r-- | tex/context/test/pdf-x4.mkiv | 2 | ||||
| -rw-r--r-- | tex/context/test/pdf-x4p.mkiv | 4 | ||||
| -rw-r--r-- | tex/generic/context/luatex/luatex-fonts-merged.lua | 2 | 
19 files changed, 46 insertions, 28 deletions
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii index d7edc921c..cf8f6e8fc 100644 --- a/tex/context/base/cont-new.mkii +++ b/tex/context/base/cont-new.mkii @@ -11,7 +11,7 @@  %C therefore copyrighted by \PRAGMA. See mreadme.pdf for  %C details. -\newcontextversion{2012.09.21 20:58} +\newcontextversion{2012.09.23 12:40}  %D This file is loaded at runtime, thereby providing an  %D excellent place for hacks, patches, extensions and new diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index 2f90130c7..1903c8021 100644 --- a/tex/context/base/cont-new.mkiv +++ b/tex/context/base/cont-new.mkiv @@ -11,7 +11,7 @@  %C therefore copyrighted by \PRAGMA. See mreadme.pdf for  %C details. -\newcontextversion{2012.09.21 20:58} +\newcontextversion{2012.09.23 12:40}  %D This file is loaded at runtime, thereby providing an excellent place for  %D hacks, patches, extensions and new features. diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf Binary files differindex e232cfeb6..5704374eb 100644 --- a/tex/context/base/context-version.pdf +++ b/tex/context/base/context-version.pdf diff --git a/tex/context/base/context-version.png b/tex/context/base/context-version.png Binary files differindex 048d04143..cd12a10ca 100644 --- a/tex/context/base/context-version.png +++ b/tex/context/base/context-version.png diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii index 0aab24aad..ba9e7146b 100644 --- a/tex/context/base/context.mkii +++ b/tex/context/base/context.mkii @@ -20,7 +20,7 @@  %D your styles an modules.  \edef\contextformat {\jobname} -\edef\contextversion{2012.09.21 20:58} +\edef\contextversion{2012.09.23 12:40}  %D For those who want to use this: diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index d19d90a93..36401fbd3 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -25,7 +25,7 @@  %D up and the dependencies are more consistent.  \edef\contextformat {\jobname} -\edef\contextversion{2012.09.21 20:58} +\edef\contextversion{2012.09.23 12:40}  %D For those who want to use this: diff --git a/tex/context/base/font-sol.lua b/tex/context/base/font-sol.lua index 1c341129c..b44594349 100644 --- a/tex/context/base/font-sol.lua +++ b/tex/context/base/font-sol.lua @@ -53,8 +53,6 @@ local free_node          = node.free  local free_nodelist      = node.flush_list  local has_attribute      = node.has_attribute  local set_attribute      = node.set_attribute -local new_node           = node.new -local copy_node          = node.copy  local copy_nodelist      = node.copy_list  local traverse_nodes     = node.traverse  local traverse_ids       = node.traverse_id @@ -89,6 +87,8 @@ local usernodeids        = nodepool.userids  local new_textdir        = nodepool.textdir  local new_usernumber     = nodepool.usernumber +local new_glue           = nodepool.glue +local new_leftskip       = nodepool.leftskip  local starttiming        = statistics.starttiming  local stoptiming         = statistics.stoptiming @@ -355,7 +355,7 @@ function splitters.split(head)              font      = font          }          if trace_split then -            report_splitters("cached %4i: font: %s, attribute: %s, word: %s, direction: %s", +            report_splitters("cached %4i: font: %s, attribute: %s, direction: %s, word: %s",                  n, font, attribute, nodes_to_utf(list,true), rlmode and "r2l" or "l2r")          end          cache[n] = c @@ -439,7 +439,7 @@ local function collect_words(list) -- can be made faster for attributes          while current do              -- todo: disc and kern              local id = current.id -            if id == glyph_code then +            if id == glyph_code or id == disc_code then                  local a = has_attribute(current,a_word)                  if a then                      if a == index then @@ -467,7 +467,11 @@ local function collect_words(list) -- can be made faster for attributes                      index = nil                      first = nil                  elseif trace_split then -                    report_splitters("skipped: %s",utfchar(current.char)) +                    if id == disc_code then +                        report_splitters("skipped: disc node") +                    else +                        report_splitters("skipped: %s",utfchar(current.char)) +                    end                  end              elseif id == kern_code and (current.subtype == fontkern_code or has_attribute(current,a_fontkern)) then                  if first then @@ -506,7 +510,7 @@ local function collect_words(list) -- can be made faster for attributes              end          end      end -    return words -- check for empty (elsewhere) +    return words, list  -- check for empty (elsewhere)  end  -- we could avoid a hpack but hpack is not that slow @@ -524,7 +528,6 @@ local function doit(word,list,best,width,badness,line,set,listdir)              h = word[2]              t = word[3]          end -          if splitwords then              -- there are no lines crossed in a word          else @@ -540,10 +543,10 @@ local function doit(word,list,best,width,badness,line,set,listdir)              end              if not ok then                  report_solutions("skipping hyphenated word (for now)") +                -- todo: mark in words as skipped, saves a bit runtime                  return false, changed              end          end -          local original, attribute, direction = found.original, found.attribute, found.direction          local solution = solutions[attribute]          local features = solution and solution[set] @@ -596,10 +599,13 @@ local function doit(word,list,best,width,badness,line,set,listdir)                  end                  local last = find_node_tail(first)                  -- replace [u]h->t by [u]first->last -                local next, prev = t.next, h.prev -                prev.next, first.prev = first, prev +                local prev = h.prev +                local next = t.next +                prev.next = first +                first.prev = prev                  if next then -                    last.next, next.prev = next, last +                    last.next = next +                    next.prev = last                  end                  -- check new pack                  local temp, b = repack_hlist(list,width,'exactly',listdir) @@ -608,9 +614,11 @@ local function doit(word,list,best,width,badness,line,set,listdir)                          report_optimizers("line %s, badness before: %s, after: %s, criterium: %s -> quit",line,badness,b,criterium)                      end                      -- remove last insert -                    prev.next, h.prev = h, prev +                    prev.next = h +                    h.prev = prev                      if next then -                        t.next, next.prev = next, t +                        t.next = next +                        next.prev = t                      else                          t.next = nil                      end @@ -622,7 +630,11 @@ local function doit(word,list,best,width,badness,line,set,listdir)                      end                      -- free old h->t                      t.next = nil -                    free_nodelist(h) +                    free_nodelist(h) -- somhow fails +                    if not encapsulate then +                        word[2] = first +                        word[3] = last +                    end                      changed, badness = changed + 1, b                  end                  if b <= criterium then @@ -731,6 +743,11 @@ function splitters.optimize(head)       -- report_splitters("before: [%s] => %s",current.dir,nodes.tosequence(current.list,nil))          line = line + 1          local sign, dir, list, width = current.glue_sign, current.dir, current.list, current.width +if not encapsulate and list.id == glyph_code then +    -- nasty .. we always assume a prev being there .. future luatex will always have a leftskip set + -- current.list, list = insert_node_before(list,list,new_glue(0)) +    current.list, list = insert_node_before(list,list,new_leftskip(0)) +end          local temp, badness = repack_hlist(list,width,'exactly',dir) -- it would be nice if the badness was stored in the node          if badness > 0 then              if sign == 0 then diff --git a/tex/context/base/lpdf-fmt.lua b/tex/context/base/lpdf-fmt.lua index 626e66d3c..859a489ef 100644 --- a/tex/context/base/lpdf-fmt.lua +++ b/tex/context/base/lpdf-fmt.lua @@ -629,6 +629,7 @@ lpdf.registerdocumentfinalizer(flushoutputintents,2,"output intents")  function codeinjections.setformat(s)      local format   = s.format or ""      local level    = tonumber(s.level) +    local intent   = s.intent or ""      local profile  = s.profile or ""      local option   = s.option or ""      local filename = s.file or "" diff --git a/tex/context/base/node-tra.lua b/tex/context/base/node-tra.lua index 4ff6c1033..387dd99a6 100644 --- a/tex/context/base/node-tra.lua +++ b/tex/context/base/node-tra.lua @@ -557,7 +557,7 @@ local function listtoutf(h,joiner,textonly,last)                  mid and listtoutf(mid,joiner,textonly) or ""              )          elseif textonly then -            if id == glue_code and h.width > 0 then +            if id == glue_code and h.spec and h.spec.width > 0 then                  w[#w+1] = " "              end          else diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf Binary files differindex e5263bffa..68184675b 100644 --- a/tex/context/base/status-files.pdf +++ b/tex/context/base/status-files.pdf diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf Binary files differindex 6a8332f63..a2d807b15 100644 --- a/tex/context/base/status-lua.pdf +++ b/tex/context/base/status-lua.pdf diff --git a/tex/context/base/typo-mar.mkiv b/tex/context/base/typo-mar.mkiv index 4db0a9b66..08d8b0cf0 100644 --- a/tex/context/base/typo-mar.mkiv +++ b/tex/context/base/typo-mar.mkiv @@ -243,7 +243,7 @@               \hsize\currentmargindatawidth               \raggedcommand               \ifx\currentmargindatastrut\empty \else -               \dosetupstrut[\currentmargindatastrut]% +               \synchronizestrut\currentmargindatastrut               \fi               \begstrut               \strc_references_flush_destination_nodes diff --git a/tex/context/test/pdf-x1a-2001.mkiv b/tex/context/test/pdf-x1a-2001.mkiv index a304c8963..f1c5ef531 100644 --- a/tex/context/test/pdf-x1a-2001.mkiv +++ b/tex/context/test/pdf-x1a-2001.mkiv @@ -1,6 +1,6 @@  % PDF/X-1a:2001 -\enabletrackers[backend.pdfx] +\enabletrackers[backend.format,backend.variables]  \setupbackend    [format=PDF/X-1a:2001, diff --git a/tex/context/test/pdf-x1a-2003.mkiv b/tex/context/test/pdf-x1a-2003.mkiv index 89a0f6066..7fbec5acb 100644 --- a/tex/context/test/pdf-x1a-2003.mkiv +++ b/tex/context/test/pdf-x1a-2003.mkiv @@ -1,6 +1,6 @@  % PDF/X-1a:2003 -\enabletrackers[backend.pdfx] +\enabletrackers[backend.format,backend.variables]  \setupbackend    [format=PDF/X-1a:2003, diff --git a/tex/context/test/pdf-x3-2002.mkiv b/tex/context/test/pdf-x3-2002.mkiv index 1e2310135..be757212e 100644 --- a/tex/context/test/pdf-x3-2002.mkiv +++ b/tex/context/test/pdf-x3-2002.mkiv @@ -1,6 +1,6 @@  % PDF/X-3:2002 -\enabletrackers[backend.pdfx] +\enabletrackers[backend.format,backend.variables]  \setupbackend    [format=PDF/X-3:2002, diff --git a/tex/context/test/pdf-x3-2003.mkiv b/tex/context/test/pdf-x3-2003.mkiv index bedcde527..cbebe1033 100644 --- a/tex/context/test/pdf-x3-2003.mkiv +++ b/tex/context/test/pdf-x3-2003.mkiv @@ -1,6 +1,6 @@  % PDF/X-3:2003 -\enabletrackers[backend.pdfx] +\enabletrackers[backend.format,backend.variables]  \setupbackend    [format=PDF/X-3:2003, diff --git a/tex/context/test/pdf-x4.mkiv b/tex/context/test/pdf-x4.mkiv index 0566475b5..062de3b34 100644 --- a/tex/context/test/pdf-x4.mkiv +++ b/tex/context/test/pdf-x4.mkiv @@ -2,7 +2,7 @@  % \nopdfcompression -\enabletrackers[backend.pdfx] +\enabletrackers[backend.format,backend.variables]  \setupbackend    [format=PDF/X-4, diff --git a/tex/context/test/pdf-x4p.mkiv b/tex/context/test/pdf-x4p.mkiv index 9ec8897f8..bfee0b238 100644 --- a/tex/context/test/pdf-x4p.mkiv +++ b/tex/context/test/pdf-x4p.mkiv @@ -1,10 +1,10 @@  % PDF/X-4p -\enabletrackers[backend.pdfx] +\enabletrackers[backend.format,backend.variables]  \setupbackend    [format=PDF/X-4p, -   intent=ISOcoated_v2_eci.icc, +   intent={ISO Coated v2 (ECI)},     profile=sRGB.icc] % test for default colorspace  \input pdf-x-common.mkiv diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 323c70c3e..36a74ff01 100644 --- a/tex/generic/context/luatex/luatex-fonts-merged.lua +++ b/tex/generic/context/luatex/luatex-fonts-merged.lua @@ -1,6 +1,6 @@  -- merged file : luatex-fonts-merged.lua  -- parent file : luatex-fonts.lua --- merge date  : 09/21/12 20:58:19 +-- merge date  : 09/23/12 12:40:12  do -- begin closure to overcome local limits and interference  | 
