summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/catc-def.mkiv2
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4112 -> 4109 bytes
-rw-r--r--tex/context/base/context.mkiv4
-rw-r--r--tex/context/base/font-syn.lua5
-rw-r--r--tex/context/base/font-trt.lua7
-rw-r--r--tex/context/base/node-aux.lua19
-rw-r--r--tex/context/base/node-ref.lua15
-rw-r--r--tex/context/base/s-inf-03.pdfbin1981 -> 0 bytes
-rw-r--r--tex/context/base/status-files.pdfbin24695 -> 24520 bytes
-rw-r--r--tex/context/base/status-lua.log79
-rw-r--r--tex/context/base/status-lua.pdfbin0 -> 224671 bytes
-rw-r--r--tex/context/base/strc-not.mkvi2
-rw-r--r--tex/context/base/typo-tal.mkiv2
-rw-r--r--tex/context/fonts/treatments.lfg36
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
16 files changed, 75 insertions, 100 deletions
diff --git a/tex/context/base/catc-def.mkiv b/tex/context/base/catc-def.mkiv
index cfbaed171..bf794f045 100644
--- a/tex/context/base/catc-def.mkiv
+++ b/tex/context/base/catc-def.mkiv
@@ -142,4 +142,6 @@
\normalprotected\def\unprotect{\pushcatcodetable\setcatcodetable\prtcatcodes}
\normalprotected\def\protect {\popcatcodetable}
+% \prependtoks \catcodetable\ctxcatcodes \to \everyjob
+
\endinput
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index 5c1d3dfab..03c066abb 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{2013.10.07 12:02}
+\newcontextversion{2013.10.07 22:06}
%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
index 300e54312..3b273abfa 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index 6bf94d34b..920e03081 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{2013.10.07 12:02}
+\edef\contextversion{2013.10.07 22:06}
\edef\contextkind {beta}
%D For those who want to use this:
@@ -91,6 +91,8 @@
\loadmarkfile{cldf-ini}
+% \tracecatcodetables
+
% From here on we have \unexpanded being \normalprotected, as we already had
% \unexpanded long before etex came around.
diff --git a/tex/context/base/font-syn.lua b/tex/context/base/font-syn.lua
index ead571938..18da4f2e1 100644
--- a/tex/context/base/font-syn.lua
+++ b/tex/context/base/font-syn.lua
@@ -56,6 +56,9 @@ fonts.names = names
local filters = names.filters or { }
names.filters = filters
+local treatments = names.treatments or { }
+names.treatments = treatments
+
names.data = names.data or allocate { }
names.version = 1.123
@@ -828,7 +831,7 @@ local function analyzefiles(olddata)
local oldindices = olddata and olddata.indices or { }
local oldspecifications = olddata and olddata.specifications or { }
local oldrejected = olddata and olddata.rejected or { }
- local treatmentdata = fonts.treatments and fonts.treatments.data or { } -- when used outside context
+ local treatmentdata = treatments.data or { } -- when used outside context
local function identify(completename,name,suffix,storedname)
local pathpart, basepart = splitbase(completename)
nofread = nofread + 1
diff --git a/tex/context/base/font-trt.lua b/tex/context/base/font-trt.lua
index 319863fa3..ebe8007b7 100644
--- a/tex/context/base/font-trt.lua
+++ b/tex/context/base/font-trt.lua
@@ -17,14 +17,17 @@ something in a manual). It's one of the few places where an lfg file gets loaded
outside the goodies manager.</p>
--ldx]]--
-local treatments = utilities.storage.allocate()
+local treatments = fonts.treatments or { }
fonts.treatments = treatments
-local treatmentdata = { }
+
+local treatmentdata = treatments.data or utilities.storage.allocate()
treatments.data = treatmentdata
+
treatments.filename = "treatments.lfg"
local trace_treatments = false trackers.register("fonts.treatments", function(v) trace_treatments = v end)
local report_treatment = logs.reporter("fonts","treatment")
+
treatments.report = report_treatment
function treatments.trace(...)
diff --git a/tex/context/base/node-aux.lua b/tex/context/base/node-aux.lua
index 16e6d55a0..443c78547 100644
--- a/tex/context/base/node-aux.lua
+++ b/tex/context/base/node-aux.lua
@@ -369,3 +369,22 @@ local function locate(start,wantedid,wantedsubtype)
end
nodes.locate = locate
+
+-- I have no use for this yet:
+--
+-- \skip0=10pt plus 2pt minus 2pt
+-- \cldcontext{"\letterpercent p",tex.stretch_amount(tex.skip[0],1000)} -- 14.30887pt
+--
+-- local gluespec_code = nodes.nodecodes.gluespec
+--
+-- function tex.badness_to_ratio(badness)
+-- return (badness/100)^(1/3)
+-- end
+--
+-- function tex.stretch_amount(skip,badness)
+-- if skip.id == gluespec_code then
+-- return skip.width + (badness and (badness/100)^(1/3) or 1) * skip.stretch
+-- else
+-- return 0
+-- end
+-- end
diff --git a/tex/context/base/node-ref.lua b/tex/context/base/node-ref.lua
index baece6e50..aa864fb1c 100644
--- a/tex/context/base/node-ref.lua
+++ b/tex/context/base/node-ref.lua
@@ -498,13 +498,16 @@ local function makedestination(width,height,depth,reference)
nofdestinations = nofdestinations + 1
for n=1,#name do
local annot = nodeinjections.destination(width,height,depth,name[n],view)
- if not result then
- result = annot
- else
- current.next = annot
- annot.prev = current
+ if annot then
+ -- probably duplicate
+ if not result then
+ result = annot
+ else
+ current.next = annot
+ annot.prev = current
+ end
+ current = find_node_tail(annot)
end
- current = find_node_tail(annot)
end
if result then
-- some internal error
diff --git a/tex/context/base/s-inf-03.pdf b/tex/context/base/s-inf-03.pdf
deleted file mode 100644
index 30df291ed..000000000
--- a/tex/context/base/s-inf-03.pdf
+++ /dev/null
Binary files differ
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 054703a76..13ebd5715 100644
--- a/tex/context/base/status-files.pdf
+++ b/tex/context/base/status-files.pdf
Binary files differ
diff --git a/tex/context/base/status-lua.log b/tex/context/base/status-lua.log
deleted file mode 100644
index c65fcd67e..000000000
--- a/tex/context/base/status-lua.log
+++ /dev/null
@@ -1,79 +0,0 @@
-(cont-yes.mkiv
-
-ConTeXt ver: 2013.10.07 12:02 MKIV beta fmt: 2013.10.7 int: english/english
-
-system > 'cont-new.mkiv' loaded
-(cont-new.mkiv)
-system > 'cont-loc.mkiv' loaded
-(c:/data/develop/context/sources/cont-loc.mkiv
-!!!! > testing prevdepth across page
-)
-system > 'cont-exp.mkiv' loaded
-interface > macros > processed mkvi file 'c:/data/develop/context/sources/cont-exp.mkiv', delta 0
-interface > macros > processed mkvi file 'c:/data/develop/context/sources/cont-exp.mkiv', delta 0
-(c:/data/develop/context/sources/cont-exp.mkiv)
-system > files > jobname 's-inf-03', input './s-inf-03.mkiv', result 'status-lua.pdf'
-fonts > latin modern fonts are not preloaded
-languages > language 'en' is active
-(c:/data/develop/context/texmf/tex/context/base/s-inf-03.mkiv (c:/data/develop/context/sources/type-loc.mkiv) (type-imp-dejavu.mkiv) (type-imp-xits.mkiv (type-imp-texgyre.mkiv)){c:/data/develop/tex-context/tex/texmf-context/fonts/map/pdftex/context/mkiv-base.map} (virtual://buffer.noname.1
-references > unknown reference '[][]'
-references > unknown reference '[][attributes]'
-references > unknown reference '[][backends]'
-references > unknown reference '[][bibtex]'
-references > unknown reference '[][bit32]'
-references > unknown reference '[][blobs]'
-references > unknown reference '[][boolean]'
-references > unknown reference '[][buffers]'
-references > unknown reference '[][builders]'
-references > unknown reference '[][caches]'
-references > unknown reference '[][callback]'
-references > unknown reference '[][callbacks]'
-references > unknown reference '[][catcodes]'
-references > unknown reference '[][characters]'
-references > unknown reference '[][chemistry]'
-references > unknown reference '[][commands]'
-references > unknown reference '[][containers]'
-references > unknown reference '[][context]'
-references > unknown reference '[][converters]'
-references > unknown reference '[][coroutine]'
-references > unknown reference '[][ctxrunner]'
-references > unknown reference '[][debug]'
-references > unknown reference '[][dir]'
-references > unknown reference '[][directives]'
-references > unknown reference '[][document]'
-references > unknown reference '[][documentdata]'
-references > unknown reference '[][environment]'
-references > unknown reference '[][epdf]'
-references > unknown reference '[][experiments]'
-references > unknown reference '[][figures]'
-references > unknown reference '[][file]'
-references > unknown reference '[][floats]'
-references > unknown reference '[][font]'
-references > unknown reference '[][fontloader]'
-references > unknown reference '[][fonts]'
-references > unknown reference '[][functions]'
-references > unknown reference '[][graphics]'
-references > unknown reference '[][gzip]'
-references > unknown reference '[][img]'
-references > unknown reference '[][interactions]'
-references > unknown reference '[][interfaces]'
-references > unknown reference '[][io]'
-references > unknown reference '[][job]'
-references > unknown reference '[][lang]'
-references > unknown reference '[][languages]'
-references > unknown reference '[][layouts]'
-references > unknown reference '[][lfs]'
-references > unknown reference '[][libraries]'
-references > unknown reference '[][lmx]'
-references > unknown reference '[][logs]'
-references > unknown reference '[][lpdf]'
-references > unknown reference '[][lpeg]'
-references > unknown reference '[][ltn12]'
-references > unknown reference '[][lua]'
-references > unknown reference '[][luatex]'
-references > unknown reference '[][lxml]'
-references > unknown reference '[][math]'
-references > unknown reference '[][mathematics]'
-references > unknown reference '[][mbox]'
-references > unknown reference '[][md5]'
-references > unknown reference '[][metapost \ No newline at end of file
diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf
new file mode 100644
index 000000000..c5d63ed66
--- /dev/null
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/strc-not.mkvi b/tex/context/base/strc-not.mkvi
index d2c916daa..cf1735da8 100644
--- a/tex/context/base/strc-not.mkvi
+++ b/tex/context/base/strc-not.mkvi
@@ -1200,7 +1200,7 @@
% as we can have collected notes (e.g. in tables) we need to recover
% \currentdescriptionattribute and \currentdescriptionsynchronize
%
- %\reinstateconstructionnumberentry\currentconstructionlistentry % we could store the number in the entry
+ \reinstateconstructionnumberentry\currentconstructionlistentry % we could store the number in the entry (e.g. needed when local notes in table)
%
\dontcomplain
% \begingroup
diff --git a/tex/context/base/typo-tal.mkiv b/tex/context/base/typo-tal.mkiv
index f67eadc49..a34cb8bb6 100644
--- a/tex/context/base/typo-tal.mkiv
+++ b/tex/context/base/typo-tal.mkiv
@@ -109,4 +109,4 @@
\def\setfirstpasscharacteralign {\let\checkcharacteralign\gobbleoneargument}
\def\setsecondpasscharacteralign{\let\checkcharacteralign\firstofoneargument}
-\endinput
+\protect \endinput
diff --git a/tex/context/fonts/treatments.lfg b/tex/context/fonts/treatments.lfg
index 54f35d535..18a43525b 100644
--- a/tex/context/fonts/treatments.lfg
+++ b/tex/context/fonts/treatments.lfg
@@ -8,14 +8,16 @@
-- applied at runtime. An experimental auto-loaded goodie approach is not yet
-- enabled and will never be if treatments can do the job.
-local unifraktur = {
+local report = fonts.treatments.report
+
+local fix_unifraktur = {
comment = "suspicious x height",
fixes = function(data)
local pfminfo = data.metadata.pfminfo
if pfminfo then
local os2_xheight = pfminfo.os2_xheight
if os2_xheight and os2_xheight < 350 then
- fonts.treatments.report("suspicious x-height %a, nilling",os2_xheight)
+ report("suspicious x-height %a, nilling",os2_xheight)
pfminfo.os2_xheight_original = os2_xheight
pfminfo.os2_xheight = nil
end
@@ -23,6 +25,25 @@ local unifraktur = {
end,
}
+local fix_lmmonoregular = {
+ comment = "wrong widths of some glyphs",
+ fixes = function(data)
+ report("fixing some wrong widths")
+ local unicodes = data.resources.unicodes
+ local descriptions = data.descriptions
+ local defaultwidth = descriptions[unicodes["zero"]].width
+ descriptions[unicodes["six"] ].width = defaultwidth
+ descriptions[unicodes["nine"] ].width = defaultwidth
+ descriptions[unicodes["caron"] ].width = defaultwidth
+ descriptions[unicodes["perthousand"] ].width = defaultwidth
+ descriptions[unicodes["numero"] ].width = defaultwidth
+ descriptions[unicodes["caron.cap"] ].width = defaultwidth
+ descriptions[unicodes["six.taboldstyle"] ].width = defaultwidth
+ descriptions[unicodes["nine.taboldstyle"]].width = defaultwidth
+ descriptions[unicodes["dollar.oldstyle" ]].width = defaultwidth
+ end
+}
+
return {
name = "treatments",
version = "1.00",
@@ -43,10 +64,11 @@ return {
comment = "a text file with suffix ttf", -- used in test file
ignored = true,
},
- ["latinmodern-math.otf"] = {
- comment = "experimental",
- },
- ["unifrakturcook.ttf"] = unifraktur,
- ["unifrakturmaguntia.ttf"] = unifraktur,
+ -- ["latinmodern-math.otf"] = {
+ -- comment = "experimental",
+ -- },
+ ["lmmono12regular.otf"] = fix_lmmonoregular,
+ ["unifrakturcook.ttf"] = fix_unifraktur,
+ ["unifrakturmaguntia.ttf"] = fix_unifraktur,
},
}
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 103249c29..1a5fd0a34 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 : 10/07/13 12:02:11
+-- merge date : 10/07/13 22:06:08
do -- begin closure to overcome local limits and interference