summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/mkii/cont-new.mkii2
-rw-r--r--tex/context/base/mkii/context.mkii2
-rw-r--r--tex/context/base/mkiv/cont-new.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkiv2
-rw-r--r--tex/context/base/mkiv/meta-nod.mkiv210
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin25766 -> 25770 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin249431 -> 250727 bytes
-rw-r--r--tex/context/base/mkiv/strc-con.mkvi49
-rw-r--r--tex/context/base/mkiv/util-str.lua2
-rw-r--r--tex/context/fonts/mkiv/type-imp-libertine.mkiv14
-rw-r--r--tex/context/interface/mkiv/i-context.pdfbin846320 -> 846330 bytes
-rw-r--r--tex/context/interface/mkiv/i-readme.pdfbin60774 -> 60776 bytes
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
13 files changed, 269 insertions, 16 deletions
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii
index 83849d219..81868a917 100644
--- a/tex/context/base/mkii/cont-new.mkii
+++ b/tex/context/base/mkii/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2018.01.08 23:03}
+\newcontextversion{2018.01.12 15:56}
%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/mkii/context.mkii b/tex/context/base/mkii/context.mkii
index bf662cb56..4c654db20 100644
--- a/tex/context/base/mkii/context.mkii
+++ b/tex/context/base/mkii/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2018.01.08 23:03}
+\edef\contextversion{2018.01.12 15:56}
%D For those who want to use this:
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index 48067eba5..df7d91ce0 100644
--- a/tex/context/base/mkiv/cont-new.mkiv
+++ b/tex/context/base/mkiv/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2018.01.08 23:03}
+\newcontextversion{2018.01.12 15:56}
%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/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv
index 41eab7de7..54316346a 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -41,7 +41,7 @@
%D up and the dependencies are more consistent.
\edef\contextformat {\jobname}
-\edef\contextversion{2018.01.08 23:03}
+\edef\contextversion{2018.01.12 15:56}
\edef\contextkind {beta}
%D For those who want to use this:
diff --git a/tex/context/base/mkiv/meta-nod.mkiv b/tex/context/base/mkiv/meta-nod.mkiv
index 1c6f1309d..5c7b3d503 100644
--- a/tex/context/base/mkiv/meta-nod.mkiv
+++ b/tex/context/base/mkiv/meta-nod.mkiv
@@ -3,7 +3,7 @@
%D version=2016.11.23,
%D title=\METAPOST\ Graphics,
%D subtitle=Nodes,
-%D author=Alan Braslau and Hans Hagen,
+%D author={Alan Braslau and Hans Hagen},
%D date=\currentdate,
%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
%C
@@ -11,9 +11,6 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-%D We might add more here. Also, the node module might get preloaded in
-%D all instances.
-
\unprotect
\defineMPinstance
@@ -37,3 +34,208 @@
% \stopMPdefinitions
\protect
+
+%D This module provides a simple \TEX\ layer on top of the nodes library that
+%D is preloaded in \METAFUN. More information can be found in the manual and
+%D article.
+%D
+%D We strongly advice to use the \METAPOST\ interface and only provide this
+%D \TEX\ variant as proof of concept. There are no plans to extend this module
+%D because we see no advantage in using a \TEX\ interface over a \METAPOST\
+%D one.
+%D
+%D \startbuffer
+%D \startnodes
+%D \placenode[0,0]{A}
+%D \placenode[1,0]{B}
+%D \connectnodes [0,1] [option=doublearrow]
+%D \stopnodes
+%D
+%D \startnodes[dx=2cm,rotation=45]
+%D \placenode[0,0]{A}
+%D \placenode[1,0]{B}
+%D \placenode[1,1]{C}
+%D \placenode[0,1]{D}
+%D \connectnodes [0,2] [option=doublearrow,label=a,offset=.05]
+%D \connectnodes [1,3] [option=doublearrows]
+%D \stopnodes
+%D
+%D \startnodes[dx=2cm,dy=2cm]
+%D \nodeMPcode{ahlength := 12pt ; ahangle := 30 ; ahvariant := 1 ;}
+%D \mpcode{ahlength := 12pt ; ahangle := 30 ; ahvariant := 1 ;}
+%D \placenode[0,1]{\node{A}}
+%D \placenode[1,1]{\node{B}}
+%D \placenode[0,0]{\node{C}}
+%D \placenode[1,0]{\node{D}}
+%D \connectnodes [0,3] [option=arrow,label={ }]
+%D \connectnodes [1,2] [option=arrow]
+%D \stopnodes
+%D \stopbuffer
+%D
+%D \typebuffer
+%D
+%D \startlinecorrection \getbuffer \stoplinecorrection
+
+\unprotect
+
+\installcorenamespace{metanodes}
+\installcorenamespace{metanodesoption}
+\installcorenamespace{metanodesalternative}
+\installcorenamespace{metanodesposition}
+
+% todo: maybe instances
+
+\installparameterhandler \??metanodes {metanodes}
+\installsetuphandler \??metanodes {metanodes}
+
+\setupmetanodes
+ [\c!option =,
+ \c!alternative =,
+ \c!offset =0,
+ \c!position =,
+ \c!label =,
+ \c!dx =2\emwidth,
+ \c!dy =2\emwidth,
+ \c!rotation =90,
+ \c!rulethickness =.5pt,
+ \c!command =]
+
+\newtoks\t_every_meta_nodes
+\newtoks\t_meta_nodes
+
+\let\stopnodes\relax
+
+\unexpanded\def\startnodes
+ {\dosingleempty\meta_nodes_start}
+
+\def\meta_nodes_start[#1]#2\stopnodes
+ {\hpack\bgroup
+ \iffirstargument
+ \setupcurrentmetanodes[#1]%
+ \fi
+ \edef\p_meta_option{\metanodesparameter\c!option}%
+ \edef\p_meta_alternative{\metanodesparameter\c!alternative}%
+ \the\t_every_meta_nodes
+ \t_meta_nodes\emptytoks
+ #2\removeunwantedspaces
+ % for alan, will be commented:
+ \writestatus{metanodes}{\detokenize\expandafter{\the\t_meta_nodes}}%
+ \startMPcode
+ mfun_node_init(%
+ \the\dimexpr\metanodesparameter\c!dx\relax,%
+ \the\dimexpr\metanodesparameter\c!dy\relax,%
+ \metanodesparameter\c!rotation%
+ ) ;
+ \the\t_meta_nodes ;
+ mfun_node_flush ;
+ \stopMPcode
+ \egroup}
+
+% \unexpanded\def\grph_nodes_node[#1,#2]#3%
+% {\etoksapp\t_meta_nodes{mfun_node_make(\number#1,\number#2,"\metanodesparameter\c!command{#3}");}}
+
+\unexpanded\def\grph_nodes_node
+ {\dodoubleempty\grph_nodes_node_two}
+
+\def\grph_nodes_node_two[#1][#2]%
+ {\grph_nodes_node_two_indeed[#1][#2]}
+
+\def\grph_nodes_node_two_indeed[#1,#2][#3]#4%
+ {\begingroup
+ \ifsecondargument
+ \setupcurrentmetanodes[#3]%
+ \fi
+ \edef\p_label{#4}%
+ \normalexpanded{\endgroup\noexpand\etoksapp\t_meta_nodes{%
+ mfun_node_make(\number#1,\number#2%
+ \ifx\p_label\empty \else
+ ,"\metanodesparameter\c!command{\p_label}"%
+ \fi
+ );%
+ }}}
+
+\appendtoks
+ \let\placenode\grph_nodes_node
+\to \t_every_meta_nodes
+
+\unexpanded\def\grph_nodes_fromto
+ {\dodoubleempty\grph_nodes_fromto_two}
+
+\def\grph_nodes_fromto_two[#1][#2]%
+ {\grph_nodes_fromto_two_indeed[#1][#2]}% get rid of {n,m}
+
+\letvalue{\??metanodesposition }\empty
+\setvalue{\??metanodesposition top}{.top}
+\setvalue{\??metanodesposition bottom}{.bot}
+\setvalue{\??metanodesposition left}{.lft}
+\setvalue{\??metanodesposition right}{.rt}
+\setvalue{\??metanodesposition upperleft}{.ulft}
+\setvalue{\??metanodesposition topleft}{.ulft}
+\setvalue{\??metanodesposition lefttop}{.ulft}
+\setvalue{\??metanodesposition upperright}{.urt}
+\setvalue{\??metanodesposition topright}{.urt}
+\setvalue{\??metanodesposition righttop}{.urt}
+\setvalue{\??metanodesposition lowerleft}{.llft}
+\setvalue{\??metanodesposition bottomleft}{.llft}
+\setvalue{\??metanodesposition leftbottom}{.llft}
+\setvalue{\??metanodesposition lowerright}{.lrt}
+\setvalue{\??metanodesposition bottomright}{.lrt}
+\setvalue{\??metanodesposition rightbottom}{.lrt}
+
+\def\grph_nodes_fromto_two_indeed[#1,#2][#3]% we can't group because etoksapp doesn't like that
+ {\begingroup
+ \ifsecondargument
+ \setupcurrentmetanodes[#3]%
+ \fi
+ \edef\p_label {\metanodesparameter\c!label}%
+ \edef\p_rulethickness{\metanodesparameter\c!rulethickness}%
+ \edef\p_command {\metanodesparameter\c!command}% better get an error early
+ \normalexpanded{\endgroup\noexpand\etoksapp\t_meta_nodes{%
+ \ifcsname\??metanodesalternative\metanodesparameter\c!alternative\endcsname
+ \lastnamedcs
+ \else
+ \csname\??metanodesalternative\endcsname
+ \fi
+ \space
+ mfun_nodes_fromto\begincsname\??metanodesposition\metanodesparameter\c!position\endcsname(%
+ \metanodesparameter\c!offset,%
+ \number#1,\number#2%
+ \ifx\p_label\empty \else
+ ,"\ifx\p_command\empty\p_label\else\p_command{\p_label}\fi"%
+ \fi
+ )%
+ \space
+ \ifcsname\??metanodesoption\metanodesparameter\c!option\endcsname
+ \lastnamedcs
+ \else
+ \csname\??metanodesoption\endcsname
+ \fi
+ \space
+ \ifx\p_rulethickness\empty \else
+ withpen pencircle scaled \the\dimexpr\p_rulethickness\relax
+ \fi
+ ;%
+ }}}
+
+\setvalue{\??metanodesalternative }{draw}
+\setvalue{\??metanodesalternative arrow}{drawarrow}
+\setvalue{\??metanodesalternative doublearrow}{drawdblarrow}
+\setvalue{\??metanodesalternative doublearrows}{drawdoublearrows}
+
+\setvalue{\??metanodesoption }{}
+\setvalue{\??metanodesoption dashed}{dashed evenly}
+\setvalue{\??metanodesoption dotted}{dashed withdots scaled .5}
+
+\appendtoks
+ \let\connectnodes\grph_nodes_fromto
+\to \t_every_meta_nodes
+
+\unexpanded\def\grph_nodes_code#1%
+ {\etoksapp\t_meta_nodes{#1}}
+
+\appendtoks
+ \let\nodeMPcode\grph_nodes_code
+ \let\mpcode\grph_nodes_code
+\to \t_every_meta_nodes
+
+\protect \endinput
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index 7818625cd..c5feca20c 100644
--- a/tex/context/base/mkiv/status-files.pdf
+++ b/tex/context/base/mkiv/status-files.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf
index afcb37ae4..044d5ab28 100644
--- a/tex/context/base/mkiv/status-lua.pdf
+++ b/tex/context/base/mkiv/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/strc-con.mkvi b/tex/context/base/mkiv/strc-con.mkvi
index 58e83a009..0aa7e69da 100644
--- a/tex/context/base/mkiv/strc-con.mkvi
+++ b/tex/context/base/mkiv/strc-con.mkvi
@@ -188,6 +188,27 @@
% \ifdefined\dotagsetconstruction \else \let\dotagsetconstruction\relax \fi
+% \startuseMPgraphic{MyFrame}
+% picture p ; numeric o ; path a, b ; pair c ;
+% p := textext.rt("\FunnyFramed{\currentconstructiontext}") ;
+% % p := textext.rt("\wrappedconstruction{\FunnyFramed{\currentconstructiontext}}") ;
+% % p := textext.rt("\FunnyFramed{\wrappedconstruction{\currentconstructiontext}}") ;
+% % p := textext.rt("\FunnyFramed{\wrappedcurrentconstruction}") ;
+% ...
+% \stopuseMPgraphic
+%
+% \defineoverlay[MyFrame][\useMPgraphic{MyFrame}]
+%
+% \defineframedtext
+% [MyText]
+% [frame=off,
+% background=MyFrame]
+%
+% \defineenumeration[Theorem]
+% [alternative=empty,
+% before=\startMyText,
+% after=\stopMyText]
+
\newtoks\everyconstruction
\unexpanded\def\currentconstructiontext
@@ -201,6 +222,24 @@
\p_strc_constructions_sample
\endstrut}
+\unexpanded\def\wrappedconstruction#1%
+ {\begingroup
+ \iftrialtypesetting \else
+ \currentconstructionsynchronize
+ \attribute\destinationattribute\currentconstructionattribute\relax
+ \fi
+ #1%
+ \endgroup}
+
+\unexpanded\def\wrappedcurrentconstruction
+ {\begingroup
+ \iftrialtypesetting \else
+ \currentconstructionsynchronize
+ \attribute\destinationattribute\currentconstructionattribute\relax
+ \fi
+ \currentconstructiontext
+ \endgroup}
+
\unexpanded\setvalue{\??constructionmainhandler\v!construction}#1%
{\iftrialtypesetting \else
\begingroup
@@ -481,6 +520,10 @@
[\v!command]
[\c!renderingsetup=\??constructionrenderings:\v!command]
+\defineconstructionalternative
+ [\v!empty]
+ [\c!renderingsetup=\??constructionrenderings:\v!empty]
+
\newbox \constructionheadbox
\newskip \leftconstructionskip
\newskip \rightconstructionskip
@@ -857,6 +900,12 @@
\ignorespaces
\stopsetups
+\startsetups[\??constructionrenderings:\v!empty]
+ \noindent
+ \useconstructionstyleandcolor\c!style\c!color
+ \ignorespaces
+\stopsetups
+
% you can use \placeclosesymbol or \qed to place a symbol at the end of a
% construction
diff --git a/tex/context/base/mkiv/util-str.lua b/tex/context/base/mkiv/util-str.lua
index f15f291ee..52ecf71ad 100644
--- a/tex/context/base/mkiv/util-str.lua
+++ b/tex/context/base/mkiv/util-str.lua
@@ -296,7 +296,7 @@ end
--
-- integer %...i number
-- integer %...d number
--- unsigned %...u number
+-- unsigned %...u number -- no tused
-- character %...c number
-- hexadecimal %...x number
-- HEXADECIMAL %...X number
diff --git a/tex/context/fonts/mkiv/type-imp-libertine.mkiv b/tex/context/fonts/mkiv/type-imp-libertine.mkiv
index 4620995b9..4fac1a6aa 100644
--- a/tex/context/fonts/mkiv/type-imp-libertine.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-libertine.mkiv
@@ -47,12 +47,13 @@
\starttypescript [\s!sans] [biolinum] [\s!name]
\setups[\s!font:\s!fallback:\s!sans]
- \definefontsynonym [\s!Sans] [Biolinum-Regular] [\s!features=\s!default]
- \definefontsynonym [\s!SansBold] [Biolinum-Bold] [\s!features=\s!default]
- \definefontsynonym [\s!SansItalic] [Biolinum-Italic] [\s!features=\s!default]
- \definefontsynonym [\s!SansSlanted] [Biolinum-Slanted] [\s!features=\s!default]
- \definefontsynonym [\s!SansBoldItalic] [Biolinum-BoldSlanted] [\s!features=\s!default]
- \definefontsynonym [SansCaps] [Biolinum-Regular] [\s!features=\s!smallcaps]
+ \definefontsynonym [\s!Sans] [Biolinum-Regular] [\s!features=\s!default]
+ \definefontsynonym [\s!SansBold] [Biolinum-Bold] [\s!features=\s!default]
+ \definefontsynonym [\s!SansItalic] [Biolinum-Italic] [\s!features=\s!default]
+ \definefontsynonym [\s!SansSlanted] [Biolinum-Slanted] [\s!features=\s!default]
+ \definefontsynonym [\s!SansBoldItalic] [Biolinum-BoldSlanted] [\s!features=\s!default]
+ \definefontsynonym [\s!SansBoldSlanted] [Biolinum-BoldSlanted] [\s!features=\s!default]
+ \definefontsynonym [SansCaps] [Biolinum-Regular] [\s!features=\s!smallcaps]
\stoptypescript
\starttypescript [libertine]
@@ -60,6 +61,7 @@
\definetypeface [libertine] [\s!ss] [\s!sans] [biolinum] [\s!default]
\definetypeface [libertine] [\s!tt] [\s!mono] [default] [\s!default]
%definetypeface [libertine] [\s!mm] [\s!math] [times] [\s!default]
+ \definetypeface [libertine] [\s!mm] [\s!math] [default] [\s!default]
\quittypescriptscanning
\stoptypescript
diff --git a/tex/context/interface/mkiv/i-context.pdf b/tex/context/interface/mkiv/i-context.pdf
index 0dfec2ab9..38c4532e4 100644
--- a/tex/context/interface/mkiv/i-context.pdf
+++ b/tex/context/interface/mkiv/i-context.pdf
Binary files differ
diff --git a/tex/context/interface/mkiv/i-readme.pdf b/tex/context/interface/mkiv/i-readme.pdf
index d98590aeb..53ce66a29 100644
--- a/tex/context/interface/mkiv/i-readme.pdf
+++ b/tex/context/interface/mkiv/i-readme.pdf
Binary files differ
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index e828c3023..6da2415ad 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 : c:/data/develop/context/sources/luatex-fonts-merged.lua
-- parent file : c:/data/develop/context/sources/luatex-fonts.lua
--- merge date : 01/08/18 23:03:13
+-- merge date : 01/12/18 15:56:34
do -- begin closure to overcome local limits and interference