From 4bc9f650e3e87812fa7daf77db51a7adf37efdb4 Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Wed, 21 Nov 2012 16:11:00 +0100 Subject: beta 2012.11.21 16:11 --- scripts/context/lua/mtx-server-ctx-fonttest.lua | 30 ++++-- scripts/context/lua/mtx-server.lua | 2 +- tex/context/base/cont-new.mkii | 2 +- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4147 -> 4141 bytes tex/context/base/context-version.png | Bin 40295 -> 40469 bytes tex/context/base/context.mkii | 2 +- tex/context/base/context.mkiv | 2 +- tex/context/base/core-con.lua | 120 +++++++++++++++++++++ tex/context/base/font-ctx.lua | 13 +-- tex/context/base/font-enh.lua | 12 ++- tex/context/base/font-ott.lua | 4 + tex/context/base/font-set.mkvi | 6 +- tex/context/base/font-sym.mkvi | 4 +- tex/context/base/math-vfu.lua | 8 ++ tex/context/base/status-files.pdf | Bin 24562 -> 24552 bytes tex/context/base/status-lua.pdf | Bin 196456 -> 196572 bytes tex/context/base/trac-ctx.lua | 40 ++++--- tex/context/base/trac-ctx.mkiv | 34 +++++- tex/context/base/type-imp-latinmodern.mkiv | 11 +- tex/context/base/type-imp-texgyre.mkiv | 64 ++++++++--- tex/context/base/typo-mar.mkiv | 2 +- tex/context/base/util-sql-imp-library.lua | 2 +- tex/context/base/util-sql-tickets.lua | 8 +- tex/context/base/util-sql-users.lua | 7 ++ tex/context/fonts/texgyre.lfg | 11 ++ tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 27 files changed, 323 insertions(+), 65 deletions(-) create mode 100644 tex/context/fonts/texgyre.lfg 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 = [[

options: %s ]] +-- + local result_template = [[

- +

results: tex file pdf file @@ -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 Binary files a/tex/context/base/context-version.pdf and b/tex/context/base/context-version.pdf differ diff --git a/tex/context/base/context-version.png b/tex/context/base/context-version.png index 615372947..069af3728 100644 Binary files a/tex/context/base/context-version.png and b/tex/context/base/context-version.png 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 Binary files a/tex/context/base/status-files.pdf and b/tex/context/base/status-files.pdf differ diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf index b2727e3ca..94b67d7d3 100644 Binary files a/tex/context/base/status-lua.pdf and b/tex/context/base/status-lua.pdf 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 -- cgit v1.2.3