summaryrefslogtreecommitdiff
path: root/tex/context/base/mkxl/mlib-int.lmt
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/mkxl/mlib-int.lmt')
-rw-r--r--tex/context/base/mkxl/mlib-int.lmt218
1 files changed, 114 insertions, 104 deletions
diff --git a/tex/context/base/mkxl/mlib-int.lmt b/tex/context/base/mkxl/mlib-int.lmt
index a936e5592..208370a3c 100644
--- a/tex/context/base/mkxl/mlib-int.lmt
+++ b/tex/context/base/mkxl/mlib-int.lmt
@@ -16,7 +16,7 @@ local get = tex.get
local emwidths = fonts.hashes.emwidths
local exheights = fonts.hashes.exheights
-local registerscript = metapost.registerscript
+local registerdirect = metapost.registerdirect
local on_right_page = structures.pages.on_right
local is_odd_page = structures.pages.is_odd
@@ -52,109 +52,119 @@ do
end
end
- registerscript("year", function() return item("year") end)
- registerscript("month", function() return item("month") end)
- registerscript("day", function() return item("day") end)
- registerscript("hour", function() return item("hour") end)
- registerscript("minute", function() return item("min") end)
- registerscript("second", function() return item("sec") end)
+ registerdirect("year", function() return item("year") end)
+ registerdirect("month", function() return item("month") end)
+ registerdirect("day", function() return item("day") end)
+ registerdirect("hour", function() return item("hour") end)
+ registerdirect("minute", function() return item("min") end)
+ registerdirect("second", function() return item("sec") end)
end
-registerscript("PaperHeight", function() return getdimen("paperheight") * factor end)
-registerscript("PaperWidth", function() return getdimen("paperwidth") * factor end)
-registerscript("PrintPaperHeight", function() return getdimen("printpaperheight") * factor end)
-registerscript("PrintPaperWidth", function() return getdimen("printpaperwidth") * factor end)
-registerscript("TopSpace", function() return getdimen("topspace") * factor end)
-registerscript("BottomSpace", function() return getdimen("bottomspace") * factor end)
-registerscript("BackSpace", function() return getdimen("backspace") * factor end)
-registerscript("CutSpace", function() return getdimen("cutspace") * factor end)
-registerscript("MakeupHeight", function() return getdimen("makeupheight") * factor end)
-registerscript("MakeupWidth", function() return getdimen("makeupwidth") * factor end)
-registerscript("TopHeight", function() return getdimen("topheight") * factor end)
-registerscript("TopDistance", function() return getdimen("topdistance") * factor end)
-registerscript("HeaderHeight", function() return getdimen("headerheight") * factor end)
-registerscript("HeaderDistance", function() return getdimen("headerdistance") * factor end)
-registerscript("TextHeight", function() return getdimen("textheight") * factor end)
-registerscript("FooterDistance", function() return getdimen("footerdistance") * factor end)
-registerscript("FooterHeight", function() return getdimen("footerheight") * factor end)
-registerscript("BottomDistance", function() return getdimen("bottomdistance") * factor end)
-registerscript("BottomHeight", function() return getdimen("bottomheight") * factor end)
-registerscript("LeftEdgeWidth", function() return getdimen("leftedgewidth") * factor end)
-registerscript("LeftEdgeDistance", function() return getdimen("leftedgedistance") * factor end)
-registerscript("LeftMarginWidth", function() return getdimen("leftmarginwidth") * factor end)
-registerscript("LeftMarginDistance", function() return getdimen("leftmargindistance") * factor end)
-registerscript("TextWidth", function() return getdimen("textwidth") * factor end)
-registerscript("RightMarginDistance", function() return getdimen("rightmargindistance") * factor end)
-registerscript("RightMarginWidth", function() return getdimen("rightmarginwidth") * factor end)
-registerscript("RightEdgeDistance", function() return getdimen("rightedgedistance") * factor end)
-registerscript("RightEdgeWidth", function() return getdimen("rightedgewidth") * factor end)
-registerscript("InnerMarginDistance", function() return getdimen("innermargindistance") * factor end)
-registerscript("InnerMarginWidth", function() return getdimen("innermarginwidth") * factor end)
-registerscript("OuterMarginDistance", function() return getdimen("outermargindistance") * factor end)
-registerscript("OuterMarginWidth", function() return getdimen("outermarginwidth") * factor end)
-registerscript("InnerEdgeDistance", function() return getdimen("inneredgedistance") * factor end)
-registerscript("InnerEdgeWidth", function() return getdimen("inneredgewidth") * factor end)
-registerscript("OuterEdgeDistance", function() return getdimen("outeredgedistance") * factor end)
-registerscript("OuterEdgeWidth", function() return getdimen("outeredgewidth") * factor end)
-registerscript("PageOffset", function() return getdimen("pagebackgroundoffset") * factor end)
-registerscript("PageDepth", function() return getdimen("pagebackgrounddepth") * factor end)
-registerscript("LayoutColumns", function() return getcount("layoutcolumns") end)
-registerscript("LayoutColumnDistance", function() return getdimen("layoutcolumndistance") * factor end)
-registerscript("LayoutColumnWidth", function() return getdimen("layoutcolumnwidth") * factor end)
-registerscript("SpineWidth", function() return getdimen("spinewidth") * factor end)
-registerscript("PaperBleed", function() return getdimen("paperbleed") * factor end)
-
-registerscript("RealPageNumber", function() return getcount("realpageno") end)
-registerscript("LastPageNumber", function() return getcount("lastpageno") end)
-
-registerscript("PageNumber", function() return getcount("pageno") end)
-registerscript("NOfPages", function() return getcount("lastpageno") end)
-
-registerscript("SubPageNumber", function() return getcount("subpageno") end)
-registerscript("NOfSubPages", function() return getcount("lastsubpageno") end)
-
-registerscript("CurrentColumn", function() return getcount("mofcolumns") end)
-registerscript("NOfColumns", function() return getcount("nofcolumns") end)
-
-registerscript("BaseLineSkip", function() return get ("baselineskip",true) * factor end)
-registerscript("LineHeight", function() return getdimen("lineheight") * factor end)
-registerscript("BodyFontSize", function() return getdimen("bodyfontsize") * factor end)
-
-registerscript("TopSkip", function() return get ("topskip",true) * factor end)
-registerscript("StrutHeight", function() return getdimen("strutht") * factor end)
-registerscript("StrutDepth", function() return getdimen("strutdp") * factor end)
-
-registerscript("PageNumber", function() return getcount("pageno") end)
-registerscript("RealPageNumber", function() return getcount("realpageno") end)
-registerscript("NOfPages", function() return getcount("lastpageno") end)
-
-registerscript("CurrentWidth", function() return get ("hsize") * factor end)
-registerscript("CurrentHeight", function() return get ("vsize") * factor end)
-
-registerscript("EmWidth", function() return emwidths [false] * factor end)
-registerscript("ExHeight", function() return exheights[false] * factor end)
-
-registerscript("HSize", function() return get ("hsize") * factor end)
-registerscript("VSize", function() return get ("vsize") * factor end)
-registerscript("LastPageNumber", function() return getcount("lastpageno") end)
-
-registerscript("OverlayWidth", function() return getdimen("d_overlay_width") * factor end)
-registerscript("OverlayHeight", function() return getdimen("d_overlay_height") * factor end)
-registerscript("OverlayDepth", function() return getdimen("d_overlay_depth") * factor end)
-registerscript("OverlayLineWidth", function() return getdimen("d_overlay_linewidth") * factor end)
-registerscript("OverlayOffset", function() return getdimen("d_overlay_offset") * factor end)
-registerscript("OverlayRegion", function() mpstring(getmacro("m_overlay_region")) end)
---------------("CurrentLayout", function() mpstring(getmacro("currentlayout")) end)
-
--- should be direct
---
--- registerscript("PageFraction", page_fraction)
-
-registerscript("PageFraction", function() return mpboolean(page_fraction ()) end)
-registerscript("OnRightPage", function() return mpboolean(on_right_page ()) end)
-registerscript("OnOddPage", function() return mpboolean(is_odd_page ()) end)
-registerscript("InPageBody", function() return mpboolean(in_body_page ()) end)
-registerscript("LayoutHasChanged", function() return mpboolean(layout_has_changed()) end)
-
-registerscript("defaultcolormodel", defaultcolormodel)
+local injectnumeric = mp.inject.numeric
+
+registerdirect("PaperHeight", function() return getdimen("paperheight") * factor end)
+registerdirect("PaperWidth", function() return getdimen("paperwidth") * factor end)
+registerdirect("PrintPaperHeight", function() return getdimen("printpaperheight") * factor end)
+registerdirect("PrintPaperWidth", function() return getdimen("printpaperwidth") * factor end)
+registerdirect("TopSpace", function() return getdimen("topspace") * factor end)
+registerdirect("BottomSpace", function() return getdimen("bottomspace") * factor end)
+registerdirect("BackSpace", function() return getdimen("backspace") * factor end)
+registerdirect("CutSpace", function() return getdimen("cutspace") * factor end)
+registerdirect("MakeupHeight", function() return getdimen("makeupheight") * factor end)
+registerdirect("MakeupWidth", function() return getdimen("makeupwidth") * factor end)
+registerdirect("TopHeight", function() return getdimen("topheight") * factor end)
+registerdirect("TopDistance", function() return getdimen("topdistance") * factor end)
+registerdirect("HeaderHeight", function() return getdimen("headerheight") * factor end)
+registerdirect("HeaderDistance", function() return getdimen("headerdistance") * factor end)
+registerdirect("TextHeight", function() return getdimen("textheight") * factor end)
+registerdirect("FooterDistance", function() return getdimen("footerdistance") * factor end)
+registerdirect("FooterHeight", function() return getdimen("footerheight") * factor end)
+registerdirect("BottomDistance", function() return getdimen("bottomdistance") * factor end)
+registerdirect("BottomHeight", function() return getdimen("bottomheight") * factor end)
+registerdirect("LeftEdgeWidth", function() return getdimen("leftedgewidth") * factor end)
+registerdirect("LeftEdgeDistance", function() return getdimen("leftedgedistance") * factor end)
+registerdirect("LeftMarginWidth", function() return getdimen("leftmarginwidth") * factor end)
+registerdirect("LeftMarginDistance", function() return getdimen("leftmargindistance") * factor end)
+registerdirect("TextWidth", function() return getdimen("textwidth") * factor end)
+registerdirect("RightMarginDistance", function() return getdimen("rightmargindistance") * factor end)
+registerdirect("RightMarginWidth", function() return getdimen("rightmarginwidth") * factor end)
+registerdirect("RightEdgeDistance", function() return getdimen("rightedgedistance") * factor end)
+registerdirect("RightEdgeWidth", function() return getdimen("rightedgewidth") * factor end)
+registerdirect("InnerMarginDistance", function() return getdimen("innermargindistance") * factor end)
+registerdirect("InnerMarginWidth", function() return getdimen("innermarginwidth") * factor end)
+registerdirect("OuterMarginDistance", function() return getdimen("outermargindistance") * factor end)
+registerdirect("OuterMarginWidth", function() return getdimen("outermarginwidth") * factor end)
+registerdirect("InnerEdgeDistance", function() return getdimen("inneredgedistance") * factor end)
+registerdirect("InnerEdgeWidth", function() return getdimen("inneredgewidth") * factor end)
+registerdirect("OuterEdgeDistance", function() return getdimen("outeredgedistance") * factor end)
+registerdirect("OuterEdgeWidth", function() return getdimen("outeredgewidth") * factor end)
+registerdirect("PageOffset", function() return getdimen("pagebackgroundoffset") * factor end)
+registerdirect("PageDepth", function() return getdimen("pagebackgrounddepth") * factor end)
+registerdirect("LayoutColumns", function() return getcount("layoutcolumns") end)
+registerdirect("LayoutColumnDistance", function() return getdimen("layoutcolumndistance") * factor end)
+registerdirect("LayoutColumnWidth", function() return getdimen("layoutcolumnwidth") * factor end)
+registerdirect("SpineWidth", function() return getdimen("spinewidth") * factor end)
+registerdirect("PaperBleed", function() return getdimen("paperbleed") * factor end)
+
+registerdirect("RealPageNumber", function() return getcount("realpageno") end)
+registerdirect("LastPageNumber", function() return getcount("lastpageno") end)
+
+registerdirect("PageNumber", function() return getcount("pageno") end)
+registerdirect("NOfPages", function() return getcount("lastpageno") end)
+
+registerdirect("SubPageNumber", function() return getcount("subpageno") end)
+registerdirect("NOfSubPages", function() return getcount("lastsubpageno") end)
+
+registerdirect("CurrentColumn", function() return getcount("mofcolumns") end)
+registerdirect("NOfColumns", function() return getcount("nofcolumns") end)
+
+registerdirect("BaseLineSkip", function() return get ("baselineskip",true) * factor end)
+registerdirect("LineHeight", function() return getdimen("lineheight") * factor end)
+registerdirect("BodyFontSize", function() return getdimen("bodyfontsize") * factor end)
+
+registerdirect("TopSkip", function() return get ("topskip",true) * factor end)
+registerdirect("StrutHeight", function() return getdimen("strutht") * factor end)
+registerdirect("StrutDepth", function() return getdimen("strutdp") * factor end)
+
+registerdirect("PageNumber", function() return getcount("pageno") end)
+registerdirect("RealPageNumber", function() return getcount("realpageno") end)
+registerdirect("NOfPages", function() return getcount("lastpageno") end)
+
+registerdirect("CurrentWidth", function() return get ("hsize") * factor end)
+registerdirect("CurrentHeight", function() return get ("vsize") * factor end)
+
+registerdirect("EmWidth", function() return emwidths [false] * factor end)
+registerdirect("ExHeight", function() return exheights[false] * factor end)
+
+registerdirect("HSize", function() return get ("hsize") * factor end)
+registerdirect("VSize", function() return get ("vsize") * factor end)
+registerdirect("LastPageNumber", function() return getcount("lastpageno") end)
+
+registerdirect("OverlayWidth", function() return getdimen("d_overlay_width") * factor end)
+registerdirect("OverlayHeight", function() return getdimen("d_overlay_height") * factor end)
+registerdirect("OverlayDepth", function() return getdimen("d_overlay_depth") * factor end)
+registerdirect("OverlayLineWidth", function() return getdimen("d_overlay_linewidth") * factor end)
+registerdirect("OverlayOffset", function() return getdimen("d_overlay_offset") * factor end)
+registerdirect("OverlayRegion", function() return getmacro("m_overlay_region") end)
+--------------("CurrentLayout", function() return getmacro("currentlayout") end)
+
+-- registerscript("PageFraction", function() return mpboolean(page_fraction ()) end)
+-- registerscript("OnRightPage", function() return mpboolean(on_right_page ()) end)
+-- registerscript("OnOddPage", function() return mpboolean(is_odd_page ()) end)
+-- registerscript("InPageBody", function() return mpboolean(in_body_page ()) end)
+-- registerscript("LayoutHasChanged", function() return mpboolean(layout_has_changed()) end)
+
+registerdirect("PageFraction", function() return page_fraction () end)
+registerdirect("OnRightPage", function() return on_right_page () end)
+registerdirect("OnOddPage", function() return is_odd_page () end)
+registerdirect("InPageBody", function() return in_body_page () end)
+registerdirect("LayoutHasChanged", function() return layout_has_changed() end)
+
+registerdirect("PageFraction", page_fraction )
+registerdirect("OnRightPage", on_right_page )
+registerdirect("OnOddPage", is_odd_page )
+registerdirect("InPageBody", in_body_page )
+registerdirect("LayoutHasChanged", layout_has_changed)
+
+registerdirect("defaultcolormodel", defaultcolormodel)