summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2014-01-11 23:58:00 +0100
committerHans Hagen <pragma@wxs.nl>2014-01-11 23:58:00 +0100
commitc346c3825d2d63e307b0d9bb5c548b96c25c38d9 (patch)
tree354366e1da3d5a2b01e24102f156fced7e97caf3
parent417a0575de438a13b099b36cd2c9ba68b5ba7cb8 (diff)
downloadcontext-c346c3825d2d63e307b0d9bb5c548b96c25c38d9.tar.gz
beta 2014.01.11 23:58
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4115 -> 4086 bytes
-rw-r--r--tex/context/base/context.mkiv10
-rw-r--r--tex/context/base/font-otf.lua2
-rw-r--r--tex/context/base/font-otn.lua3
-rw-r--r--tex/context/base/font-syn.lua54
-rw-r--r--tex/context/base/status-files.pdfbin24593 -> 24538 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin228416 -> 228348 bytes
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
9 files changed, 67 insertions, 6 deletions
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index 36e17a605..582e3d2bc 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{2014.01.09 19:11}
+\newcontextversion{2014.01.11 23:58}
%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 fdd74e967..c54d5b971 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 6063c50b4..ccb237732 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -28,7 +28,7 @@
%D up and the dependencies are more consistent.
\edef\contextformat {\jobname}
-\edef\contextversion{2014.01.09 19:11}
+\edef\contextversion{2014.01.11 23:58}
\edef\contextkind {beta}
%D For those who want to use this:
@@ -477,9 +477,17 @@
\loadmarkfile{lang-spa} % will become obsolete
+% old bibtex support: (will be m-oldbibtex.mkiv)
+
\loadmarkfile{bibl-bib}
\loadmarkfile{bibl-tra}
+% new bibtex support:
+
+% \loadmarkfile{publ-ini}
+% \loadmarkfile{publ-tra}
+% \loadmarkfile{publ-xml}
+
%loadmarkfile{x-xtag} % no longer preloaded
\loadmarkfile{meta-xml}
diff --git a/tex/context/base/font-otf.lua b/tex/context/base/font-otf.lua
index 09078f9ee..d6373cef9 100644
--- a/tex/context/base/font-otf.lua
+++ b/tex/context/base/font-otf.lua
@@ -106,6 +106,8 @@ function otf.fileformat(filename)
return formats.otf, suffix == "otf"
elseif leader == "ttcf" then
return formats.ttc, suffix == "ttc"
+ -- elseif leader == "true" then
+ -- return formats.ttf, suffix == "ttf"
elseif suffix == "ttc" then
return formats.ttc, true
elseif suffix == "dfont" then
diff --git a/tex/context/base/font-otn.lua b/tex/context/base/font-otn.lua
index 7a5ae1758..38b35c023 100644
--- a/tex/context/base/font-otn.lua
+++ b/tex/context/base/font-otn.lua
@@ -8,6 +8,9 @@ if not modules then modules = { } end modules ['font-otn'] = {
-- preprocessors = { "nodes" }
+-- anchor class : mark, mkmk, curs, mklg (todo)
+-- anchor type : mark, basechar, baselig, basemark, centry, cexit, max (todo)
+
-- this is still somewhat preliminary and it will get better in due time;
-- much functionality could only be implemented thanks to the husayni font
-- of Idris Samawi Hamid to who we dedicate this module.
diff --git a/tex/context/base/font-syn.lua b/tex/context/base/font-syn.lua
index 5b50ac75f..5126739a7 100644
--- a/tex/context/base/font-syn.lua
+++ b/tex/context/base/font-syn.lua
@@ -81,7 +81,33 @@ directives.register("fonts.usesystemfonts", function(v) usesystemfonts = toboole
local P, C, Cc, Cs = lpeg.P, lpeg.C, lpeg.Cc, lpeg.Cs
--- what to do with 'thin'
+-- -- what to do with these -- --
+--
+-- thin -> thin
+--
+-- regu -> regular -> normal
+-- norm -> normal -> normal
+-- stan -> standard -> normal
+-- medi -> medium
+-- ultr -> ultra
+-- ligh -> light
+-- heav -> heavy
+-- blac -> black
+-- thin
+-- book
+-- verylight
+--
+-- buch -> book
+-- buchschrift -> book
+-- halb -> demi
+-- halbfett -> demi
+-- mitt -> medium
+-- mittel -> medium
+-- fett -> bold
+-- mage -> light
+-- mager -> light
+-- nord -> normal
+-- gras -> normal
local weights = Cs ( -- not extra
P("demibold")
@@ -90,6 +116,7 @@ local weights = Cs ( -- not extra
+ P("ultrabold")
+ P("extrabold")
+ P("ultralight")
+ + P("extralight")
+ P("bold")
+ P("demi")
+ P("semi")
@@ -103,6 +130,17 @@ local weights = Cs ( -- not extra
+ P("regular") / "normal"
)
+-- numeric_weights = {
+-- 200 = "extralight",
+-- 300 = "light",
+-- 400 = "book",
+-- 500 = "medium",
+-- 600 = "demi",
+-- 700 = "bold",
+-- 800 = "heavy",
+-- 900 = "black",
+-- }
+
local normalized_weights = sparse {
regular = "normal",
}
@@ -116,6 +154,7 @@ local styles = Cs (
+ P("roman") / "normal"
+ P("ital") / "italic" -- might be tricky
+ P("ita") / "italic" -- might be tricky
+--+ P("obli") / "oblique"
)
local normalized_styles = sparse {
@@ -129,6 +168,7 @@ local widths = Cs(
+ P("thin")
+ P("expanded")
+ P("cond") / "condensed"
+--+ P("expa") / "expanded"
+ P("normal")
+ P("book") / "normal"
)
@@ -268,6 +308,9 @@ filters.dfont = fontloader.info
-- glyphs so here we first load and then discard which is a waste. In the past it did
-- free memory because a full load was done. One of these things that goes unnoticed.
--
+-- missing: names, units_per_em, design_range_bottom, design_range_top, design_size,
+-- pfminfo, top_side_bearing
+
-- function fontloader.fullinfo(...) -- check with taco what we get / could get
-- local ff = fontloader.open(...)
-- if ff then
@@ -283,7 +326,7 @@ filters.dfont = fontloader.info
-- Phillip suggested this faster variant but it's still a hack as fontloader.info should
-- return these keys/values (and maybe some more) but at least we close the loader which
-- might save some memory in the end.
---
+
-- function fontloader.fullinfo(name)
-- local ff = fontloader.open(name)
-- if ff then
@@ -301,6 +344,7 @@ filters.dfont = fontloader.info
-- design_size = fields.design_size and ff.design_size,
-- italicangle = fields.italicangle and ff.italicangle,
-- pfminfo = fields.pfminfo and ff.pfminfo,
+-- top_side_bearing = fields.top_side_bearing and ff.top_side_bearing,
-- }
-- table.setmetatableindex(d,function(t,k)
-- report_names("warning, trying to access field %a in font table of %a",k,name)
@@ -313,7 +357,7 @@ filters.dfont = fontloader.info
-- end
-- As we have lazy loading anyway, this one still is full and with less code than
--- the previous one.
+-- the previous one. But this depends on the garbage collector to kick in.
function fontloader.fullinfo(...)
local ff = fontloader.open(...)
@@ -326,6 +370,10 @@ function fontloader.fullinfo(...)
end
end
+if tonumber(status.luatex_version) > 78 or (tonumber(status.luatex_version) == 78 and tonumber(status.luatex_revision) > 0) then
+ fontloader.fullinfo = fontloader.info
+end
+
filters.otf = fontloader.fullinfo
filters.ttf = fontloader.fullinfo
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 09764dc29..7061e0103 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.pdf b/tex/context/base/status-lua.pdf
index 6feb6faea..054b088ad 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index ef94206cc..aea0c2e69 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 : 01/09/14 19:11:57
+-- merge date : 01/11/14 23:58:35
do -- begin closure to overcome local limits and interference