From 20ab88bae914f2347db66334d8b9db2ce56a571a Mon Sep 17 00:00:00 2001 From: Marius Date: Sat, 18 May 2013 03:20:22 +0300 Subject: stable 2013.05.18 02:06 --- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/cont-new.tmp | 83 ++++ tex/context/base/context-version.pdf | Bin 4127 -> 4127 bytes tex/context/base/context.mkiv | 4 +- tex/context/base/context.tmp | 513 +++++++++++++++++++++ tex/context/base/font-ctx.lua | 6 +- tex/context/base/l-pdfview.lua | 2 +- tex/context/base/s-fonts-features.lua | 14 +- tex/context/base/s-fonts-shapes.lua | 16 +- tex/context/base/s-fonts-shapes.mkiv | 22 +- tex/context/base/status-files.pdf | Bin 24754 -> 24755 bytes tex/context/base/status-lua.pdf | Bin 211738 -> 211803 bytes tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 13 files changed, 631 insertions(+), 33 deletions(-) create mode 100644 tex/context/base/cont-new.tmp create mode 100644 tex/context/base/context.tmp (limited to 'tex') diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index 192764258..d60f0f3a6 100644 --- a/tex/context/base/cont-new.mkiv +++ b/tex/context/base/cont-new.mkiv @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2013.05.18 00:46} +\newcontextversion{2013.05.18 02:06} %D This file is loaded at runtime, thereby providing an excellent place for %D hacks, patches, extensions and new features. diff --git a/tex/context/base/cont-new.tmp b/tex/context/base/cont-new.tmp new file mode 100644 index 000000000..1518f9c68 --- /dev/null +++ b/tex/context/base/cont-new.tmp @@ -0,0 +1,83 @@ +%D \module +%D [ file=cont-new, +%D version=1995.10.10, +%D title=\CONTEXT\ Miscellaneous Macros, +%D subtitle=New Macros, +%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. + +\newcontextversion{2013.05.18 02:03} + +%D This file is loaded at runtime, thereby providing an excellent place for +%D hacks, patches, extensions and new features. + +\unprotect + +% \writestatus\m!system{beware: some patches loaded from cont-new.mkiv} + +% \attribute152\zerocount : marks ... lots of sweeps so best early in list + +%D Maybe: + +\unexpanded\def\tightvbox{\dowithnextbox{\dp\nextbox\zeropoint\box\nextbox}\vbox} +\unexpanded\def\tightvtop{\dowithnextbox{\ht\nextbox\zeropoint\box\nextbox}\vtop} + +%D Maybe: + +% \startluacode +% function context.loadfile(filename) +% context(string.strip(io.loaddata(resolvers.findfile(filename)))) +% end +% \stopluacode +% +% \edef\tufte{\cldcommand{loadfile("tufte.tex")}} + +%D Needs some work: + +\unexpanded\def\startgridcorrection + {\dosingleempty\spac_grid_correction_start} + +\def\spac_grid_correction_start[#1]% + {\ifgridsnapping + \snaptogrid[#1]\vbox\bgroup + \else + \startbaselinecorrection + \fi} + +\unexpanded\def\stopgridcorrection + {\ifgridsnapping + \egroup + \else + \stopbaselinecorrection + \fi} + +\unexpanded\def\checkgridsnapping + {\lineskip\ifgridsnapping\zeropoint\else\normallineskip\fi} + +%D Probably obsolete: + +\unexpanded\def\startcolumnmakeup % don't change + {\bgroup + \getrawnoflines\textheight % raw as we cna have topskip + \setbox\scratchbox\vbox to \dimexpr\noflines\lineheight-\lineheight+\topskip\relax + \bgroup + \forgetall} + +\unexpanded\def\stopcolumnmakeup + {\egroup + \dp\scratchbox\zeropoint + \wd\scratchbox\textwidth + \box\scratchbox + \egroup + \page_otr_command_synchronize_hsize} + +%D Till we fixed all styles: + +\let\\=\crlf + +\protect \endinput diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf index d70b95eb5..67d4fc3d4 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.mkiv b/tex/context/base/context.mkiv index 5e2602f1d..9ab9b3aad 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -25,8 +25,8 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2013.05.18 00:46} -\edef\contextkind {beta} +\edef\contextversion{2013.05.18 02:06} +\edef\contextkind {current} %D For those who want to use this: diff --git a/tex/context/base/context.tmp b/tex/context/base/context.tmp new file mode 100644 index 000000000..d5913624e --- /dev/null +++ b/tex/context/base/context.tmp @@ -0,0 +1,513 @@ +%D \module +%D [ file=context, +%D version=2008.28.10, % 1995.10.10, +%D title=\CONTEXT, +%D subtitle=\CONTEXT\ Format Generation, +%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. + +\catcode`\{=1 \catcode`\}=2 \catcode`\#=6 + +%D From the next string (which is set by the script that assembles the +%D distribution) later on we will calculate a number that can be used +%D by use modules to identify the feature level. Starting with version +%D 2004.8.30 the low level interface is english. Watch out and adapt +%D your styles an modules. + +% \everypar{\writestatus{!!!!}{some spurious input in line \the\inputlineno}\wait} + +%D The order of loading will change when all modules have been cleaned +%D up and the dependencies are more consistent. + +\edef\contextformat {\jobname} +\edef\contextversion{2013.05.18 02:03} +\edef\contextkind {beta} + +%D For those who want to use this: + +\let\fmtname \contextformat +\let\fmtversion\contextversion + +%D Loading: + +\edef\mksuffix {mkiv} +\edef\contextmark{MKIV} + +\ifx\normalinput\undefined \let\normalinput\input \fi + +\def\loadcorefile#1{\normalinput#1\relax} +\def\loadmarkfile#1{\normalinput#1.\mksuffix\relax} +\def\loadmkiifile#1{} +\def\loadmkivfile#1{\normalinput#1.mkiv\relax} +\def\loadmkvifile#1{\normalinput#1.mkvi\relax} + +%D First we load the system modules. These implement a lot of +%D manipulation macros. We start with setting up some basic \TEX\ +%D machinery. + +\loadmarkfile{syst-ini} + +%D Some checking (more primitives are now defined): + +\ifdefined\defaultinterface \else \def\defaultinterface {english} \fi +%ifdefined\messageinterface \else \let\messageinterface \defaultinterface \fi +\ifdefined\defaultlanguagetag \else \def\defaultlanguagetag{en} \fi + +%D We just quit if new functionality is expected. + +\ifnum\luatexversion<70 % also change message + \writestatus{!!!!}{Your luatex binary is too old, you need at least version 0.70!} + \expandafter\end +\fi + +%D There is only this way to pass the version info to \LUA\ (currently). Hm, we could +%D now put it into the environment. + +\newtoks\contextversiontoks \contextversiontoks\expandafter{\contextversion} +\newtoks\contextkindtoks \contextkindtoks \expandafter{\contextkind} + +% \normaleverypar{\wait} % uncomment for test of funny injections + +%D Now the more fundamental code gets defined. + +\loadmarkfile{norm-ctx} +\loadmarkfile{syst-pln} +\loadmarkfile{syst-mes} + +\loadmarkfile{luat-cod} +\loadmarkfile{luat-bas} +\loadmarkfile{luat-lib} + +\loadmarkfile{catc-ini} +\loadmarkfile{catc-act} +\loadmarkfile{catc-def} +\loadmarkfile{catc-ctx} +\loadmarkfile{catc-sym} + +\loadmarkfile{cldf-ini} + +% From here on we have \unexpanded being \normalprotected, as we already had +% \unexpanded long before etex came around. + +\loadmarkfile{syst-aux} +\loadmarkfile{syst-lua} +\loadmarkfile{syst-con} + +\loadmarkfile{syst-fnt} +\loadmarkfile{syst-rtp} + +\loadmkvifile{file-ini} +\loadmkvifile{file-res} +\loadmkvifile{file-lib} + +\loadmarkfile{supp-dir} + +\loadmarkfile{char-ini} +\loadmarkfile{char-utf} +\loadmarkfile{char-act} + +\loadmarkfile{mult-ini} +\loadmarkfile{mult-sys} +\loadmarkfile{mult-aux} +\loadmarkfile{mult-def} +\loadmarkfile{mult-chk} +%loadmarkfile{mult-aux} % moved up +\loadmkvifile{mult-dim} + +\loadmarkfile{cldf-int} % interface + +\loadmarkfile{luat-ini} + +\loadmarkfile{toks-ini} + +\loadmarkfile{attr-ini} + +\loadmarkfile{core-ini} +\loadmarkfile{core-env} + +\loadmarkfile{layo-ini} + +\loadmarkfile{node-ini} + +\loadmarkfile{cldf-bas} % basics / depends on nodes + +\loadmarkfile{node-fin} +\loadmarkfile{node-mig} +\loadmarkfile{typo-bld} % par builders +%loadmarkfile{node-pag} + +\loadmarkfile{back-ini} + +\loadmarkfile{attr-col} +\loadmarkfile{attr-lay} +\loadmarkfile{attr-neg} +\loadmarkfile{attr-eff} +\loadmarkfile{attr-mkr} + +\loadmarkfile{trac-tex} +\loadmarkfile{trac-deb} % will move up +\loadmarkfile{trac-ctx} % maybe move up + +%loadmarkfile{blob-ini} % not to be used, we only use a helper + +\loadmarkfile{supp-box} + +%loadmarkfile{supp-vis} % replaced by trac-vis +%loadmarkfile{supp-fun} % mostly replaced + +\loadmarkfile{supp-ran} +\loadmarkfile{supp-mat} +\loadmarkfile{spac-cha} +%loadmarkfile{supp-num} % obsolete + +\loadmarkfile{typo-ini} + +\loadmkvifile{file-syn} +\loadmkvifile{file-mod} + +\loadmarkfile{core-con} + +\loadmarkfile{cont-fil} + +\loadmarkfile{regi-ini} +\loadmarkfile{enco-ini} +\loadmarkfile{hand-ini} + +\loadmarkfile{lang-ini} +\loadmarkfile{lang-lab} + +\loadmarkfile{unic-ini} + +\loadmarkfile{core-uti} +\loadmarkfile{core-two} +\loadmarkfile{core-dat} + +\loadmarkfile{colo-ini} +\loadmarkfile{colo-grp} % optional +\loadmarkfile{colo-ext} + +\loadmarkfile{node-bck} % overloads anch-pgr (experimental and undocumented) + +\loadmarkfile{pack-cut} % leftovers from trac-vis + +\loadmarkfile{lang-mis} +\loadmarkfile{lang-url} +\loadmarkfile{lang-def} + +\loadmkvifile{file-job} % why so late? + +\loadmarkfile{symb-ini} % brrr depends on fonts + +\loadmarkfile{sort-ini} + +\loadmkvifile{pack-mis} +\loadmarkfile{pack-rul} +\loadmarkfile{pack-mrl} +\loadmkvifile{pack-bck} +\loadmarkfile{pack-fen} + +\loadmarkfile{lxml-ini} +\loadmarkfile{lxml-sor} + +\loadmkvifile{typo-prc} + +\loadmkvifile{strc-ini} +\loadmarkfile{strc-tag} +\loadmarkfile{strc-doc} +\loadmarkfile{strc-num} +\loadmarkfile{strc-mar} +\loadmarkfile{strc-sbe} +\loadmkvifile{strc-lst} +\loadmarkfile{strc-sec} +\loadmarkfile{strc-pag} % hm, depends on core-num +\loadmarkfile{strc-ren} +\loadmarkfile{strc-xml} +\loadmarkfile{strc-def} % might happen later +\loadmkvifile{strc-ref} +\loadmarkfile{strc-reg} +\loadmkvifile{strc-lev} % experiment + +\loadmarkfile{spac-ali} +\loadmarkfile{spac-hor} +\loadmarkfile{spac-flr} +\loadmarkfile{spac-ver} +\loadmarkfile{spac-lin} +\loadmarkfile{spac-pag} +\loadmarkfile{spac-par} +%loadmarkfile{spac-adj} % no longer needed +\loadmarkfile{spac-def} +\loadmarkfile{spac-grd} + +\loadmarkfile{anch-pos} + +\loadmkvifile{scrn-ini} +\loadmkvifile{scrn-ref} + +\loadmarkfile{pack-obj} + +\loadmkvifile{strc-itm} + +\loadmkvifile{strc-con} +\loadmkvifile{strc-des} +\loadmkvifile{strc-enu} + +\loadmarkfile{strc-ind} +\loadmarkfile{strc-lab} +\loadmarkfile{strc-syn} + +\loadmarkfile{core-sys} + +\loadmarkfile{page-var} +\loadmkvifile{page-otr} +\loadmarkfile{page-ini} +\loadmarkfile{page-ins} +\loadmarkfile{page-fac} +\loadmarkfile{page-brk} +\loadmarkfile{page-col} +\loadmarkfile{page-inf} +\loadmarkfile{page-grd} +\loadmarkfile{page-flt} +\loadmarkfile{page-bck} +\loadmarkfile{page-not} +\loadmarkfile{page-one} +\loadmarkfile{page-lay} +\loadmkvifile{page-box} +\loadmkvifile{page-txt} +\loadmarkfile{page-sid} % when + +\loadmkvifile{strc-flt} + +\loadmarkfile{page-pst} +\loadmkvifile{page-mbk} +\loadmarkfile{page-mul} % partly overloaded +\loadmarkfile{page-mix} % new +\loadmarkfile{page-set} +\loadmarkfile{pack-lyr} +\loadmarkfile{pack-pos} +\loadmkvifile{page-mak} + +\loadmarkfile{page-lin} +\loadmarkfile{page-par} +\loadmarkfile{typo-pag} +\loadmarkfile{typo-mar} +\loadmarkfile{typo-itm} + +\loadmarkfile{buff-ini} +\loadmarkfile{buff-ver} +\loadmkvifile{buff-par} + +\loadmarkfile{buff-imp-tex} % optional as also runtime if not loaded +\loadmarkfile{buff-imp-mp} % optional as also runtime if not loaded +\loadmarkfile{buff-imp-lua} % optional as also runtime if not loaded +\loadmarkfile{buff-imp-xml} % optional as also runtime if not loaded + +\loadmarkfile{buff-imp-parsed-xml} % optional +%loadmarkfile{buff-imp-parsed-lua} % optional + +\loadmarkfile{strc-blk} + +\loadmarkfile{page-imp} +\loadmkvifile{page-sel} % optional +\loadmkvifile{page-inj} % optional + +\loadmkvifile{scrn-pag} +\loadmkvifile{scrn-wid} +\loadmkvifile{scrn-but} +\loadmkvifile{scrn-bar} + +\loadmarkfile{page-com} % optional (after scrn-pag) + +\loadmarkfile{strc-bkm} % bookmarks + +\loadmarkfile{tabl-com} +\loadmarkfile{tabl-pln} + +\loadmarkfile{tabl-tab} % thrd-tab stripped and merged + +\loadmarkfile{tabl-tbl} +\loadmarkfile{tabl-ntb} +\loadmarkfile{tabl-nte} +\loadmarkfile{tabl-ltb} +\loadmarkfile{tabl-tsp} +\loadmkvifile{tabl-xtb} +\loadmarkfile{tabl-mis} + +\loadmarkfile{java-ini} + +\loadmkvifile{scrn-fld} +\loadmkvifile{scrn-hlp} + +\loadmarkfile{char-enc} % will move up + +\loadmkvifile{font-lib} % way too late +\loadmkvifile{font-fil} +\loadmkvifile{font-var} +\loadmkvifile{font-fea} +\loadmkvifile{font-mat} +\loadmkvifile{font-ini} +\loadmkvifile{font-sym} +\loadmkvifile{font-sty} +\loadmkvifile{font-set} +\loadmkvifile{font-emp} +\loadmarkfile{font-pre} +\loadmarkfile{font-unk} +\loadmarkfile{font-tra} +\loadmarkfile{font-chk} +\loadmarkfile{font-uni} +\loadmkvifile{font-col} +\loadmkvifile{font-gds} +\loadmkvifile{font-aux} + +\loadmarkfile{typo-lan} + +\loadmarkfile{lxml-css} + +\loadmarkfile{spac-chr} % depends on fonts + +\loadmarkfile{blob-ini} % not to be used, we only use a helper + +\loadmarkfile{trac-vis} +\loadmarkfile{trac-jus} + +\loadmarkfile{typo-cln} +\loadmarkfile{typo-spa} +\loadmarkfile{typo-krn} +\loadmkvifile{typo-itc} +\loadmarkfile{typo-dir} +\loadmarkfile{typo-brk} +\loadmarkfile{typo-cap} +\loadmarkfile{typo-dig} +\loadmarkfile{typo-rep} +\loadmkvifile{typo-txt} +\loadmarkfile{typo-par} + +\loadmkvifile{type-ini} +\loadmarkfile{type-set} + +\loadmarkfile{scrp-ini} + +\loadmarkfile{lang-wrd} % can be optional (discussion with mm sideeffect) +%loadmarkfile{lang-rep} % can be optional (bt 2013 side effect) + +\loadmarkfile{prop-ini} % only for downward compatibility + +\loadmarkfile{mlib-ctx} + +\loadmarkfile{meta-ini} +\loadmarkfile{meta-tex} +\loadmarkfile{meta-fun} +\loadmarkfile{meta-pag} +\loadmarkfile{meta-grd} + +\loadmarkfile{page-mrk} % depends on mp + +\loadmarkfile{page-flw} +\loadmarkfile{page-spr} +\loadmarkfile{page-plg} +\loadmarkfile{page-str} + +\loadmarkfile{anch-pgr} % can be moved up (nicer for dependencies) +\loadmkvifile{anch-bck} +\loadmarkfile{anch-tab} % overloads tabl-tbl +\loadmarkfile{anch-bar} +%loadmarkfile{anch-snc} % when needed this one will be redone + +\loadmarkfile{math-ini} +\loadmarkfile{math-pln} +\loadmarkfile{math-for} +\loadmarkfile{math-def} +\loadmarkfile{math-ali} +%loadmarkfile{math-arr} +\loadmkvifile{math-stc} +\loadmarkfile{math-frc} +\loadmarkfile{math-mis} +\loadmarkfile{math-scr} +\loadmarkfile{math-int} +\loadmarkfile{math-del} +\loadmarkfile{math-fen} +\loadmarkfile{math-inl} +\loadmarkfile{math-dis} +%loadmarkfile{math-lan} + +\loadmarkfile{phys-dim} + +\loadmarkfile{strc-mat} + +\loadmarkfile{chem-ini} +\loadmarkfile{chem-str} + +\loadmarkfile{typo-scr} + +\loadmarkfile{node-rul} +\loadmkvifile{font-sol} % font solutions + +\loadmkvifile{strc-not} +\loadmkvifile{strc-lnt} + +\loadmarkfile{pack-com} +\loadmarkfile{typo-del} + +\loadmarkfile{grph-trf} +\loadmarkfile{grph-inc} +\loadmarkfile{grph-fig} +\loadmarkfile{grph-raw} + +\loadmarkfile{pack-box} +\loadmarkfile{pack-bar} +\loadmarkfile{page-app} +\loadmarkfile{meta-fig} + +\loadmarkfile{lang-spa} % will become obsolete + +\loadmarkfile{bibl-bib} +\loadmarkfile{bibl-tra} + +%loadmarkfile{x-xtag} % no longer preloaded + +\loadmarkfile{meta-xml} + +\loadmarkfile{cont-log} + +\loadmarkfile{task-ini} + +\loadmarkfile{cldf-ver} % verbatim, this can come late +\loadmarkfile{cldf-com} % commands, this can come late + +\loadmarkfile{core-ctx} % this order might change but we need to check depedencies / move to another namespace + +\loadmarkfile{core-def} + +%usemodule[x][res-04] % xml resource libraries +%usemodule[x][res-08] % rlx runtime conversion +%usemodule[x][res-12] % rli external indentification + +% now we hook in backend code (needs checking) + +\loadmarkfile{back-pdf} % actually, this one should load the next three using document.arguments.backend +\loadmarkfile{mlib-pdf} +\loadmarkfile{mlib-pps} +\loadmarkfile{meta-pdf} +\loadmarkfile{grph-epd} + +\loadmarkfile{back-exp} + +\setupcurrentlanguage[\defaultlanguagetag] + +\prependtoks + \ctxlua{statistics.starttiming(statistics)}% +\to \everyjob + +\appendtoks + \ctxlua{statistics.stoptiming(statistics)}% +\to \everyjob + +\appendtoks + \ctxlua{statistics.savefmtstatus("\jobname","\contextversion","context.mkiv","\contextkind")}% can become automatic +\to \everydump + +\errorstopmode \dump \endinput diff --git a/tex/context/base/font-ctx.lua b/tex/context/base/font-ctx.lua index 8ae74435f..2583c6520 100644 --- a/tex/context/base/font-ctx.lua +++ b/tex/context/base/font-ctx.lua @@ -1080,7 +1080,7 @@ end local n = 0 -function definers.internal(specification) +function definers.internal(specification,cs) specification = specification or { } local name = specification.name local size = specification.size and number.todimen(specification.size) or texdimen.bodyfontsize @@ -1089,11 +1089,13 @@ function definers.internal(specification) if number then id = number elseif name and name ~= "" then - local cs = specification.cs + local cs = cs or specification.cs if not cs then n = n + 1 -- beware ... there can be many and they are often used once -- cs = formatters["internal font %s"](n) cs = "internal font " .. n + else + specification.cs = cs end id = definers.define { name = name, diff --git a/tex/context/base/l-pdfview.lua b/tex/context/base/l-pdfview.lua index 49c6a8c48..80033900f 100644 --- a/tex/context/base/l-pdfview.lua +++ b/tex/context/base/l-pdfview.lua @@ -28,7 +28,7 @@ if os.type == "windows" then ['okular'] = 'start "test" "c:/data/system/kde/bin/okular.exe" --unique', -- todo! ['sumatra'] = 'start "test" "c:/data/system/sumatrapdf/sumatrapdf.exe" -reuse-instance', ['okular'] = 'start "test" "okular.exe" --unique', - ['sumatra'] = 'start "test" "sumatrapdf.exe" -reuse-instance', + ['sumatra'] = 'start "test" "sumatrapdf.exe" -reuse-instance -bg-color 0xCCCCCC', } closecalls= { ['default'] = "pdfclose --file", diff --git a/tex/context/base/s-fonts-features.lua b/tex/context/base/s-fonts-features.lua index 3f4d95096..0a7cf8b13 100644 --- a/tex/context/base/s-fonts-features.lua +++ b/tex/context/base/s-fonts-features.lua @@ -115,8 +115,9 @@ local showkernpair = context.showkernpair function moduledata.fonts.features.showbasekerns(specification) -- assumes that the font is loaded in base mode - local id = tonumber(specification.number) - local tfmdata = fonts.hashes.identifiers[id or font.current()] + specification = interfaces.checkedspecification(specification) + local id, cs = fonts.definers.internal(specification,"") + local tfmdata = fonts.hashes.identifiers[id] local done = false for unicode, character in sortedhash(tfmdata.characters) do local kerns = character.kerns @@ -136,10 +137,11 @@ function moduledata.fonts.features.showbasekerns(specification) end function moduledata.fonts.features.showallkerns(specification) - local id = tonumber(specification.number) - local tfmdata = fonts.hashes.identifiers[id or font.current()] - local allkerns = collectkerns(tfmdata) - local characters = tfmdata.characters + specification = interfaces.checkedspecification(specification) + local id, cs = fonts.definers.internal(specification,"") + local tfmdata = fonts.hashes.identifiers[id] + local allkerns = collectkerns(tfmdata) + local characters = tfmdata.characters if next(allkerns) then for first, pairs in sortedhash(allkerns) do context.par() diff --git a/tex/context/base/s-fonts-shapes.lua b/tex/context/base/s-fonts-shapes.lua index 0fddfa01a..b387c11dd 100644 --- a/tex/context/base/s-fonts-shapes.lua +++ b/tex/context/base/s-fonts-shapes.lua @@ -11,13 +11,14 @@ moduledata.fonts.shapes = moduledata.fonts.shapes or { } local fontdata = fonts.hashes.identifiers +local context = context local NC, NR = context.NC, context.NR -local space, dontleavehmode, glyph = context.space, context.dontleavehmode, context.glyph +local space, dontleavehmode, glyph, getvalue = context.space, context.dontleavehmode, context.glyph, context.getvalue local formatters = string.formatters function moduledata.fonts.shapes.showlist(specification) -- todo: ranges specification = interfaces.checkedspecification(specification) - local id = tonumber(specification.number) or font.current() + local id, cs = fonts.definers.internal(specification,"") local chrs = fontdata[id].characters function char(k) dontleavehmode() @@ -49,7 +50,7 @@ function moduledata.fonts.shapes.showlist(specification) -- todo: ranges for k, v in next, characters.data do if chrs[k] then NC() context("0x%05X",k) - NC() char(k) + NC() char(k) -- getvalue(cs) context.char(k) NC() char(v.shcode) NC() char(v.lccode or k) NC() char(v.uccode or k) @@ -64,7 +65,7 @@ end function moduledata.fonts.shapes.showlist(specification) -- todo: ranges specification = interfaces.checkedspecification(specification) - local id = tonumber(specification.number) or font.current() + local id, cs = fonts.definers.internal(specification,"") local chrs = fontdata[id].characters function char(k) dontleavehmode() @@ -114,14 +115,12 @@ local characters = nil local function showglyphshape(specification) specification = interfaces.checkedspecification(specification) - specification.cs = "showglyphshape:font" - local id, cs = fonts.definers.internal(specification) + local id, cs = fonts.definers.internal(specification,"") local tfmdata = fontdata[id] local charnum = tonumber(specification.character) if not charnum then charnum = fonts.helpers.nametoslot(n) end --- print(id,cs,charnum) context.start() context.dontleavehmode() context.obeyMPboxdepth() @@ -306,8 +305,7 @@ moduledata.fonts.shapes.showglyphshape = showglyphshape function moduledata.fonts.shapes.showallglypshapes(specification) specification = interfaces.checkedspecification(specification) - specification.cs = "showglyphshape:font" - local id, cs = fonts.definers.internal(specification) + local id, cs = fonts.definers.internal(specification,"") local descriptions = fontdata[id].descriptions for unicode, description in fonts.iterators.descriptions(tfmdata) do context.modulefontsstartshowglyphshape(unicode,description.name) diff --git a/tex/context/base/s-fonts-shapes.mkiv b/tex/context/base/s-fonts-shapes.mkiv index 5651bdad9..56e3d80a7 100644 --- a/tex/context/base/s-fonts-shapes.mkiv +++ b/tex/context/base/s-fonts-shapes.mkiv @@ -95,21 +95,21 @@ % \startTEXpage \ShowGlyphShape{simplenaskhi}{100bp}{0xF0299} \stopTEXpage % \startTEXpage \ShowGlyphShape{simplenaskhi}{100bp}{NameMe.1190} \stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math} {40bp}{0x00066}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math} {40bp}{0x1D453}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math} {40bp}{0x1D43F}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D444}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D447}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x02112}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D432}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D43D}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D44A}\stopTEXpage - \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D45D}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{20bp}{0x00066}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{20bp}{0x1D453}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{20bp}{0x1D43F}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{50bp}{0x1D444}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{50bp}{0x1D447}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{50bp}{0x02112}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{50bp}{0x1D432}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{50bp}{0x1D43D}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{50bp}{0x1D44A}\stopTEXpage + \startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{50bp}{0x1D45D}\stopTEXpage \page % \showallglyphshapes[name=name:cambria-math,size=100bp] - \showallglyphshapes[name=name:dejavuserif,size=100bp] + % \showallglyphshapes[name=name:dejavuserif,size=100bp] \stoptext diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index 02e1255d8..73b91cc5f 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 3f9c1b392..3c96f5711 100644 Binary files a/tex/context/base/status-lua.pdf and b/tex/context/base/status-lua.pdf differ diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 9b7f60406..9f0348709 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 : 05/18/13 00:46:06 +-- merge date : 05/18/13 02:03:53 do -- begin closure to overcome local limits and interference -- cgit v1.2.3