From c7921b422428aa7845f2f88ec5f1b70a676d1e06 Mon Sep 17 00:00:00 2001 From: Marius Date: Wed, 25 Apr 2012 19:00:14 +0300 Subject: beta 2012.04.25 17:29 --- .../lexers/data/scite-context-data-context.lua | 2 +- .../lexers/scite-context-lexer-pdf-object.lua | 3 +- .../data/scite/lexers/scite-context-lexer-pdf.lua | 7 +- context/data/scite/lexers/scite-context-lexer.lua | 9 ++- .../scite/scite-context-data-context.properties | 42 +++++------ tex/context/base/colo-ini.mkiv | 5 ++ tex/context/base/cont-new.mkii | 2 +- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4074 -> 4074 bytes tex/context/base/context-version.png | Bin 106269 -> 105987 bytes tex/context/base/context.mkii | 2 +- tex/context/base/context.mkiv | 2 +- tex/context/base/core-con.mkiv | 9 ++- tex/context/base/lpdf-col.lua | 59 +++++++++++++++- tex/context/base/lpdf-grp.lua | 9 +-- tex/context/base/lpdf-ini.lua | 14 ---- tex/context/base/mult-de.mkii | 1 + tex/context/base/mult-def.lua | 4 ++ tex/context/base/mult-en.mkii | 1 + tex/context/base/mult-fr.mkii | 1 + tex/context/base/mult-it.mkii | 1 + tex/context/base/mult-low.lua | 2 +- tex/context/base/mult-nl.mkii | 1 + tex/context/base/mult-pe.mkii | 1 + tex/context/base/mult-ro.mkii | 1 + tex/context/base/mult-sys.mkiv | 2 + tex/context/base/status-files.pdf | Bin 24299 -> 24309 bytes tex/context/base/status-lua.pdf | Bin 173047 -> 173212 bytes tex/context/base/type-fbk.mkiv | 78 ++++++++++----------- tex/context/base/type-imp-averia.mkiv | 74 +++++++++++++++++++ tex/context/base/type-set.mkiv | 2 + tex/context/interface/keys-cs.xml | 1 + tex/context/interface/keys-de.xml | 1 + tex/context/interface/keys-en.xml | 1 + tex/context/interface/keys-fr.xml | 1 + tex/context/interface/keys-it.xml | 1 + tex/context/interface/keys-nl.xml | 1 + tex/context/interface/keys-pe.xml | 1 + tex/context/interface/keys-ro.xml | 1 + tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 40 files changed, 246 insertions(+), 100 deletions(-) create mode 100644 tex/context/base/type-imp-averia.mkiv diff --git a/context/data/scite/lexers/data/scite-context-data-context.lua b/context/data/scite/lexers/data/scite-context-data-context.lua index 853ce38de..f97981d35 100644 --- a/context/data/scite/lexers/data/scite-context-data-context.lua +++ b/context/data/scite/lexers/data/scite-context-data-context.lua @@ -1,4 +1,4 @@ return { ["constants"]={ "zerocount", "minusone", "minustwo", "plusone", "plustwo", "plusthree", "plusfour", "plusfive", "plussix", "plusseven", "pluseight", "plusnine", "plusten", "plussixteen", "plushundred", "plusthousand", "plustenthousand", "plustwentythousand", "medcard", "maxcard", "zeropoint", "onepoint", "halfapoint", "onebasepoint", "maxdimen", "scaledpoint", "thousandpoint", "points", "halfpoint", "zeroskip", "pluscxxvii", "pluscxxviii", "pluscclv", "pluscclvi", "normalpagebox", "endoflinetoken", "outputnewlinechar", "emptytoks", "empty", "undefined", "voidbox", "emptybox", "emptyvbox", "emptyhbox", "bigskipamount", "medskipamount", "smallskipamount", "fmtname", "fmtversion", "texengine", "texenginename", "texengineversion", "luatexengine", "pdftexengine", "xetexengine", "unknownengine", "etexversion", "pdftexversion", "xetexversion", "xetexrevision", "activecatcode", "bgroup", "egroup", "endline", "conditionaltrue", "conditionalfalse", "attributeunsetvalue", "uprotationangle", "rightrotationangle", "downrotationangle", "leftrotationangle", "inicatcodes", "ctxcatcodes", "texcatcodes", "notcatcodes", "txtcatcodes", "vrbcatcodes", "prtcatcodes", "nilcatcodes", "luacatcodes", "tpacatcodes", "tpbcatcodes", "xmlcatcodes", "escapecatcode", "begingroupcatcode", "endgroupcatcode", "mathshiftcatcode", "alignmentcatcode", "endoflinecatcode", "parametercatcode", "superscriptcatcode", "subscriptcatcode", "ignorecatcode", "spacecatcode", "lettercatcode", "othercatcode", "activecatcode", "commentcatcode", "invalidcatcode", "tabasciicode", "newlineasciicode", "formfeedasciicode", "endoflineasciicode", "endoffileasciicode", "spaceasciicode", "hashasciicode", "dollarasciicode", "commentasciicode", "ampersandasciicode", "colonasciicode", "backslashasciicode", "circumflexasciicode", "underscoreasciicode", "leftbraceasciicode", "barasciicode", "rightbraceasciicode", "tildeasciicode", "delasciicode", "lessthanasciicode", "morethanasciicode", "doublecommentsignal", "atsignasciicode", "exclamationmarkasciicode", "questionmarkasciicode", "doublequoteasciicode", "singlequoteasciicode", "forwardslashasciicode", "primeasciicode", "activemathcharcode", "activetabtoken", "activeformfeedtoken", "activeendoflinetoken", "batchmodecode", "nonstopmodecode", "scrollmodecode", "errorstopmodecode", "bottomlevelgroupcode", "simplegroupcode", "hboxgroupcode", "adjustedhboxgroupcode", "vboxgroupcode", "vtopgroupcode", "aligngroupcode", "noaligngroupcode", "outputgroupcode", "mathgroupcode", "discretionarygroupcode", "insertgroupcode", "vcentergroupcode", "mathchoicegroupcode", "semisimplegroupcode", "mathshiftgroupcode", "mathleftgroupcode", "vadjustgroupcode", "charnodecode", "hlistnodecode", "vlistnodecode", "rulenodecode", "insertnodecode", "marknodecode", "adjustnodecode", "ligaturenodecode", "discretionarynodecode", "whatsitnodecode", "mathnodecode", "gluenodecode", "kernnodecode", "penaltynodecode", "unsetnodecode", "mathsnodecode", "charifcode", "catifcode", "numifcode", "dimifcode", "oddifcode", "vmodeifcode", "hmodeifcode", "mmodeifcode", "innerifcode", "voidifcode", "hboxifcode", "vboxifcode", "xifcode", "eofifcode", "trueifcode", "falseifcode", "caseifcode", "definedifcode", "csnameifcode", "fontcharifcode", "fontslantperpoint", "fontinterwordspace", "fontinterwordstretch", "fontinterwordshrink", "fontexheight", "fontemwidth", "fontextraspace", "slantperpoint", "interwordspace", "interwordstretch", "interwordshrink", "exheight", "emwidth", "extraspace", "mathsupdisplay", "mathsupnormal", "mathsupcramped", "mathsubnormal", "mathsubcombined", "mathaxisheight", "startmode", "stopmode", "startnotmode", "stopnotmode", "startmodeset", "stopmodeset", "doifmode", "doifmodeelse", "doifnotmode", "startallmodes", "stopallmodes", "startnotallmodes", "stopnotallmodes", "doifallmodes", "doifallmodeselse", "doifnotallmodes", "startenvironment", "stopenvironment", "environment", "startcomponent", "stopcomponent", "component", "startproduct", "stopproduct", "product", "startproject", "stopproject", "project", "starttext", "stoptext", "startdocument", "stopdocument", "documentvariable", "startmodule", "stopmodule", "usemodule", "enablemode", "disablemode", "preventmode", "pushmode", "popmode", "typescriptone", "typescripttwo", "typescriptthree", "mathsizesuffix", "mathordcode", "mathopcode", "mathbincode", "mathrelcode", "mathopencode", "mathclosecode", "mathpunctcode", "mathalphacode", "mathinnercode", "mathnothingcode", "mathlimopcode", "mathnolopcode", "mathboxcode", "mathchoicecode", "mathaccentcode", "mathradicalcode", "constantnumber", "constantnumberargument", "constantdimen", "constantdimenargument", "constantemptyargument", "continueifinputfile" }, - ["helpers"]={ "startsetups", "stopsetups", "startxmlsetups", "stopxmlsetups", "startluasetups", "stopluasetups", "starttexsetups", "stoptexsetups", "startrawsetups", "stoprawsetups", "startlocalsetups", "stoplocalsetups", "starttexdefinition", "stoptexdefinition", "starttexcode", "stoptexcode", "doifsetupselse", "doifsetups", "doifnotsetups", "setup", "setups", "texsetup", "xmlsetup", "luasetup", "directsetup", "newmode", "setmode", "resetmode", "newsystemmode", "setsystemmode", "resetsystemmode", "pushsystemmode", "popsystemmode", "booleanmodevalue", "newcount", "newdimen", "newskip", "newmuskip", "newbox", "newtoks", "newread", "newwrite", "newmarks", "newinsert", "newattribute", "newif", "newlanguage", "newfamily", "newfam", "newhelp", "then", "donothing", "dontcomplain", "donetrue", "donefalse", "htdp", "unvoidbox", "vfilll", "mathbox", "mathlimop", "mathnolop", "mathnothing", "mathalpha", "currentcatcodetable", "defaultcatcodetable", "catcodetablename", "newcatcodetable", "startcatcodetable", "stopcatcodetable", "startextendcatcodetable", "stopextendcatcodetable", "pushcatcodetable", "popcatcodetable", "restorecatcodes", "setcatcodetable", "letcatcodecommand", "defcatcodecommand", "uedcatcodecommand", "hglue", "vglue", "hfillneg", "vfillneg", "hfilllneg", "vfilllneg", "ruledhss", "ruledhfil", "ruledhfill", "ruledhfilneg", "ruledhfillneg", "normalhfillneg", "ruledvss", "ruledvfil", "ruledvfill", "ruledvfilneg", "ruledvfillneg", "normalvfillneg", "ruledhbox", "ruledvbox", "ruledvtop", "ruledvcenter", "ruledhskip", "ruledvskip", "ruledkern", "ruledmskip", "ruledmkern", "ruledhglue", "ruledvglue", "normalhglue", "normalvglue", "ruledpenalty", "scratchcounter", "globalscratchcounter", "scratchdimen", "globalscratchdimen", "scratchskip", "globalscratchskip", "scratchmuskip", "globalscratchmuskip", "scratchtoks", "globalscratchtoks", "scratchbox", "globalscratchbox", "nextbox", "dowithnextbox", "dowithnextboxcs", "dowithnextboxcontent", "dowithnextboxcontentcs", "scratchwidth", "scratchheight", "scratchdepth", "scratchoffset", "scratchdistance", "scratchhsize", "scratchvsize", "scratchcounterone", "scratchcountertwo", "scratchcounterthree", "scratchdimenone", "scratchdimentwo", "scratchdimenthree", "scratchskipone", "scratchskiptwo", "scratchskipthree", "scratchmuskipone", "scratchmuskiptwo", "scratchmuskipthree", "scratchtoksone", "scratchtokstwo", "scratchtoksthree", "scratchboxone", "scratchboxtwo", "scratchboxthree", "doif", "doifnot", "doifelse", "doifinset", "doifnotinset", "doifinsetelse", "doifnextcharelse", "doifnextoptionalelse", "doifnextbgroupelse", "doifnextparenthesiselse", "doiffastoptionalcheckelse", "doifundefinedelse", "doifdefinedelse", "doifundefined", "doifdefined", "doifelsevalue", "doifvalue", "doifnotvalue", "doifnothing", "doifsomething", "doifelsenothing", "doifsomethingelse", "doifvaluenothing", "doifvaluesomething", "doifelsevaluenothing", "doifdimensionelse", "doifnumberelse", "doifcommonelse", "doifcommon", "doifnotcommon", "doifinstring", "doifnotinstring", "doifinstringelse", "doifassignmentelse", "tracingall", "tracingnone", "loggingall", "appendtoks", "prependtoks", "appendtotoks", "prependtotoks", "to", "endgraf", "empty", "null", "space", "quad", "enspace", "obeyspaces", "obeylines", "normalspace", "executeifdefined", "singleexpandafter", "doubleexpandafter", "tripleexpandafter", "dontleavehmode", "removelastspace", "removeunwantedspaces", "wait", "writestatus", "define", "redefine", "setmeasure", "setemeasure", "setgmeasure", "setxmeasure", "definemeasure", "measure", "getvalue", "setvalue", "setevalue", "setgvalue", "setxvalue", "letvalue", "letgvalue", "resetvalue", "undefinevalue", "ignorevalue", "setuvalue", "setuevalue", "setugvalue", "setuxvalue", "globallet", "glet", "getparameters", "geteparameters", "getgparameters", "getxparameters", "forgetparameters", "processcommalist", "processcommacommand", "quitcommalist", "quitprevcommalist", "processaction", "processallactions", "processfirstactioninset", "processallactionsinset", "unexpanded", "expanded", "startexpanded", "stopexpanded", "protected", "protect", "unprotect", "firstofoneargument", "firstoftwoarguments", "secondoftwoarguments", "firstofthreearguments", "secondofthreearguments", "thirdofthreearguments", "firstoffourarguments", "secondoffourarguments", "thirdoffourarguments", "fourthoffourarguments", "firstoffivearguments", "secondoffivearguments", "thirdoffivearguments", "fourthoffivearguments", "fifthoffivearguments", "firstofsixarguments", "secondofsixarguments", "thirdofsixarguments", "fourthofsixarguments", "fifthofsixarguments", "sixthofsixarguments", "firstofoneunexpanded", "gobbleoneargument", "gobbletwoarguments", "gobblethreearguments", "gobblefourarguments", "gobblefivearguments", "gobblesixarguments", "gobblesevenarguments", "gobbleeightarguments", "gobbleninearguments", "gobbletenarguments", "gobbleoneoptional", "gobbletwooptionals", "gobblethreeoptionals", "gobblefouroptionals", "gobblefiveoptionals", "dorecurse", "doloop", "exitloop", "dostepwiserecurse", "recurselevel", "recursedepth", "dofastloopcs", "newconstant", "setnewconstant", "newconditional", "settrue", "setfalse", "setconstant", "newmacro", "setnewmacro", "newfraction", "dosingleempty", "dodoubleempty", "dotripleempty", "doquadrupleempty", "doquintupleempty", "dosixtupleempty", "doseventupleempty", "dosingleargument", "dodoubleargument", "dotripleargument", "doquadrupleargument", "dosinglegroupempty", "dodoublegroupempty", "dotriplegroupempty", "doquadruplegroupempty", "doquintuplegroupempty", "nopdfcompression", "maximumpdfcompression", "normalpdfcompression", "modulonumber", "dividenumber", "getfirstcharacter", "doiffirstcharelse", "startnointerference", "stopnointerference", "strut", "setstrut", "strutbox", "strutht", "strutdp", "strutwd", "begstrut", "endstrut" }, + ["helpers"]={ "startsetups", "stopsetups", "startxmlsetups", "stopxmlsetups", "startluasetups", "stopluasetups", "starttexsetups", "stoptexsetups", "startrawsetups", "stoprawsetups", "startlocalsetups", "stoplocalsetups", "starttexdefinition", "stoptexdefinition", "starttexcode", "stoptexcode", "doifsetupselse", "doifsetups", "doifnotsetups", "setup", "setups", "texsetup", "xmlsetup", "luasetup", "directsetup", "newmode", "setmode", "resetmode", "newsystemmode", "setsystemmode", "resetsystemmode", "pushsystemmode", "popsystemmode", "booleanmodevalue", "newcount", "newdimen", "newskip", "newmuskip", "newbox", "newtoks", "newread", "newwrite", "newmarks", "newinsert", "newattribute", "newif", "newlanguage", "newfamily", "newfam", "newhelp", "then", "donothing", "dontcomplain", "donetrue", "donefalse", "htdp", "unvoidbox", "vfilll", "mathbox", "mathlimop", "mathnolop", "mathnothing", "mathalpha", "currentcatcodetable", "defaultcatcodetable", "catcodetablename", "newcatcodetable", "startcatcodetable", "stopcatcodetable", "startextendcatcodetable", "stopextendcatcodetable", "pushcatcodetable", "popcatcodetable", "restorecatcodes", "setcatcodetable", "letcatcodecommand", "defcatcodecommand", "uedcatcodecommand", "hglue", "vglue", "hfillneg", "vfillneg", "hfilllneg", "vfilllneg", "ruledhss", "ruledhfil", "ruledhfill", "ruledhfilneg", "ruledhfillneg", "normalhfillneg", "ruledvss", "ruledvfil", "ruledvfill", "ruledvfilneg", "ruledvfillneg", "normalvfillneg", "ruledhbox", "ruledvbox", "ruledvtop", "ruledvcenter", "ruledhskip", "ruledvskip", "ruledkern", "ruledmskip", "ruledmkern", "ruledhglue", "ruledvglue", "normalhglue", "normalvglue", "ruledpenalty", "scratchcounter", "globalscratchcounter", "scratchdimen", "globalscratchdimen", "scratchskip", "globalscratchskip", "scratchmuskip", "globalscratchmuskip", "scratchtoks", "globalscratchtoks", "scratchbox", "globalscratchbox", "nextbox", "dowithnextbox", "dowithnextboxcs", "dowithnextboxcontent", "dowithnextboxcontentcs", "scratchwidth", "scratchheight", "scratchdepth", "scratchoffset", "scratchdistance", "scratchhsize", "scratchvsize", "scratchcounterone", "scratchcountertwo", "scratchcounterthree", "scratchdimenone", "scratchdimentwo", "scratchdimenthree", "scratchskipone", "scratchskiptwo", "scratchskipthree", "scratchmuskipone", "scratchmuskiptwo", "scratchmuskipthree", "scratchtoksone", "scratchtokstwo", "scratchtoksthree", "scratchboxone", "scratchboxtwo", "scratchboxthree", "doif", "doifnot", "doifelse", "doifinset", "doifnotinset", "doifinsetelse", "doifnextcharelse", "doifnextoptionalelse", "doifnextbgroupelse", "doifnextparenthesiselse", "doiffastoptionalcheckelse", "doifundefinedelse", "doifdefinedelse", "doifundefined", "doifdefined", "doifelsevalue", "doifvalue", "doifnotvalue", "doifnothing", "doifsomething", "doifelsenothing", "doifsomethingelse", "doifvaluenothing", "doifvaluesomething", "doifelsevaluenothing", "doifdimensionelse", "doifnumberelse", "doifcommonelse", "doifcommon", "doifnotcommon", "doifinstring", "doifnotinstring", "doifinstringelse", "doifassignmentelse", "tracingall", "tracingnone", "loggingall", "appendtoks", "prependtoks", "appendtotoks", "prependtotoks", "to", "endgraf", "empty", "null", "space", "quad", "enspace", "obeyspaces", "obeylines", "normalspace", "executeifdefined", "singleexpandafter", "doubleexpandafter", "tripleexpandafter", "dontleavehmode", "removelastspace", "removeunwantedspaces", "wait", "writestatus", "define", "redefine", "setmeasure", "setemeasure", "setgmeasure", "setxmeasure", "definemeasure", "measure", "getvalue", "setvalue", "setevalue", "setgvalue", "setxvalue", "letvalue", "letgvalue", "resetvalue", "undefinevalue", "ignorevalue", "setuvalue", "setuevalue", "setugvalue", "setuxvalue", "globallet", "glet", "getparameters", "geteparameters", "getgparameters", "getxparameters", "forgetparameters", "copyparameters", "processcommalist", "processcommacommand", "quitcommalist", "quitprevcommalist", "processaction", "processallactions", "processfirstactioninset", "processallactionsinset", "unexpanded", "expanded", "startexpanded", "stopexpanded", "protected", "protect", "unprotect", "firstofoneargument", "firstoftwoarguments", "secondoftwoarguments", "firstofthreearguments", "secondofthreearguments", "thirdofthreearguments", "firstoffourarguments", "secondoffourarguments", "thirdoffourarguments", "fourthoffourarguments", "firstoffivearguments", "secondoffivearguments", "thirdoffivearguments", "fourthoffivearguments", "fifthoffivearguments", "firstofsixarguments", "secondofsixarguments", "thirdofsixarguments", "fourthofsixarguments", "fifthofsixarguments", "sixthofsixarguments", "firstofoneunexpanded", "gobbleoneargument", "gobbletwoarguments", "gobblethreearguments", "gobblefourarguments", "gobblefivearguments", "gobblesixarguments", "gobblesevenarguments", "gobbleeightarguments", "gobbleninearguments", "gobbletenarguments", "gobbleoneoptional", "gobbletwooptionals", "gobblethreeoptionals", "gobblefouroptionals", "gobblefiveoptionals", "dorecurse", "doloop", "exitloop", "dostepwiserecurse", "recurselevel", "recursedepth", "dofastloopcs", "newconstant", "setnewconstant", "newconditional", "settrue", "setfalse", "setconstant", "newmacro", "setnewmacro", "newfraction", "dosingleempty", "dodoubleempty", "dotripleempty", "doquadrupleempty", "doquintupleempty", "dosixtupleempty", "doseventupleempty", "dosingleargument", "dodoubleargument", "dotripleargument", "doquadrupleargument", "dosinglegroupempty", "dodoublegroupempty", "dotriplegroupempty", "doquadruplegroupempty", "doquintuplegroupempty", "nopdfcompression", "maximumpdfcompression", "normalpdfcompression", "modulonumber", "dividenumber", "getfirstcharacter", "doiffirstcharelse", "startnointerference", "stopnointerference", "strut", "setstrut", "strutbox", "strutht", "strutdp", "strutwd", "begstrut", "endstrut" }, } \ No newline at end of file diff --git a/context/data/scite/lexers/scite-context-lexer-pdf-object.lua b/context/data/scite/lexers/scite-context-lexer-pdf-object.lua index b1d87e080..6d0b6d8da 100644 --- a/context/data/scite/lexers/scite-context-lexer-pdf-object.lua +++ b/context/data/scite/lexers/scite-context-lexer-pdf-object.lua @@ -63,6 +63,7 @@ local number = token('number', real) -- local reference = token("number", cardinal) -- * t_spacing -- * token("number", cardinal) +local reserved = token("number", P("true") + P("false") + P("NULL")) local reference = token("warning", cardinal) * t_spacing * token("warning", cardinal) @@ -99,7 +100,7 @@ local t_object = { "object", -- weird that we need to catch the end her dictionary = t_opendictionary * (t_spaces * keyword * t_spaces * V("whatever"))^0 * t_spaces * t_closedictionary, array = t_openarray * (t_spaces * V("whatever"))^0 * t_spaces * t_closearray, number = number, - whatever = V("dictionary") + V("array") + constant + reference + string + unicode + number + whatsit, + whatever = V("dictionary") + V("array") + constant + reference + string + unicode + number + reserved + whatsit, } pdfobjectlexer._shared = { diff --git a/context/data/scite/lexers/scite-context-lexer-pdf.lua b/context/data/scite/lexers/scite-context-lexer-pdf.lua index 8687a5226..685fdb16e 100644 --- a/context/data/scite/lexers/scite-context-lexer-pdf.lua +++ b/context/data/scite/lexers/scite-context-lexer-pdf.lua @@ -41,12 +41,9 @@ local p_objectnumber = patterns.cardinal local p_comment = P('%') * restofline local t_comment = token("comment", p_comment) --- local t_openobject = token("number", p_objectnumber) --- * t_spacing --- * token("number", p_objectnumber) -local t_openobject = token("warning", p_objectnumber) +local t_openobject = token("warning", p_objectnumber) * t_spacing - * token("warning", p_objectnumber) + * token("warning", p_objectnumber) * t_spacing * token("keyword", p_obj) * t_spacing^0 diff --git a/context/data/scite/lexers/scite-context-lexer.lua b/context/data/scite/lexers/scite-context-lexer.lua index 1218d1f51..2db37e26b 100644 --- a/context/data/scite/lexers/scite-context-lexer.lua +++ b/context/data/scite/lexers/scite-context-lexer.lua @@ -54,8 +54,13 @@ local info = { -- that we have no dependencies, apart from the c library (for which at some point the api -- will be stable I guess). -- --- It's a pitty that there is no scintilua library for the OSX version of scite. Even --- better would be to have scintilua as integral part of scite. +-- It's a pitty that there is no scintillua library for the OSX version of scite. Even +-- better would be to have the scintillua library as integral part of scite as that way I +-- could use OSX alongside windows and linux (depending on needs). Also nice would be to +-- have a proper interface to scite then because currently the lexer is rather isolated and the +-- lua version does not provide all standard libraries. It would also be good to have lpeg +-- support in the regular scite lua extension (currently you need to pick it up from someplace +-- else). local lpeg = require 'lpeg' diff --git a/context/data/scite/scite-context-data-context.properties b/context/data/scite/scite-context-data-context.properties index e2c1bb853..0d03a5647 100644 --- a/context/data/scite/scite-context-data-context.properties +++ b/context/data/scite/scite-context-data-context.properties @@ -47,27 +47,27 @@ measure getvalue setvalue setevalue setgvalue \ setxvalue letvalue letgvalue resetvalue undefinevalue \ ignorevalue setuvalue setuevalue setugvalue setuxvalue \ globallet glet getparameters geteparameters getgparameters \ -getxparameters forgetparameters processcommalist processcommacommand quitcommalist \ -quitprevcommalist processaction processallactions processfirstactioninset processallactionsinset \ -unexpanded expanded startexpanded stopexpanded protected \ -protect unprotect firstofoneargument firstoftwoarguments secondoftwoarguments \ -firstofthreearguments secondofthreearguments thirdofthreearguments firstoffourarguments secondoffourarguments \ -thirdoffourarguments fourthoffourarguments firstoffivearguments secondoffivearguments thirdoffivearguments \ -fourthoffivearguments fifthoffivearguments firstofsixarguments secondofsixarguments thirdofsixarguments \ -fourthofsixarguments fifthofsixarguments sixthofsixarguments firstofoneunexpanded gobbleoneargument \ -gobbletwoarguments gobblethreearguments gobblefourarguments gobblefivearguments gobblesixarguments \ -gobblesevenarguments gobbleeightarguments gobbleninearguments gobbletenarguments gobbleoneoptional \ -gobbletwooptionals gobblethreeoptionals gobblefouroptionals gobblefiveoptionals dorecurse \ -doloop exitloop dostepwiserecurse recurselevel recursedepth \ -dofastloopcs newconstant setnewconstant newconditional settrue \ -setfalse setconstant newmacro setnewmacro newfraction \ -dosingleempty dodoubleempty dotripleempty doquadrupleempty doquintupleempty \ -dosixtupleempty doseventupleempty dosingleargument dodoubleargument dotripleargument \ -doquadrupleargument dosinglegroupempty dodoublegroupempty dotriplegroupempty doquadruplegroupempty \ -doquintuplegroupempty nopdfcompression maximumpdfcompression normalpdfcompression modulonumber \ -dividenumber getfirstcharacter doiffirstcharelse startnointerference stopnointerference \ -strut setstrut strutbox strutht strutdp \ -strutwd begstrut endstrut +getxparameters forgetparameters copyparameters processcommalist processcommacommand \ +quitcommalist quitprevcommalist processaction processallactions processfirstactioninset \ +processallactionsinset unexpanded expanded startexpanded stopexpanded \ +protected protect unprotect firstofoneargument firstoftwoarguments \ +secondoftwoarguments firstofthreearguments secondofthreearguments thirdofthreearguments firstoffourarguments \ +secondoffourarguments thirdoffourarguments fourthoffourarguments firstoffivearguments secondoffivearguments \ +thirdoffivearguments fourthoffivearguments fifthoffivearguments firstofsixarguments secondofsixarguments \ +thirdofsixarguments fourthofsixarguments fifthofsixarguments sixthofsixarguments firstofoneunexpanded \ +gobbleoneargument gobbletwoarguments gobblethreearguments gobblefourarguments gobblefivearguments \ +gobblesixarguments gobblesevenarguments gobbleeightarguments gobbleninearguments gobbletenarguments \ +gobbleoneoptional gobbletwooptionals gobblethreeoptionals gobblefouroptionals gobblefiveoptionals \ +dorecurse doloop exitloop dostepwiserecurse recurselevel \ +recursedepth dofastloopcs newconstant setnewconstant newconditional \ +settrue setfalse setconstant newmacro setnewmacro \ +newfraction dosingleempty dodoubleempty dotripleempty doquadrupleempty \ +doquintupleempty dosixtupleempty doseventupleempty dosingleargument dodoubleargument \ +dotripleargument doquadrupleargument dosinglegroupempty dodoublegroupempty dotriplegroupempty \ +doquadruplegroupempty doquintuplegroupempty nopdfcompression maximumpdfcompression normalpdfcompression \ +modulonumber dividenumber getfirstcharacter doiffirstcharelse startnointerference \ +stopnointerference strut setstrut strutbox strutht \ +strutdp strutwd begstrut endstrut keywordclass.context.constants=\ zerocount minusone minustwo plusone \ diff --git a/tex/context/base/colo-ini.mkiv b/tex/context/base/colo-ini.mkiv index 603dcdae2..164b39262 100644 --- a/tex/context/base/colo-ini.mkiv +++ b/tex/context/base/colo-ini.mkiv @@ -245,6 +245,10 @@ \ifconditional\c_colo_rgb_supported \colo_helpers_show_message\m!colors9\v!rgb \fi \ifconditional\c_colo_cmyk_supported\colo_helpers_show_message\m!colors9\v!cmyk\fi \colo_helpers_set_current_model + \ifproductionrun + \edef\p_pagecolormodel{\directcolorsparameter\c!pagecolormodel}% + \ctxcommand{synchronizecolormodel("\ifx\p_pagecolormodel\v!auto \currentcolormodel \else \p_pagecolormodel \fi")}% + \fi \to \everysetupcolors \appendtoks @@ -949,6 +953,7 @@ \c!rgb=\v!yes, \c!cmyk=\v!yes, \c!spot=\v!yes, + \c!pagecolormodel=\v!none, \c!expansion=\v!no, \c!textcolor=, \c!factor=\v!yes] diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii index fc75c1445..ed1570142 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.04.23 21:34} +\newcontextversion{2012.04.25 17:29} %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 24e84ce42..5c0e28728 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.04.23 21:34} +\newcontextversion{2012.04.25 17:29} %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/context-version.pdf b/tex/context/base/context-version.pdf index fb49ace64..886694098 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 021aab6a3..6b0c3e583 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 8321e1f23..92e318a15 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.04.23 21:34} +\edef\contextversion{2012.04.25 17:29} %D For those who want to use this: diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index ebbd3bf29..b40f857b9 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -23,7 +23,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2012.04.23 21:34} +\edef\contextversion{2012.04.25 17:29} %D For those who want to use this: diff --git a/tex/context/base/core-con.mkiv b/tex/context/base/core-con.mkiv index 1b319d7a6..301b56612 100644 --- a/tex/context/base/core-con.mkiv +++ b/tex/context/base/core-con.mkiv @@ -17,8 +17,8 @@ \unprotect -\ifx\currentlanguage\undefined \let\currentlanguage\empty \fi -\ifx\labeltext \undefined \let\labeltext\firstofoneargument \fi +\ifdefined\currentlanguage \else \let\currentlanguage\empty \fi +\ifdefined\labeltext \else \let\labeltext \firstofoneargument \fi %D This module deals with all kind of conversions from numbers %D and dates. I considered splitting this module in a support @@ -36,7 +36,7 @@ % needed for arab : -\def\isolateseparators % even works with list separator overloading +\unexpanded\def\isolateseparators % even works with list separator overloading {\def\spr##1{{##1}}% \def\stp##1{{##1}}} @@ -560,6 +560,9 @@ 3\fi\fi \endcsname{#1}{\number#2}} +\unexpanded\def\uconvertnumber % unexpandable + {\convertnumber} + \setvalue{\??conversionarguments1}#1{\csname\??conversion\currentlanguage#1\endcsname} \setvalue{\??conversionarguments2}#1{\csname\??conversion #1\endcsname} \letvalue{\??conversionarguments3}\syst_converters_checked_conversion diff --git a/tex/context/base/lpdf-col.lua b/tex/context/base/lpdf-col.lua index 85f719c40..227878b5b 100644 --- a/tex/context/base/lpdf-col.lua +++ b/tex/context/base/lpdf-col.lua @@ -38,6 +38,56 @@ local colorsvalue = colors.value local transparenciesvalue = transparencies.value local forcedmodel = colors.forcedmodel +-- page groups (might move to lpdf-ini.lua) + +local colorspaceconstants = { -- v_none is ignored + gray = pdfconstant("DeviceGray"), + rgb = pdfconstant("DeviceRGB"), + cmyk = pdfconstant("DeviceCMYK"), + all = pdfconstant("DeviceRGB"), -- brr +} + +local transparencygroups = { } + +lpdf.colorspaceconstants = colorspaceconstants +lpdf.transparencygroups = transparencygroups + +table.setmetatableindex(transparencygroups, function(transparencygroups,colormodel) + local cs = colorspaceconstants[colormodel] + if cs then + local g = pdfreference(pdfflushobject(pdfdictionary { + S = pdfconstant("Transparency"), + CS = cs, + I = true, + })) + transparencygroups[colormodel] = g + return g + else + transparencygroups[colormodel] = false + return false + end +end) + +local currentgroupcolormodel + +local function addpagegroup() + if currentgroupcolormodel then + local g = transparencygroups[currentgroupcolormodel] + if g then + lpdf.addtopageattributes("Group",g) + end + end +end + +lpdf.registerpagefinalizer(addpagegroup,3,"pagegroup") + +local function synchronizecolormodel(model) + currentgroupcolormodel = model +end + +backends.codeinjections.synchronizecolormodel = synchronizecolormodel +commands.synchronizecolormodel = synchronizecolormodel + -- injection code (needs a bit reordering) -- color injection @@ -363,7 +413,7 @@ local transparencies = { [0] = local documenttransparencies = { } local transparencyhash = { } -- share objects -local done = false +local done, signaled = false, false function registrations.transparency(n,a,t) if not done then @@ -397,6 +447,13 @@ function registrations.transparency(n,a,t) end end +statistics.register("page group warning", function() + if done and not transparencygroups[currentgroupcolormodel] then + return format("transparencies are used but no pagecolormodel is set") + end +end) + + -- Literals needed to inject code in the mp stream, we cannot use attributes there -- since literals may have qQ's, much may go away once we have mplib code in place. -- diff --git a/tex/context/base/lpdf-grp.lua b/tex/context/base/lpdf-grp.lua index 20946ca4a..aba5771fd 100644 --- a/tex/context/base/lpdf-grp.lua +++ b/tex/context/base/lpdf-grp.lua @@ -90,13 +90,8 @@ function nodeinjections.injectbitmap(t) colorspace = "cmyk" end end - if colorspace == "gray" then - colorspace = pdfconstant("DeviceGray") - elseif colorspace == "rgb" then - colorspace = pdfconstant("DeviceRGB") - elseif colorspace == "cmyk" then - colorspace = pdfconstant("DeviceCMYK") - else + colorspace = lpdf.colorspaceconstants[colorspace] + if not colorspace then return -- fatal error end local d = pdfdictionary { diff --git a/tex/context/base/lpdf-ini.lua b/tex/context/base/lpdf-ini.lua index 8e54666be..88999358c 100644 --- a/tex/context/base/lpdf-ini.lua +++ b/tex/context/base/lpdf-ini.lua @@ -806,17 +806,3 @@ if not pdfreferenceobject then end end - --- -- Maybe this will be an option (suggested on the mailing list by Peter Rolf): --- --- function backends.codeinjections.rgbtransparencygroup() --- local d = lpdf.dictionary { --- S = lpdf.constant("Transparency"), --- CS = lpdf.constant("DeviceRGB"), --- I = true --- } --- lpdf.registerpagefinalizer(function() --- lpdf.addtopageattributes("Group",d) end) --- end --- --- backends.codeinjections.rgbtransparencygroup() diff --git a/tex/context/base/mult-de.mkii b/tex/context/base/mult-de.mkii index e99d1fade..50090261b 100644 --- a/tex/context/base/mult-de.mkii +++ b/tex/context/base/mult-de.mkii @@ -849,6 +849,7 @@ \setinterfaceconstant{page}{seite} \setinterfaceconstant{pageboundaries}{seitenbegrenzung} \setinterfaceconstant{pagecolor}{seitenfarbe} +\setinterfaceconstant{pagecolormodel}{pagecolormodel} \setinterfaceconstant{pagecommand}{seitenbefehl} \setinterfaceconstant{pageconversion}{pageconversion} \setinterfaceconstant{pageconversionset}{pageconversionset} diff --git a/tex/context/base/mult-def.lua b/tex/context/base/mult-def.lua index c7793ca81..9be9f1f19 100644 --- a/tex/context/base/mult-def.lua +++ b/tex/context/base/mult-def.lua @@ -9279,6 +9279,10 @@ return { ["pe"]="رنگ‌صفحه", ["ro"]="culoarepagina", }, + ["pagecolormodel"]={ + ["en"]="pagecolormodel", + ["nl"]="paginakleurmodel", + }, ["pagecommand"]={ ["cs"]="strankovyprikaz", ["de"]="seitenbefehl", diff --git a/tex/context/base/mult-en.mkii b/tex/context/base/mult-en.mkii index 9745daad2..78bcc3650 100644 --- a/tex/context/base/mult-en.mkii +++ b/tex/context/base/mult-en.mkii @@ -849,6 +849,7 @@ \setinterfaceconstant{page}{page} \setinterfaceconstant{pageboundaries}{pageboundaries} \setinterfaceconstant{pagecolor}{pagecolor} +\setinterfaceconstant{pagecolormodel}{pagecolormodel} \setinterfaceconstant{pagecommand}{pagecommand} \setinterfaceconstant{pageconversion}{pageconversion} \setinterfaceconstant{pageconversionset}{pageconversionset} diff --git a/tex/context/base/mult-fr.mkii b/tex/context/base/mult-fr.mkii index d1c5091c3..5c7588aa5 100644 --- a/tex/context/base/mult-fr.mkii +++ b/tex/context/base/mult-fr.mkii @@ -849,6 +849,7 @@ \setinterfaceconstant{page}{page} \setinterfaceconstant{pageboundaries}{limitespage} \setinterfaceconstant{pagecolor}{couleurpage} +\setinterfaceconstant{pagecolormodel}{pagecolormodel} \setinterfaceconstant{pagecommand}{commandepage} \setinterfaceconstant{pageconversion}{pageconversion} \setinterfaceconstant{pageconversionset}{pageconversionset} diff --git a/tex/context/base/mult-it.mkii b/tex/context/base/mult-it.mkii index 26db716e3..5b640cd25 100644 --- a/tex/context/base/mult-it.mkii +++ b/tex/context/base/mult-it.mkii @@ -849,6 +849,7 @@ \setinterfaceconstant{page}{pagina} \setinterfaceconstant{pageboundaries}{limitipagina} \setinterfaceconstant{pagecolor}{colorepagina} +\setinterfaceconstant{pagecolormodel}{pagecolormodel} \setinterfaceconstant{pagecommand}{comandopagina} \setinterfaceconstant{pageconversion}{pageconversion} \setinterfaceconstant{pageconversionset}{pageconversionset} diff --git a/tex/context/base/mult-low.lua b/tex/context/base/mult-low.lua index 9690f6c47..794a1f6de 100644 --- a/tex/context/base/mult-low.lua +++ b/tex/context/base/mult-low.lua @@ -206,7 +206,7 @@ return { "resetvalue", "undefinevalue", "ignorevalue", "setuvalue", "setuevalue", "setugvalue", "setuxvalue", "globallet", "glet", - "getparameters", "geteparameters", "getgparameters", "getxparameters", "forgetparameters", + "getparameters", "geteparameters", "getgparameters", "getxparameters", "forgetparameters", "copyparameters", -- "processcommalist", "processcommacommand", "quitcommalist", "quitprevcommalist", "processaction", "processallactions", "processfirstactioninset", "processallactionsinset", diff --git a/tex/context/base/mult-nl.mkii b/tex/context/base/mult-nl.mkii index b962e8fcf..769f77a96 100644 --- a/tex/context/base/mult-nl.mkii +++ b/tex/context/base/mult-nl.mkii @@ -849,6 +849,7 @@ \setinterfaceconstant{page}{pagina} \setinterfaceconstant{pageboundaries}{paginaovergangen} \setinterfaceconstant{pagecolor}{paginakleur} +\setinterfaceconstant{pagecolormodel}{paginakleurmodel} \setinterfaceconstant{pagecommand}{paginacommando} \setinterfaceconstant{pageconversion}{pageconversion} \setinterfaceconstant{pageconversionset}{pageconversionset} diff --git a/tex/context/base/mult-pe.mkii b/tex/context/base/mult-pe.mkii index 713b15a47..5bb63d4a0 100644 --- a/tex/context/base/mult-pe.mkii +++ b/tex/context/base/mult-pe.mkii @@ -849,6 +849,7 @@ \setinterfaceconstant{page}{صفحه} \setinterfaceconstant{pageboundaries}{مرزهای‌صفحه} \setinterfaceconstant{pagecolor}{رنگ‌صفحه} +\setinterfaceconstant{pagecolormodel}{pagecolormodel} \setinterfaceconstant{pagecommand}{فرمان‌صفحه} \setinterfaceconstant{pageconversion}{pageconversion} \setinterfaceconstant{pageconversionset}{pageconversionset} diff --git a/tex/context/base/mult-ro.mkii b/tex/context/base/mult-ro.mkii index 5ff6e0980..a18d2d19d 100644 --- a/tex/context/base/mult-ro.mkii +++ b/tex/context/base/mult-ro.mkii @@ -849,6 +849,7 @@ \setinterfaceconstant{page}{pagina} \setinterfaceconstant{pageboundaries}{marginipagina} \setinterfaceconstant{pagecolor}{culoarepagina} +\setinterfaceconstant{pagecolormodel}{pagecolormodel} \setinterfaceconstant{pagecommand}{comandapagina} \setinterfaceconstant{pageconversion}{pageconversion} \setinterfaceconstant{pageconversionset}{pageconversionset} diff --git a/tex/context/base/mult-sys.mkiv b/tex/context/base/mult-sys.mkiv index d3823ea57..da1109aef 100644 --- a/tex/context/base/mult-sys.mkiv +++ b/tex/context/base/mult-sys.mkiv @@ -131,6 +131,8 @@ % \definesystemconstant {MonoCapsSlanted} % \definesystemconstant {MonoVariable} +\definesystemconstant {DefaultFont} + \definesystemconstant {MathRoman} \definesystemconstant {MathRomanBold} diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index 86fea9868..7472631b5 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 d16400c6d..e14c390fb 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/type-fbk.mkiv b/tex/context/base/type-fbk.mkiv index fd91344da..4ac381787 100644 --- a/tex/context/base/type-fbk.mkiv +++ b/tex/context/base/type-fbk.mkiv @@ -13,58 +13,58 @@ \unprotect -\definetypescriptprefix [serif] [Serif] -\definetypescriptprefix [sans] [Sans] -\definetypescriptprefix [mono] [Mono] +\definetypescriptprefix [\s!serif] [\s!Serif] +\definetypescriptprefix [\s!sans] [\s!Sans] +\definetypescriptprefix [\s!mono] [\s!Mono] -\definefontsynonym [DefaultFont] [\s!file:lmmonoproplt10-regular] +\definefontsynonym [\s!DefaultFont] [\s!file:lmmonoproplt10-regular] -\startsetups [font:fallback:serif] - \definefontsynonym [Serif] [DefaultFont] - \definefontsynonym [SerifBold] [Serif] - \definefontsynonym [SerifItalic] [Serif] - \definefontsynonym [SerifSlanted] [SerifItalic] - \definefontsynonym [SerifBoldItalic] [Serif] - \definefontsynonym [SerifBoldSlanted] [SerifBoldItalic] - \definefontsynonym [SerifCaps] [Serif] [\s!features=smallcaps] +\startsetups [\s!font:\s!fallback:\s!serif] + \definefontsynonym[\s!Serif] [\s!DefaultFont] + \definefontsynonym[\s!SerifBold] [\s!Serif] + \definefontsynonym[\s!SerifItalic] [\s!Serif] + \definefontsynonym[\s!SerifSlanted] [\s!SerifItalic] + \definefontsynonym[\s!SerifBoldItalic] [\s!Serif] + \definefontsynonym[\s!SerifBoldSlanted][\s!SerifBoldItalic] + \definefontsynonym[\s!SerifCaps] [\s!Serif] [\s!features=\s!smallcaps] \stopsetups -\startsetups [font:fallback:sans] - \definefontsynonym [Sans] [DefaultFont] - \definefontsynonym [SansBold] [Sans] - \definefontsynonym [SansItalic] [Sans] - \definefontsynonym [SansSlanted] [SansItalic] - \definefontsynonym [SansBoldItalic] [Sans] - \definefontsynonym [SansBoldSlanted] [SansBoldItalic] - \definefontsynonym [SansCaps] [Sans] [\s!features=smallcaps] +\startsetups [\s!font:\s!fallback:\s!sans] + \definefontsynonym[\s!Sans] [\s!DefaultFont] + \definefontsynonym[\s!SansBold] [\s!Sans] + \definefontsynonym[\s!SansItalic] [\s!Sans] + \definefontsynonym[\s!SansSlanted] [\s!SansItalic] + \definefontsynonym[\s!SansBoldItalic] [\s!Sans] + \definefontsynonym[\s!SansBoldSlanted][\s!SansBoldItalic] + \definefontsynonym[\s!SansCaps] [\s!Sans] [\s!features=\s!smallcaps] \stopsetups -\startsetups [font:fallback:mono] - \definefontsynonym [Mono] [DefaultFont] - \definefontsynonym [MonoBold] [Mono] - \definefontsynonym [MonoItalic] [Mono] - \definefontsynonym [MonoSlanted] [MonoItalic] - \definefontsynonym [MonoBoldItalic] [Mono] - \definefontsynonym [MonoBoldSlanted] [MonoBoldItalic] - \definefontsynonym [MonoCaps] [Mono] [\s!features=smallcaps] +\startsetups [\s!font:\s!fallback:\s!mono] + \definefontsynonym[\s!Mono] [\s!DefaultFont] + \definefontsynonym[\s!MonoBold] [\s!Mono] + \definefontsynonym[\s!MonoItalic] [\s!Mono] + \definefontsynonym[\s!MonoSlanted] [\s!MonoItalic] + \definefontsynonym[\s!MonoBoldItalic] [\s!Mono] + \definefontsynonym[\s!MonoBoldSlanted][\s!MonoBoldItalic] + \definefontsynonym[\s!MonoCaps] [\s!Mono] [\s!features=\s!smallcaps] \stopsetups -\starttypescript [serif,sans,mono] [fallback] +\starttypescript [\s!serif,\s!sans,\s!mono] [\s!fallback] \setups[\s!font:\s!fallback:\typescriptone] \stoptypescript -\startsetups [font:allbold:serif] - \definefontsynonym [Serif] [SerifBold] - \definefontsynonym [SerifItalic] [SerifBoldItalic] - \definefontsynonym [SerifSlanted] [SerifBoldSlanted] - %definefontsynonym [SerifCaps] [SerifBold] +\startsetups [\s!font:allbold:\s!serif] + \definefontsynonym[\s!Serif] [\s!SerifBold] + \definefontsynonym[\s!SerifItalic] [\s!SerifBoldItalic] + \definefontsynonym[\s!SerifSlanted][\s!SerifBoldSlanted] + %definefontsynonym[\s!SerifCaps] [\s!SerifBold] \stopsetups -\startsetups [font:allbold:sans] - \definefontsynonym [Sans] [SansBold] - \definefontsynonym [SansItalic] [SansBoldItalic] - \definefontsynonym [SansSlanted] [SansBoldSlanted] - %definefontsynonym [SansCaps] [SansBold] +\startsetups [\s!font:allbold:\s!sans] + \definefontsynonym[\s!Sans] [\s!SansBold] + \definefontsynonym[\s!SansItalic] [\s!SansBoldItalic] + \definefontsynonym[\s!SansSlanted][\s!SansBoldSlanted] + %definefontsynonym[\s!SansCaps] [\s!SansBold] \stopsetups \protect \endinput diff --git a/tex/context/base/type-imp-averia.mkiv b/tex/context/base/type-imp-averia.mkiv new file mode 100644 index 000000000..310704378 --- /dev/null +++ b/tex/context/base/type-imp-averia.mkiv @@ -0,0 +1,74 @@ +%D \module +%D [ file=type-imp-averia, +%D version=2012.04.24, +%D title=\CONTEXT\ Typescript Macros, +%D subtitle=Averia fonts (iotic.com), +%D author=Hans Hagen, +%D date=\currentdate, +%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] +%C +%C This module is part of the \CONTEXT\ macro||package and is +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. + +%D The fonts can be downloaded from the (nice looking) page: +%D +%D \starttyping +%D http://iotic.com/averia +%D \stoptyping +%D +%D This link was posted by Aditya on the ConTeXt mailing list. +%D +%D There is no monospace font yet. + +\starttypescriptcollection[averia] + + \starttypescript [\s!serif] [averia,averiaserif] [\s!name] + \setups[\s!font:\s!fallback:\s!serif] + \definefontsynonym [\s!Serif] [\s!file:\typescripttwo-regular] [\s!features=\s!default] + \definefontsynonym [\s!SerifBold] [\s!file:\typescripttwo-bold] [\s!features=\s!default] + \definefontsynonym [\s!SerifItalic] [\s!file:\typescripttwo-italic] [\s!features=\s!default] + \definefontsynonym [\s!SerifBoldItalic] [\s!file:\typescripttwo-bolditalic] [\s!features=\s!default] + \stoptypescript + + \starttypescript [\s!serif] [averia-light,averiaserif-light] [\s!name] + \setups[\s!font:\s!fallback:\s!serif] + \definefontsynonym [\s!Serif] [\s!file:\typescripttwo-light] [\s!features=\s!default] + \definefontsynonym [\s!SerifBold] [\s!file:\typescripttwo-regular] [\s!features=\s!default] + \definefontsynonym [\s!SerifItalic] [\s!file:\typescripttwo-lightitalic] [\s!features=\s!default] + \definefontsynonym [\s!SerifBoldItalic] [\s!file:\typescripttwo-italic] [\s!features=\s!default] + \stoptypescript + + \starttypescript [\s!sans] [averiasans] [\s!name] + \setups[\s!font:\s!fallback:\s!sans] + \definefontsynonym [\s!Sans] [\s!file:averiasans-regular] [\s!features=\s!default] + \definefontsynonym [\s!SansBold] [\s!file:averiasans-bold] [\s!features=\s!default] + \definefontsynonym [\s!SansItalic] [\s!file:averiasans-italic] [\s!features=\s!default] + \definefontsynonym [\s!SansBoldItalic] [\s!file:averiasans-bolditalic] [\s!features=\s!default] + \stoptypescript + + \starttypescript [\s!sans] [averiasans-light] [\s!name] + \setups[\s!font:\s!fallback:\s!sans] + \definefontsynonym [\s!Sans] [\s!file:averiasans-light] [\s!features=\s!default] + \definefontsynonym [\s!SansBold] [\s!file:averiasans-regular] [\s!features=\s!default] + \definefontsynonym [\s!SansItalic] [\s!file:averiasans-lightitalic] [\s!features=\s!default] + \definefontsynonym [\s!SansBoldItalic] [\s!file:averiasans-italic] [\s!features=\s!default] + \stoptypescript + + % todo: rscale + + \starttypescript[averia] + \definetypeface [averia] [\s!rm] [\s!serif] [averiaserif] [\s!default] + \definetypeface [averia] [\s!ss] [\s!sans] [averiasans] [\s!default] + \definetypeface [averia] [\s!tt] [\s!mono] [dejavu] [\s!default] + \definetypeface [averia] [\s!mm] [\s!math] [times] [\s!default] + \stoptypescript + + \starttypescript[averia-light] + \definetypeface [averia] [\s!rm] [\s!serif] [averiaserif-light] [\s!default] + \definetypeface [averia] [\s!ss] [\s!sans] [averiasans-light] [\s!default] + \definetypeface [averia] [\s!tt] [\s!mono] [dejavu] [\s!default] + \definetypeface [averia] [\s!mm] [\s!math] [times] [\s!default] + \stoptypescript + +\stoptypescriptcollection diff --git a/tex/context/base/type-set.mkiv b/tex/context/base/type-set.mkiv index 731e4e5e3..99c38bc5d 100644 --- a/tex/context/base/type-set.mkiv +++ b/tex/context/base/type-set.mkiv @@ -20,6 +20,7 @@ \loadmarkfile{type-def} \loadmarkfile{type-lua} \loadmarkfile{type-siz} + \loadmarkfile{type-fbk} % \loadtypescriptfile[def] % meant for local usage only % \loadtypescriptfile[lua] % meant for local usage only @@ -36,6 +37,7 @@ \else \usetypescriptfile[def] + \usetypescriptfile[fbk] \usetypescriptfile[lua] \usetypescriptfile[siz] \usetypescriptfile[otf] diff --git a/tex/context/interface/keys-cs.xml b/tex/context/interface/keys-cs.xml index cd9939be7..2553b5fe6 100644 --- a/tex/context/interface/keys-cs.xml +++ b/tex/context/interface/keys-cs.xml @@ -855,6 +855,7 @@ + diff --git a/tex/context/interface/keys-de.xml b/tex/context/interface/keys-de.xml index c8e629cdd..1166b399f 100644 --- a/tex/context/interface/keys-de.xml +++ b/tex/context/interface/keys-de.xml @@ -855,6 +855,7 @@ + diff --git a/tex/context/interface/keys-en.xml b/tex/context/interface/keys-en.xml index 4b4f3c0e3..c73c18247 100644 --- a/tex/context/interface/keys-en.xml +++ b/tex/context/interface/keys-en.xml @@ -855,6 +855,7 @@ + diff --git a/tex/context/interface/keys-fr.xml b/tex/context/interface/keys-fr.xml index 04a9e4131..a39b2b78f 100644 --- a/tex/context/interface/keys-fr.xml +++ b/tex/context/interface/keys-fr.xml @@ -855,6 +855,7 @@ + diff --git a/tex/context/interface/keys-it.xml b/tex/context/interface/keys-it.xml index d75ac590a..4f10c9dd7 100644 --- a/tex/context/interface/keys-it.xml +++ b/tex/context/interface/keys-it.xml @@ -855,6 +855,7 @@ + diff --git a/tex/context/interface/keys-nl.xml b/tex/context/interface/keys-nl.xml index 96c4e3f39..9e89ce8fc 100644 --- a/tex/context/interface/keys-nl.xml +++ b/tex/context/interface/keys-nl.xml @@ -855,6 +855,7 @@ + diff --git a/tex/context/interface/keys-pe.xml b/tex/context/interface/keys-pe.xml index 8221fa0dc..ff05c8a30 100644 --- a/tex/context/interface/keys-pe.xml +++ b/tex/context/interface/keys-pe.xml @@ -855,6 +855,7 @@ + diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml index 9acca422b..f59eefaa9 100644 --- a/tex/context/interface/keys-ro.xml +++ b/tex/context/interface/keys-ro.xml @@ -855,6 +855,7 @@ + diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index fbe7a47d6..13dd898e3 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 : 04/23/12 21:34:35 +-- merge date : 04/25/12 17:29:34 do -- begin closure to overcome local limits and interference -- cgit v1.2.3