summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/page-str.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/context/base/page-str.mkiv')
-rw-r--r--Master/texmf-dist/tex/context/base/page-str.mkiv12
1 files changed, 11 insertions, 1 deletions
diff --git a/Master/texmf-dist/tex/context/base/page-str.mkiv b/Master/texmf-dist/tex/context/base/page-str.mkiv
index d73643cbe67..8cce9945f26 100644
--- a/Master/texmf-dist/tex/context/base/page-str.mkiv
+++ b/Master/texmf-dist/tex/context/base/page-str.mkiv
@@ -47,7 +47,7 @@
{\ctxlua{streams.initialize()}%
\glet\initializeoutputstreams\relax}
-\def\enableoutputstream[#1]%
+\def\enableoutputstream[#1]% could be \startoutputsubstream
{\initializeoutputstreams
\the\everyenableoutputstream
\inoutputstreamtrue
@@ -71,6 +71,16 @@
{\ctxlua{streams.stop()}%
\endgroup}
+\let\currentoutputsubstream\empty
+
+\def\startoutputsubstream[#1]%
+ {\glet\savedcurrentoutputstream\currentoutputstream
+ \enableoutputstream[#1]}
+
+\def\stopoutputsubstream
+ {\glet\currentoutputstream\savedcurrentoutputstream
+ \enableoutputstream[\savedcurrentoutputstream]}
+
\def\flushoutputstream [#1]{\ctxlua{streams.flush("#1")}}
\def\outputstreamcopy [#1]{\vbox{\ctxlua{streams.flush("#1",true)}}}
\def\outputstreambox [#1]{\vbox{\ctxlua{streams.flush("#1")}}}