summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius <mariausol@gmail.com>2012-11-21 17:20:15 +0200
committerMarius <mariausol@gmail.com>2012-11-21 17:20:15 +0200
commit6ff1b85c8ffeed52b161c7242d4bc5519f244077 (patch)
tree497fb07f06b87f3980f4c8d516bb36911006799c
parentbe67c402473c7a5c3c5dde681b61f4894505fee9 (diff)
downloadcontext-6ff1b85c8ffeed52b161c7242d4bc5519f244077.tar.gz
beta 2012.11.21 16:11
-rw-r--r--scripts/context/lua/mtx-server-ctx-fonttest.lua30
-rw-r--r--scripts/context/lua/mtx-server.lua2
-rw-r--r--tex/context/base/cont-new.mkii2
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4147 -> 4141 bytes
-rw-r--r--tex/context/base/context-version.pngbin40295 -> 40469 bytes
-rw-r--r--tex/context/base/context.mkii2
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/core-con.lua120
-rw-r--r--tex/context/base/font-ctx.lua13
-rw-r--r--tex/context/base/font-enh.lua12
-rw-r--r--tex/context/base/font-ott.lua4
-rw-r--r--tex/context/base/font-set.mkvi6
-rw-r--r--tex/context/base/font-sym.mkvi4
-rw-r--r--tex/context/base/math-vfu.lua8
-rw-r--r--tex/context/base/status-files.pdfbin24562 -> 24552 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin196456 -> 196572 bytes
-rw-r--r--tex/context/base/trac-ctx.lua40
-rw-r--r--tex/context/base/trac-ctx.mkiv34
-rw-r--r--tex/context/base/type-imp-latinmodern.mkiv11
-rw-r--r--tex/context/base/type-imp-texgyre.mkiv64
-rw-r--r--tex/context/base/typo-mar.mkiv2
-rw-r--r--tex/context/base/util-sql-imp-library.lua2
-rw-r--r--tex/context/base/util-sql-tickets.lua8
-rw-r--r--tex/context/base/util-sql-users.lua7
-rw-r--r--tex/context/fonts/texgyre.lfg11
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
27 files changed, 323 insertions, 65 deletions
diff --git a/scripts/context/lua/mtx-server-ctx-fonttest.lua b/scripts/context/lua/mtx-server-ctx-fonttest.lua
index b30cf0175..a8d7edf41 100644
--- a/scripts/context/lua/mtx-server-ctx-fonttest.lua
+++ b/scripts/context/lua/mtx-server-ctx-fonttest.lua
@@ -6,12 +6,17 @@ if not modules then modules = { } end modules ['mtx-server-ctx-fonttest'] = {
license = "see context related readme files"
}
---~ dofile(resolvers.findfile("l-aux.lua","tex"))
+-- probably too much but who cares
+
dofile(resolvers.findfile("trac-lmx.lua","tex"))
+dofile(resolvers.findfile("font-ini.lua","tex"))
+dofile(resolvers.findfile("font-con.lua","tex"))
+dofile(resolvers.findfile("font-oti.lua","tex"))
+dofile(resolvers.findfile("font-otf.lua","tex"))
+dofile(resolvers.findfile("font-otp.lua","tex"))
dofile(resolvers.findfile("font-ott.lua","tex"))
dofile(resolvers.findfile("font-syn.lua","tex"))
dofile(resolvers.findfile("font-mis.lua","tex"))
---~ dofile(resolvers.findfile("font-otp.lua","tex"))
local format, gsub, concat, match, find = string.format, string.gsub, table.concat, string.match, string.find
@@ -34,7 +39,7 @@ local process_templates = { }
process_templates.default = [[
\starttext
- \setcharactermirroring[1]
+ \setupdirections[bidi=global]
\definefontfeature[sample][analyze=yes,%s]
\definedfont[name:%s*sample]
\startTEXpage[offset=3pt]
@@ -59,7 +64,7 @@ process_templates.trace = [[
\setupcolors[state=start]
-\setcharactermirroring[1]
+\setupdirections[bidi=global]
\setvariables
[otftracker]
@@ -280,9 +285,11 @@ local edit_template = [[
<br/> <br/>options:&nbsp;%s
]]
+-- <embed src="%s#toolbar=0&amp;navpanes=0&amp;scrollbar=0" width="100%%"/>
+
local result_template = [[
<br/> <br/>
- <embed src="%s#toolbar=0&amp;navpanes=0&amp;scrollbar=0" width="100%%"/>
+ <embed src="%s#view=Fit&amp;toolbar=0&amp;navpanes=0&amp;scrollbar=0" width="100%%"/>
<br/> <br/> results:
<a href='%s' target="source">tex file</a>
<a href='%s' target="result">pdf file</a>
@@ -377,8 +384,14 @@ local function process_font(currentfont,detail) -- maybe just fontname
local sample = string.strip(detail.sampletext or "")
if sample == "" then sample = sample_line end
report("sample text: %s",sample)
- io.savedata(file.join(temppath,file.addsuffix(tempname,"tex")),format(variant,concat(features,","),currentfont,sample))
- os.execute(format("mtxrun --path=%s --script context --once --batchmode %s",temppath,tempname))
+ dir.mkdirs(temppath)
+ local fullname = file.join(temppath,file.addsuffix(tempname,"tex"))
+ local data = format(variant,concat(features,","),currentfont,sample)
+ local command = format("mtxrun --path=%q --script context --once --batchmode %q",temppath,tempname)
+ report("filename: %s",fullname)
+ report("command: %s",command)
+ io.savedata(fullname,data)
+ os.execute(command)
return edit_font(currentfont,detail,tempname)
end
@@ -390,7 +403,8 @@ local tex_template = [[
local function show_source(currentfont,detail)
if tempname and tempname ~= "" then
- return format(tex_template,io.loaddata(file.join(temppath,file.addsuffix(tempname,"tex"))) or "no source yet")
+ local data = io.loaddata(file.join(temppath,file.addsuffix(tempname,"tex"))) or "no source yet"
+ return format(tex_template,data)
else
return "no source file"
end
diff --git a/scripts/context/lua/mtx-server.lua b/scripts/context/lua/mtx-server.lua
index d6e8ac902..c74319a71 100644
--- a/scripts/context/lua/mtx-server.lua
+++ b/scripts/context/lua/mtx-server.lua
@@ -26,7 +26,6 @@ local report = application.report
scripts = scripts or { }
scripts.webserver = scripts.webserver or { }
-dofile(resolvers.findfile("l-url.lua","tex"))
dofile(resolvers.findfile("luat-soc.lua","tex"))
local socket = socket or require("socket")
@@ -226,6 +225,7 @@ function handlers.lua(client,configuration,filename,suffix,iscontent,hashed) --
end
end
else
+ report("problematic script: %s",filename)
errormessage(client,configuration,404)
end
end
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii
index ebccc4a61..f0b978ef6 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.11.19 19:04}
+\newcontextversion{2012.11.21 16:11}
%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 c991e3994..bd96b176f 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.11.19 19:04}
+\newcontextversion{2012.11.21 16:11}
%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 2ee599fd6..c5d60e273 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-version.png b/tex/context/base/context-version.png
index 615372947..069af3728 100644
--- a/tex/context/base/context-version.png
+++ b/tex/context/base/context-version.png
Binary files differ
diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii
index 3ffce1140..e6a8308aa 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.11.19 19:04}
+\edef\contextversion{2012.11.21 16:11}
%D For those who want to use this:
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index ff6ebc421..2941e38d9 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.11.19 19:04}
+\edef\contextversion{2012.11.21 16:11}
%D For those who want to use this:
diff --git a/tex/context/base/core-con.lua b/tex/context/base/core-con.lua
index 9fc449809..19aa3b223 100644
--- a/tex/context/base/core-con.lua
+++ b/tex/context/base/core-con.lua
@@ -719,8 +719,12 @@ function commands.ordinal(n,language)
end
end
+-- verbose numbers
+
local verbose = { }
+-- verbose english
+
local words = {
[0] = "zero",
[1] = "one",
@@ -816,6 +820,122 @@ verbose.en = verbose.english
-- print(verbose.english(12345))
-- print(verbose.english(12345678900000))
+-- verbose spanish (unchecked)
+
+local floor = math.floor
+local concat = table.concat
+
+local verbose = { }
+
+local words = {
+ [1] = "uno",
+ [2] = "dos",
+ [3] = "tres",
+ [4] = "cuatro",
+ [5] = "cinco",
+ [6] = "seis",
+ [7] = "siete",
+ [8] = "ocho",
+ [9] = "nueve",
+ [10] = "diez",
+ [11] = "once",
+ [12] = "doce",
+ [13] = "trece",
+ [14] = "catorce",
+ [15] = "quince",
+ [16] = "dieciséis",
+ [17] = "diecisiete",
+ [18] = "dieciocho",
+ [19] = "diecinueve",
+ [20] = "veinte",
+ [21] = "veintiuno",
+ [22] = "veintidós",
+ [23] = "veintitrés",
+ [24] = "veinticuatro",
+ [25] = "veinticinco",
+ [26] = "veintiséis",
+ [27] = "veintisiete",
+ [28] = "veintiocho",
+ [29] = "veintinueve",
+ [30] = "treinta",
+ [40] = "cuarenta",
+ [50] = "cincuenta",
+ [60] = "sesenta",
+ [70] = "setenta",
+ [80] = "ochenta",
+ [90] = "noventa",
+ [100] = "ciento",
+ [200] = "doscientos",
+ [300] = "trescientos",
+ [400] = "cuatrocientos",
+ [500] = "quinientos",
+ [600] = "seiscientos",
+ [700] = "setecientos",
+ [800] = "ochocientos",
+ [900] = "novecientos",
+ [1000] = "mil",
+ [1000^2] = "millón",
+ [1000^3] = "millones",
+}
+
+function verbose.spanish(n)
+ local w = words[n]
+ if w then
+ return w
+ end
+ local t = { }
+ local function compose_one(n)
+ local w = words[n]
+ if w then
+ t[#t+1] = w
+ return
+ end
+ local a, b = floor(n/100), n % 100
+ if a == 10 then
+ t[#t+1] = words[1]
+ t[#t+1] = words[1000]
+ elseif a > 0 then
+-- t[#t+1] = words[a]
+ t[#t+1] = words[100]
+ end
+ if words[b] then
+ t[#t+1] = words[b]
+ else
+ a, b = floor(b/10), n % 10
+ t[#t+1] = words[a*10]
+t[#t+1] = "y"
+ t[#t+1] = words[b]
+ end
+ end
+ local function compose_two(n,m)
+ if n > (m-1) then
+ local a, b = floor(n/m), n % m
+ if a > 0 then
+ compose_one(a)
+ end
+ t[#t+1] = words[m]
+ n = b
+ end
+ return n
+ end
+ n = compose_two(n,1000^4)
+ n = compose_two(n,1000^3)
+ n = compose_two(n,1000^2)
+ n = compose_two(n,1000^1)
+ if n > 0 then
+ compose_one(n)
+ end
+ return #t > 0 and concat(t," ") or tostring(n)
+end
+
+verbose.es = verbose.spanish
+
+-- print(verbose.spanish(31))
+-- print(verbose.spanish(101))
+-- print(verbose.spanish(199))
+
+-- verbose handler:
+
function converters.verbose(n,language)
local t = language and verbose[language]
return t and t(n) or n
diff --git a/tex/context/base/font-ctx.lua b/tex/context/base/font-ctx.lua
index 1b3384833..d4baec7bd 100644
--- a/tex/context/base/font-ctx.lua
+++ b/tex/context/base/font-ctx.lua
@@ -1207,10 +1207,11 @@ mappings.reset() -- resets the default file
local function nametoslot(name)
local t = type(name)
if t == "string" then
- local tfmdata = fonts.hashes.identifiers[currentfont()]
- local shared = tfmdata and tfmdata.shared
- local fntdata = shared and shared.rawdata
- return fntdata and fntdata.resources.unicodes[name]
+-- local tfmdata = fontdata[currentfont()]
+-- local shared = tfmdata and tfmdata.shared
+-- local fntdata = shared and shared.rawdata
+-- return fntdata and fntdata.resources.unicodes[name] -- could also be in hashes
+ return resources[true].unicodes[name]
elseif t == "number" then
return n
end
@@ -1228,7 +1229,7 @@ function loggers.reportdefinedfonts()
local parameters = data.parameters or { }
tn = tn + 1
t[tn] = {
- format("%03i",id or 0),
+ format("%03i",id or 0),
format("%09i",parameters.size or 0),
properties.type or "real",
properties.format or "unknown",
@@ -1236,7 +1237,7 @@ function loggers.reportdefinedfonts()
properties.psname or "",
properties.fullname or "",
}
-report_status("%s: %s",properties.name,concat(sortedkeys(data)," "))
+ report_status("%s: %s",properties.name,concat(sortedkeys(data)," "))
end
formatcolumns(t," ")
report_status()
diff --git a/tex/context/base/font-enh.lua b/tex/context/base/font-enh.lua
index ca9893e3d..b846f51fa 100644
--- a/tex/context/base/font-enh.lua
+++ b/tex/context/base/font-enh.lua
@@ -164,7 +164,11 @@ registerafmfeature {
initializers = {
base = initializeunicoding,
node = initializeunicoding,
- }
+ },
+ -- manipulators = {
+ -- base = finalizeunicoding,
+ -- node = finalizeunicoding,
+ -- }
}
registerotffeature {
@@ -173,5 +177,9 @@ registerotffeature {
initializers = {
base = initializeunicoding,
node = initializeunicoding,
- }
+ },
+ -- manipulators = {
+ -- base = finalizeunicoding,
+ -- node = finalizeunicoding,
+ -- }
}
diff --git a/tex/context/base/font-ott.lua b/tex/context/base/font-ott.lua
index c0a6c4d27..5605474ed 100644
--- a/tex/context/base/font-ott.lua
+++ b/tex/context/base/font-ott.lua
@@ -827,6 +827,10 @@ local checkers = {
-- inspect(fonts.handlers.otf.statistics.usedfeatures)
+if not storage then
+ return
+end
+
local usedfeatures = statistics.usedfeatures or { }
statistics.usedfeatures = usedfeatures
diff --git a/tex/context/base/font-set.mkvi b/tex/context/base/font-set.mkvi
index c5450a152..0e2058c18 100644
--- a/tex/context/base/font-set.mkvi
+++ b/tex/context/base/font-set.mkvi
@@ -37,7 +37,7 @@
%D runtime we have to load the default bodyfont size just before
%D we start typesetting.
-\def\fallbacktypeface{modern-designsize} % at some point we might prefer just modern
+% \enablemode[lmmath]
\def\font_preloads_reset_nullfont % this is needed because some macro packages (tikz) misuse \nullfont
{\dorecurse\plusseven{\fontdimen\recurselevel\nullfont\zeropoint}% keep en eye on this as:
@@ -46,7 +46,9 @@
\def\font_preload_default_fonts
{\font_preloads_reset
- \setupbodyfont[\fallbacktypeface,\fontstyle,\fontbody]%
+ \doifmodeelse{lmmath}
+ {\setupbodyfont[modern-designsize-virtual,\fontstyle,\fontbody]}% this will stay
+ {\setupbodyfont[modern-designsize,\fontstyle,\fontbody]}% % this might become 'modern'
\showmessage\m!fonts6{fallback modern \fontstyle\normalspace\normalizedbodyfontsize}}
\def\font_preload_default_fonts_mm
diff --git a/tex/context/base/font-sym.mkvi b/tex/context/base/font-sym.mkvi
index 68237c073..e1d5332c4 100644
--- a/tex/context/base/font-sym.mkvi
+++ b/tex/context/base/font-sym.mkvi
@@ -165,8 +165,8 @@
\unexpanded\def\getnamedglyphstyled#fontname#character{{\setstyledsymbolicfont{#fontname}\ctxcommand{fontchar("#character")}}}
\unexpanded\def\getnamedglyphdirect#fontname#character{{\setdirectsymbolicfont{#fontname}\ctxcommand{fontchar("#character")}}}
-\unexpanded\def\getglyphstyled #fontname#character{{\setstyledsymbolicfont{#fontname}\doifnumberelse{#character}\char\donothing#2}}
-\unexpanded\def\getglyphdirect #fontname#character{{\setdirectsymbolicfont{#fontname}\doifnumberelse{#character}\char\donothing#2}}
+\unexpanded\def\getglyphstyled #fontname#character{{\setstyledsymbolicfont{#fontname}\doifnumberelse{#character}\char\donothing#character}}
+\unexpanded\def\getglyphdirect #fontname#character{{\setdirectsymbolicfont{#fontname}\doifnumberelse{#character}\char\donothing#character}}
% this one is wrong:
diff --git a/tex/context/base/math-vfu.lua b/tex/context/base/math-vfu.lua
index 5b41e2fb5..4738844c3 100644
--- a/tex/context/base/math-vfu.lua
+++ b/tex/context/base/math-vfu.lua
@@ -10,6 +10,14 @@ if not modules then modules = { } end modules ['math-vfu'] = {
-- better and better. If you have problems with math fonts or miss
-- characters report it to the ConTeXt mailing list. Also thanks to
-- Boguslaw for finding a couple of errors.
+--
+-- This mechanism will stay around. Even when we've switched to the
+-- real fonts, one can still say:
+--
+-- \enablemode[lmmath,pxmath,txmath]
+--
+-- to get the virtual counterparts. There are still areas where the
+-- virtuals are better.
-- 20D6 -> 2190
-- 20D7 -> 2192
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index a6baf6a3f..2dafcdf66 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 b2727e3ca..94b67d7d3 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/trac-ctx.lua b/tex/context/base/trac-ctx.lua
index 813443816..706e7a244 100644
--- a/tex/context/base/trac-ctx.lua
+++ b/tex/context/base/trac-ctx.lua
@@ -6,31 +6,43 @@ if not modules then modules = { } end modules ['trac-ctx'] = {
license = "see context related readme files"
}
-local commands, context = commands, context
+local commands = commands
+local context = context
+local register = trackers.register
-tex.trackers = tex.trackers or { }
+local textrackers = tex.trackers or { }
+local texdirectives = tex.directives or { }
-local textrackers = tex.trackers
-local register = trackers.register
+tex.trackers = textrackers
+tex.directives = texdirectives
-storage.register("tex/trackers",textrackers,"tex.trackers")
+storage.register("tex/trackers", textrackers, "tex.trackers")
+storage.register("tex/directives",texdirectives,"tex.directives")
-local function doit(tag,v)
- local tt = textrackers[tag]
+local function doit(category,tag,v)
+ local tt = category[tag]
if tt then
context.unprotect()
- context(v and tt[1] or tt[2])
+ context(v and tt[1] or tt[2]) -- could be one call
context.protect()
end
end
-function commands.initializetextrackers()
- for tag, commands in next, textrackers do
- register(tag, function(v) doit(tag,v) end) -- todo: v,tag in caller
+local function initialize(category,register)
+ for tag, commands in next, category do
+ register(tag, function(v) doit(category,tag,v) end) -- todo: v,tag in caller
end
end
-function commands.installtextracker(tag,enable,disable)
- textrackers[tag] = { enable, disable }
- register(tag, function(v) doit(tag,v) end) -- todo: v,tag in caller
+local function install(category,register,tag,enable,disable)
+ category[tag] = { enable, disable }
+ register(tag, function(v) doit(category,tag,v) end) -- todo: v,tag in caller
end
+
+function commands.initializetextrackers () initialize(textrackers ,trackers .register ) end
+function commands.initializetexdirectives() initialize(texdirectives,directives.register) end
+
+-- commands.install(tag,enable,disable):
+
+function commands.installtextracker (...) install(textrackers ,trackers .register,...) end
+function commands.installtexdirective(...) install(texdirectives,directives.register,...) end
diff --git a/tex/context/base/trac-ctx.mkiv b/tex/context/base/trac-ctx.mkiv
index 4aeb99116..3baddede2 100644
--- a/tex/context/base/trac-ctx.mkiv
+++ b/tex/context/base/trac-ctx.mkiv
@@ -21,8 +21,40 @@
\unexpanded\def\installtextracker#1#2#3%
{\ctxcommand{installtextracker("#1",\!!bs\detokenize{#2}\!!es,\!!bs\detokenize{#3}\!!es)}}
+\unexpanded\def\installtexdirective#1#2#3%
+ {\ctxcommand{installtexdirective("#1",\!!bs\detokenize{#2}\!!es,\!!bs\detokenize{#3}\!!es)}}
+
\appendtoks
- \ctxcommand{initializetextrackers()}%
+ \ctxcommand{initializetextrackers ()}%
+ \ctxcommand{initializetexdirectives()}%
\to \everyjob
\protect \endinput
+
+% this is one option:
+%
+% \newconditional\c_math_virtual_tx
+% \newconditional\c_math_virtual_px
+% \newconditional\c_math_virtual_lm
+%
+% \installtexdirective {fonts.math.virtual.tx} {\settrue \c_math_virtual_tx} {\setfalse\c_math_virtual_tx}
+% \installtexdirective {fonts.math.virtual.px} {\settrue \c_math_virtual_px} {\setfalse\c_math_virtual_px}
+% \installtexdirective {fonts.math.virtual.lm} {\settrue \c_math_virtual_lm} {\setfalse\c_math_virtual_lm}
+%
+% but as it makes the typescript look ugly we wil use:
+%
+% \installtexdirective {fonts.math.virtual.tx} {\enablemode[fonts.math.virtual.tx]} {\disablemode[fonts.math.virtual.tx]}
+% \installtexdirective {fonts.math.virtual.px} {\enablemode[fonts.math.virtual.px]} {\disablemode[fonts.math.virtual.px]}
+% \installtexdirective {fonts.math.virtual.lm} {\enablemode[fonts.math.virtual.lm]} {\disablemode[fonts.math.virtual.lm]}
+%
+% which could be:
+%
+% \def\mode_f_m_v_tx{fonts.math.virtual.tx}
+% \def\mode_f_m_v_px{fonts.math.virtual.px}
+% \def\mode_f_m_v_lm{fonts.math.virtual.lm}
+%
+% \installtexdirective \mode_f_m_v_tx {\enablemode[\mode_f_m_v_tx]} {\disablemode[\mode_f_m_v_tx]}
+% \installtexdirective \mode_f_m_v_px {\enablemode[\mode_f_m_v_px]} {\disablemode[\mode_f_m_v_px]}
+% \installtexdirective \mode_f_m_v_lm {\enablemode[\mode_f_m_v_lm]} {\disablemode[\mode_f_m_v_lm]}
+%
+% alas .. we don't want to define this in the core
diff --git a/tex/context/base/type-imp-latinmodern.mkiv b/tex/context/base/type-imp-latinmodern.mkiv
index 69b773e93..ee6d89f44 100644
--- a/tex/context/base/type-imp-latinmodern.mkiv
+++ b/tex/context/base/type-imp-latinmodern.mkiv
@@ -149,7 +149,6 @@
\stoptypescript
\starttypescript [\s!mono] [modern,latin-modern,modern-variable,latin-modern-variable,modern-condensed,latin-modern-condensed]
- \loadfontgoodies[lm]
\definefontsynonym [LMTypewriter-Regular] [\s!file:lmmono10-regular] [\s!features=\s!none]
\definefontsynonym [LMTypewriter-Italic] [\s!file:lmmono10-italic] [\s!features=\s!none]
\definefontsynonym [LMTypewriter-Oblique] [\s!file:lmmonoslant10-regular] [\s!features=\s!none]
@@ -175,7 +174,7 @@
\definefontsynonym [LMMathRoman-Bold] [\v!file:lmodernmath-regular.otf] [\s!features=\s!math\mathsizesuffix,\s!goodies=lm]
\stoptypescript
- \starttypescript [modern-designsize]
+ \starttypescript [modern-designsize-virtual]
\definetypeface [\typescriptone] [\s!rm] [\s!serif] [latin-modern-designsize] [\s!default] [\s!designsize=\s!auto]
\definetypeface [\typescriptone] [\s!ss] [\s!sans] [latin-modern-designsize] [\s!default] [\s!designsize=\s!auto]
\definetypeface [\typescriptone] [\s!tt] [\s!mono] [latin-modern-designsize] [\s!default] [\s!designsize=\s!auto]
@@ -183,6 +182,14 @@
\quittypescriptscanning
\stoptypescript
+ \starttypescript [modern-designsize]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [latin-modern-designsize] [\s!default] [\s!designsize=\s!auto]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [latin-modern-designsize] [\s!default] [\s!designsize=\s!auto]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [latin-modern-designsize] [\s!default] [\s!designsize=\s!auto]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [modern] [\s!default]
+ \quittypescriptscanning
+ \stoptypescript
+
\starttypescript [modern,modern-base]
\definetypeface [\typescriptone] [\s!rm] [\s!serif] [modern] [\s!default]
\definetypeface [\typescriptone] [\s!ss] [\s!sans] [modern] [\s!default]
diff --git a/tex/context/base/type-imp-texgyre.mkiv b/tex/context/base/type-imp-texgyre.mkiv
index 823f6b4a9..f956f731f 100644
--- a/tex/context/base/type-imp-texgyre.mkiv
+++ b/tex/context/base/type-imp-texgyre.mkiv
@@ -197,26 +197,56 @@
\stoptypescriptcollection
-\starttypescriptcollection[xmath]
+\startmode[txmath]
- % Times Math (tx)
+ \starttypescriptcollection[texgyre-math-times]
- \starttypescript [\s!math][times,termes][\s!all]
- \loadfontgoodies[tx-math]
- \definefontsynonym[\s!MathRoman][txmath@tx-math]
- % \definefontsynonym[\s!MathRomanBold][MathRoman]
- \stoptypescript
+ \starttypescript [\s!math][times,termes][\s!all]
+ \loadfontgoodies[tx-math]
+ \definefontsynonym[\s!MathRoman][txmath@tx-math]
+ % \definefontsynonym[\s!MathRomanBold][MathRoman]
+ \stoptypescript
- % Palatino Math (px)
+ \stoptypescriptcollection
- \starttypescript [\s!math][palatino,pagella][\s!all]
- \loadfontgoodies[px-math]
- \definefontsynonym[\s!MathRoman][pxmath@px-math]
- % \definefontsynonym[\s!MathRomanBold][MathRoman]
- \stoptypescript
+\stopmode
-% \starttypescript [\s!math][palatino,pagella][\s!all]
-% \definefontsynonym[\s!MathRoman][file:texgyrepagella-math.otf][\s!features=\s!math\mathsizesuffix]
-% \stoptypescript
+\startnotmode[txmath]
-\stoptypescriptcollection
+ \starttypescriptcollection[texgyre-math-times]
+
+ \starttypescript [\s!math][times,termes][\s!all]
+ \loadfontgoodies[texgyre]
+ \definefontsynonym[\s!MathRoman][file:tgtermesmath-regular.otf][\s!features=\s!math\mathsizesuffix]
+ \stoptypescript
+
+ \stoptypescriptcollection
+
+\stopnotmode
+
+\startmode[pxmath]
+
+ \starttypescriptcollection[texgyre-math]
+
+ \starttypescript [\s!math][palatino,pagella][\s!all]
+ \loadfontgoodies[px-math]
+ \definefontsynonym[\s!MathRoman][pxmath@px-math]
+ % \definefontsynonym[\s!MathRomanBold][MathRoman]
+ \stoptypescript
+
+ \stoptypescriptcollection
+
+\stopmode
+
+\startnotmode[pxmath]
+
+ \starttypescriptcollection[texgyre-math]
+
+ \starttypescript [\s!math][palatino,pagella][\s!all]
+ \loadfontgoodies[texgyre]
+ \definefontsynonym[\s!MathRoman][file:tgpagellamath-regular.otf][\s!features=\s!math\mathsizesuffix]
+ \stoptypescript
+
+ \stoptypescriptcollection
+
+\stopnotmode
diff --git a/tex/context/base/typo-mar.mkiv b/tex/context/base/typo-mar.mkiv
index 08d8b0cf0..595cf3756 100644
--- a/tex/context/base/typo-mar.mkiv
+++ b/tex/context/base/typo-mar.mkiv
@@ -148,7 +148,7 @@
\appendtoks
\forgetall
\tf
- \deactivatecolor % needed, but maybe we should switch to maintextcolor: \onlyinheritmaintextcolor
+ \resetallattributes % \deactivatecolor % needed, but maybe we should switch to maintextcolor: \onlyinheritmaintextcolor
\to \everymargindatacontent
% trialtypesetting: no need for margin stuff while trialing as
diff --git a/tex/context/base/util-sql-imp-library.lua b/tex/context/base/util-sql-imp-library.lua
index 05b4f5b06..108de480a 100644
--- a/tex/context/base/util-sql-imp-library.lua
+++ b/tex/context/base/util-sql-imp-library.lua
@@ -142,7 +142,7 @@ local function fetched(specification,query,converter)
local q = query[i]
local r, m = connection:execute(q)
if m then
- report_state("error in query, stage 1: %s",string.collapsespaces(q))
+ report_state("error in query to host %s: %s",specification.host or "?",string.collapsespaces(q))
if m then
report_state("message: %s",m)
end
diff --git a/tex/context/base/util-sql-tickets.lua b/tex/context/base/util-sql-tickets.lua
index f54ec433f..2dc334ce6 100644
--- a/tex/context/base/util-sql-tickets.lua
+++ b/tex/context/base/util-sql-tickets.lua
@@ -739,8 +739,10 @@ function tickets.getusertickets(db,usertoken)
end
local template =[[
- UPDATE %basename% SET
- `status` >= %rubish%
+ UPDATE
+ %basename%
+ SET
+ `status` = %deleted%
WHERE
`usertoken` = '%usertoken%' ;
]]
@@ -752,7 +754,7 @@ function tickets.removeusertickets(db,usertoken)
variables = {
basename = db.basename,
usertoken = usertoken,
- rubish = s_rubish,
+ deleted = s_deleted,
},
}
diff --git a/tex/context/base/util-sql-users.lua b/tex/context/base/util-sql-users.lua
index 8147f532d..f6845062f 100644
--- a/tex/context/base/util-sql-users.lua
+++ b/tex/context/base/util-sql-users.lua
@@ -110,6 +110,7 @@ local template =[[
`enabled` int(11) DEFAULT '1',
`email` varchar(80) DEFAULT NULL,
`address` varchar(256) DEFAULT NULL,
+ `theme` varchar(50) DEFAULT NULL,
`data` longtext,
PRIMARY KEY (`id`),
UNIQUE KEY `name_unique` (`name`)
@@ -124,6 +125,7 @@ local converter, fields = sql.makeconverter {
{ name = "enabled", type = "boolean" },
{ name = "email", type = "string" },
{ name = "address", type = "string" },
+ { name = "theme", type = "string" },
{ name = "data", type = "deserialize" },
}
@@ -203,6 +205,7 @@ local template =[[
`enabled`,
`email`,
`address`,
+ `theme`,
`data`
) VALUES (
'%name%',
@@ -211,6 +214,7 @@ local template =[[
'%enabled%',
'%email%',
'%address%',
+ '%theme%',
'%[data]%'
) ;
]]
@@ -235,6 +239,7 @@ function users.add(db,specification)
enabled = booleanstring(specification.enabled) and "1" or "0",
email = specification.email,
address = specification.address,
+ theme = specification.theme,
data = type(data) == "table" and db.serialize(data,"return") or "",
},
}
@@ -325,6 +330,7 @@ function users.save(db,id,specification)
local enabled = specification.enabled == nil and user.enabled or specification.enabled
local email = specification.email == nil and user.email or specification.email
local address = specification.address == nil and user.address or specification.address
+ local theme = specification.theme == nil and user.theme or specification.theme
local data = specification.data == nil and user.data or specification.data
-- table.print(data)
@@ -339,6 +345,7 @@ function users.save(db,id,specification)
enabled = booleanstring(enabled) and "1" or "0",
email = email,
address = address,
+ theme = theme,
data = type(data) == "table" and db.serialize(data,"return") or "",
},
}
diff --git a/tex/context/fonts/texgyre.lfg b/tex/context/fonts/texgyre.lfg
new file mode 100644
index 000000000..bfb474deb
--- /dev/null
+++ b/tex/context/fonts/texgyre.lfg
@@ -0,0 +1,11 @@
+return {
+ name = "tex gyre",
+ version = "1.00",
+ comment = "Goodies that complement tex gyre.",
+ author = "Hans Hagen",
+ copyright = "ConTeXt development team",
+ filenames = { -- for a while:
+ ["tgpagellamath-regular.otf"] = { "tgpagella-math.otf", "texgyrepagella-math.otf" },
+ ["tgtermesmath-regular.otf"] = { "tgtermes-math.otf" , "texgyretermes-math.otf" },
+ },
+}
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 3dce8b9ac..7708247c8 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 : 11/19/12 19:04:18
+-- merge date : 11/21/12 16:11:14
do -- begin closure to overcome local limits and interference