From 3874f118dc4a8e2fac23e451eb21f4bfab0fa664 Mon Sep 17 00:00:00 2001
From: Philipp Gesang <philipp.gesang@vernaio.com>
Date: Fri, 24 Feb 2023 09:57:54 +0100
Subject: adapt for contemporary simpleslides

---
 .../third/simpleslides/s-simpleslides-Automata.tex | 281 +++++++++++++++++++++
 .../third/simpleslides/simpleslides-s-Automata.tex | 281 ---------------------
 2 files changed, 281 insertions(+), 281 deletions(-)
 create mode 100644 module/tex/context/third/simpleslides/s-simpleslides-Automata.tex
 delete mode 100644 module/tex/context/third/simpleslides/simpleslides-s-Automata.tex

(limited to 'module/tex/context/third')

diff --git a/module/tex/context/third/simpleslides/s-simpleslides-Automata.tex b/module/tex/context/third/simpleslides/s-simpleslides-Automata.tex
new file mode 100644
index 0000000..77861e9
--- /dev/null
+++ b/module/tex/context/third/simpleslides/s-simpleslides-Automata.tex
@@ -0,0 +1,281 @@
+%D \module
+%D   [      file=simpleslides-s-Automata,
+%D        version=2010-08-10-15:28:22+0200,
+%D          title=\CONTEXT\ Style File,
+%D       subtitle=Presentation Module --- Automaton Style,
+%D         author=Philipp Gesang,
+%D           date=\currentdate,
+%D      copyright={Philipp Gesang}]
+%C
+%C Copyright 2007 Aditya Mahajan and Thomas A. Schmitz
+%C This file may be distributed under the GNU General Public License v. 2.0.
+%C Modified 2010 by Philipp Gesang
+
+%D Providing presentation Backgrounds according to Conway's Game of Life.
+%D Initially based on the BigNumber theme by A. Mahajan and Th. Schmitz. (Many,
+%D many thanks!)
+
+%M \usemodule[simpleslides,style=Automata]
+%M \loadsetups[t-simpleslides-automata.xml]
+
+\writestatus{simpleslides}{loading Theme Automata}
+
+\startmodule[simpleslides-s-Automata]
+
+\setupmodule[
+  mode=,
+  file=,
+  rule=,
+  extendxy=,
+  clip=,
+] % using defaults from lua config
+
+% \ctxlua{environment.loadluafile( "automata-main" )}
+\ctxloadluafile{automata-main}
+\ctxlua{mplife.slides = true}
+
+\unprotect
+
+%D First, we change the page layout to have more space all around.
+
+\setuplayout [              width=fit,
+                           margin=2cm,
+                           height=fit,
+	             leftmargindistance=.8cm,
+	            rightmargindistance=.0cm,
+                           header=18mm, 
+                   %headerdistance=.3cm,
+                           footer=0cm, 
+                   %footerdistance=0mm,
+                         %topspace=.5cm, 
+                         topspace=.8cm, 
+                        backspace=1.9cm,
+                         location=singlesided]
+
+\setuplayout [simpleslides:layout:horizontal][header=18mm]
+\setuplayout [simpleslides:layout:vertical]  [header=0mm]
+\setuplayout [simpleslides:layout:title]     
+
+\setuplayer[simpleslides:layer:slidetitle]
+    [width=\paperwidth,
+    height=\paperheight,x=20mm]
+
+%D Next we define generic frames, which will be used by other macros to
+%D get a consistent look and feel.
+
+\defineframed[simpleslides:framed:small]
+             [ frame=off,
+              offset=0pt,
+               width=1.7cm,
+               align=middle]
+
+\setupcombinations[distance=2.5em]
+
+%D These macros are used for placing figures/pictures:
+
+\define\NormalHeight        {\textheight}
+\define\NormalWidth         {.46\textwidth}
+\define\PictureFrameHeight  {\textheight}
+\define\PictureFrameWidth   {.46\textwidth}
+
+%D This module has two color schemes, a blue one and a red one.
+%D “backgroundoutside” and “backgroundscreen” -- obvioulsly -- determine how
+%D the background will look like, whereas “contrastcolor” is used to draw the
+%D automaton {\em onto} the background. Transparancy of the automaton is
+%D adjusted via the “opacity” factor in your automatarc.
+
+\startsetups simpleslides:setups:blue
+\definecolor [simpleslides:contrastcolor]      [r=0.7,g=0.7,b=0.9]
+\definecolor [simpleslides:backgroundoutside]  [r=0.9,g=0.9,b=0.95]
+\definecolor [simpleslides:backgroundscreen]	 [s=.975]
+\definecolor [simpleslides:textcolor]          [s=0]
+\stopsetups
+
+\startsetups simpleslides:setups:red
+\definecolor [simpleslides:contrastcolor]     [r=0.4]
+\definecolor [simpleslides:backgroundoutside] [r=0.5,g=0.2,b=0.2]
+\definecolor [simpleslides:backgroundscreen]	[s=.4]
+\definecolor [simpleslides:textcolor]         [s=1]
+\stopsetups
+
+%D Now we choose the scheme that the user asked for.
+
+\doifsetupselse
+    {simpleslides:setups:\moduleparameter{simpleslides}{color}}
+    {\setups{simpleslides:setups:\moduleparameter{simpleslides}{color}}}
+    {\setups{simpleslides:setups:blue}}
+
+\setupcolors[textcolor={simpleslides:textcolor}]
+
+%D Setting up the automata part. Note that the precedence of settings is:
+%D \type{kpse:automatarc-global.lua} < \type{./automatrc.lua} < \type{setupmodule},
+%D but some options (such as the color scheme) can only be specified via
+%D \type{setupmodule[…]}.
+%D First, we check for the automaton type.
+
+\doifsomethingelse{\moduleparameter{simpleslides}{mode}}{\ctxlua{
+    mplife.setup.current.mode = "\luaescapestring{\moduleparameter{simpleslides}{mode}}"
+    if mplife.setup.current.mode == "life" then
+        mplife.successive = mplife.gol_successive
+    else
+        environment.loadluafile("automata-eca")
+        mplife.successive = mplife.eca_successive
+    end}}
+    {\ctxlua{mplife.successive = mplife.gol_successive}}
+
+%D The number of dead cells to add left and right / before and after
+%D the initial frame. (Makes sense only for Game of Life.)
+
+\doifsomething{\moduleparameter{simpleslides}{extendxy}}{\ctxlua
+    {mplife.setup.current.extendx = tonumber("\luaescapestring{\moduleparameter{simpleslides}{extendxy}}")
+     mplife.setup.current.extendy = tonumber("\luaescapestring{\moduleparameter{simpleslides}{extendxy}}") }}
+
+\doifsomething{\moduleparameter{simpleslides}{extendx}}{\ctxlua
+    {mplife.setup.current.extendx = tonumber("\luaescapestring{\moduleparameter{simpleslides}{extendx}}") }}
+
+\doifsomething{\moduleparameter{simpleslides}{extendy}}{\ctxlua
+    {mplife.setup.current.extendy = tonumber("\luaescapestring{\moduleparameter{simpleslides}{extendy}}") }}
+
+%D Initial “tape”, i.e. the first frame with respect to Game of Life automata
+%D and the first line for Elementary automata. Filenames without suffix expand
+%D to \type{file .. ".gol"}.
+
+\doifsomething{\moduleparameter{simpleslides}{file}}{\ctxlua
+    {mplife.setup.current.file = "\luaescapestring{\moduleparameter{simpleslides}{file}}" }}
+
+%D Clipping is essential to cope with left/right propagation of
+%D patterns. E.g. with rule 158 the total propagation at iteration
+%D n is itself n to the left and n to the right. Whereas rule 102 
+%D (a Sierpiński fractal generator) protrudes only to the left at
+%D a rate of n.
+%D Frames cannot be simply cut off at the borders with adjacient 
+%D cells treated as “dead” because it would distort the pattern.
+%D Therefore, frames are generated as complete sections which are 
+%D clipped to the desired size, as specified by the initial row.
+%D To determine whether to clip your pattern to the left, right, 
+%D or in both directions, check the propagation at
+%D \type{string.format("http://mathworld.wolfram.com/Rule%s.html", rule)}
+%D or consult Wolfram's “A New Kind of Science” but beware not to
+%D buy everything he claims…
+%D
+%D Accepts values: \type{left}, \type{right} and \type{both}.
+
+\doifsomething{\moduleparameter{simpleslides}{clip}}{\ctxlua
+    {mplife.setup.current.clip = "\luaescapestring{\moduleparameter{simpleslides}{clip}}" }}
+
+\startluacode
+do
+    local c = mplife.setup.current
+    if c.mode == "life" then
+        c.init = gol.parse_file(c.file)
+        c.last = c.init
+    else
+        c.init      = eca.parse_file(c.file)
+        c.framesize = math.floor(c.aspect * c.init:len())
+        c.pages     = structures.counters.record("realpage")["last"]
+        if c.clip then
+            c.xneeded   =   c.pages * c.framesize
+            if c.clip == "both" then -- Assume initial pattern is centered.
+                c.diff      = c.xneeded - math.ceil(c.init:len()/2)
+            else
+                c.diff      = c.xneeded - c.init:len()
+            end
+            if c.diff > 0 then
+                local affix = ""
+                for i=1, c.diff, 1 do
+                    affix = affix .. "0"
+                end
+                if c.clip == "left"  or c.clip == "both" then
+                    c.init = affix .. c.init
+                end
+                if c.clip == "right" or c.clip == "both" then
+                    c.init = c.init .. affix
+                end
+            end
+        end
+    end
+    mplife.setup.current = c
+end
+\stopluacode
+
+%D Rules determine the transformation from one iteration to the next.
+%D {\em Life} rules take the form \type{B3/S23}, the separator being any of \type{/},
+%D \type{.} and \type{-}.
+%D Rules for elementary cellular automata are given in decimal: \type{1}--\type{255}.
+
+\doifsomething{\moduleparameter{simpleslides}{rule}}{\ctxlua
+   {if mplife.setup.current.mode == "life" then
+        mplife.setup.current.rule = gol.parse_rule("\luaescapestring{\moduleparameter{simpleslides}{rule}}") 
+    else
+        mplife.setup.current.rule = eca.gen_rule(tonumber("\luaescapestring{\moduleparameter{simpleslides}{rule}}")) 
+    end}}
+
+%D We also use \METAPOST\ to draw the horizontal and vertical page backgrounds.
+%D Backgrounds will be of solid color, the ornament gets the transparency.
+                       
+\startuniqueMPgraphic{simpleslides:MP:horizontal} 
+StartPage ;
+fill Page withcolor \MPcolor{simpleslides:backgroundoutside} ;
+fill Field[Text][Text] enlarged 0.2cm
+     withcolor \MPcolor{simpleslides:backgroundscreen} ;
+StopPage ;
+\stopuniqueMPgraphic 
+
+\startuniqueMPgraphic{simpleslides:MP:vertical}
+StartPage ;
+fill Page withcolor \MPcolor{simpleslides:backgroundoutside} ;
+
+z1 = urcorner Field[Text][Text] shifted (.2cm,0) ;
+z2 = lrcorner Field[Text][Text] shifted (.2cm,-.2cm) ;
+z3 = z1 shifted (-8.05cm,0) ;
+z4 = (x3,y2) ;
+
+save Main ;
+path Main ;
+Main := z1 -- z2 -- z4 -- z3 --cycle ;
+
+fill Main withcolor \MPcolor{simpleslides:backgroundscreen} ;
+StopPage ;
+\stopuniqueMPgraphic
+
+
+%D We define these backgrounds as overlays:
+
+\defineoverlay 
+  [simpleslides:background:horizontal] 
+  [\useMPgraphic{simpleslides:MP:horizontal}] 
+
+\defineoverlay 
+  [simpleslides:background:vertical] 
+  [\useMPgraphic{simpleslides:MP:vertical}] 
+
+\defineoverlay 
+  [simpleslides:background:title] 
+  [\useMPgraphic{simpleslides:MP:horizontal}] 
+
+\defineoverlay 
+  [simpleslides:background:ornament] 
+  [\ctxlua{mplife.successive()}] 
+
+%D The slide title is placed on the top of the text area. The layer takes care
+%D of the positioning.
+
+\setupSlideTitle
+   [\c!after=,
+    \c!alternative=layer,
+    \c!width=\textwidth,
+    \c!height=2.5cm,
+    \c!command=\doSlideTitle]
+
+
+%D Squares are used as the first level of itemizations 
+
+\definesymbol[1][$\square$]
+\setupitemize[1][inmargin]
+%\setupitemize[each][joinedup,unpacked]
+
+\protect
+\stopmodule
+
+\endinput
+
diff --git a/module/tex/context/third/simpleslides/simpleslides-s-Automata.tex b/module/tex/context/third/simpleslides/simpleslides-s-Automata.tex
deleted file mode 100644
index 77861e9..0000000
--- a/module/tex/context/third/simpleslides/simpleslides-s-Automata.tex
+++ /dev/null
@@ -1,281 +0,0 @@
-%D \module
-%D   [      file=simpleslides-s-Automata,
-%D        version=2010-08-10-15:28:22+0200,
-%D          title=\CONTEXT\ Style File,
-%D       subtitle=Presentation Module --- Automaton Style,
-%D         author=Philipp Gesang,
-%D           date=\currentdate,
-%D      copyright={Philipp Gesang}]
-%C
-%C Copyright 2007 Aditya Mahajan and Thomas A. Schmitz
-%C This file may be distributed under the GNU General Public License v. 2.0.
-%C Modified 2010 by Philipp Gesang
-
-%D Providing presentation Backgrounds according to Conway's Game of Life.
-%D Initially based on the BigNumber theme by A. Mahajan and Th. Schmitz. (Many,
-%D many thanks!)
-
-%M \usemodule[simpleslides,style=Automata]
-%M \loadsetups[t-simpleslides-automata.xml]
-
-\writestatus{simpleslides}{loading Theme Automata}
-
-\startmodule[simpleslides-s-Automata]
-
-\setupmodule[
-  mode=,
-  file=,
-  rule=,
-  extendxy=,
-  clip=,
-] % using defaults from lua config
-
-% \ctxlua{environment.loadluafile( "automata-main" )}
-\ctxloadluafile{automata-main}
-\ctxlua{mplife.slides = true}
-
-\unprotect
-
-%D First, we change the page layout to have more space all around.
-
-\setuplayout [              width=fit,
-                           margin=2cm,
-                           height=fit,
-	             leftmargindistance=.8cm,
-	            rightmargindistance=.0cm,
-                           header=18mm, 
-                   %headerdistance=.3cm,
-                           footer=0cm, 
-                   %footerdistance=0mm,
-                         %topspace=.5cm, 
-                         topspace=.8cm, 
-                        backspace=1.9cm,
-                         location=singlesided]
-
-\setuplayout [simpleslides:layout:horizontal][header=18mm]
-\setuplayout [simpleslides:layout:vertical]  [header=0mm]
-\setuplayout [simpleslides:layout:title]     
-
-\setuplayer[simpleslides:layer:slidetitle]
-    [width=\paperwidth,
-    height=\paperheight,x=20mm]
-
-%D Next we define generic frames, which will be used by other macros to
-%D get a consistent look and feel.
-
-\defineframed[simpleslides:framed:small]
-             [ frame=off,
-              offset=0pt,
-               width=1.7cm,
-               align=middle]
-
-\setupcombinations[distance=2.5em]
-
-%D These macros are used for placing figures/pictures:
-
-\define\NormalHeight        {\textheight}
-\define\NormalWidth         {.46\textwidth}
-\define\PictureFrameHeight  {\textheight}
-\define\PictureFrameWidth   {.46\textwidth}
-
-%D This module has two color schemes, a blue one and a red one.
-%D “backgroundoutside” and “backgroundscreen” -- obvioulsly -- determine how
-%D the background will look like, whereas “contrastcolor” is used to draw the
-%D automaton {\em onto} the background. Transparancy of the automaton is
-%D adjusted via the “opacity” factor in your automatarc.
-
-\startsetups simpleslides:setups:blue
-\definecolor [simpleslides:contrastcolor]      [r=0.7,g=0.7,b=0.9]
-\definecolor [simpleslides:backgroundoutside]  [r=0.9,g=0.9,b=0.95]
-\definecolor [simpleslides:backgroundscreen]	 [s=.975]
-\definecolor [simpleslides:textcolor]          [s=0]
-\stopsetups
-
-\startsetups simpleslides:setups:red
-\definecolor [simpleslides:contrastcolor]     [r=0.4]
-\definecolor [simpleslides:backgroundoutside] [r=0.5,g=0.2,b=0.2]
-\definecolor [simpleslides:backgroundscreen]	[s=.4]
-\definecolor [simpleslides:textcolor]         [s=1]
-\stopsetups
-
-%D Now we choose the scheme that the user asked for.
-
-\doifsetupselse
-    {simpleslides:setups:\moduleparameter{simpleslides}{color}}
-    {\setups{simpleslides:setups:\moduleparameter{simpleslides}{color}}}
-    {\setups{simpleslides:setups:blue}}
-
-\setupcolors[textcolor={simpleslides:textcolor}]
-
-%D Setting up the automata part. Note that the precedence of settings is:
-%D \type{kpse:automatarc-global.lua} < \type{./automatrc.lua} < \type{setupmodule},
-%D but some options (such as the color scheme) can only be specified via
-%D \type{setupmodule[…]}.
-%D First, we check for the automaton type.
-
-\doifsomethingelse{\moduleparameter{simpleslides}{mode}}{\ctxlua{
-    mplife.setup.current.mode = "\luaescapestring{\moduleparameter{simpleslides}{mode}}"
-    if mplife.setup.current.mode == "life" then
-        mplife.successive = mplife.gol_successive
-    else
-        environment.loadluafile("automata-eca")
-        mplife.successive = mplife.eca_successive
-    end}}
-    {\ctxlua{mplife.successive = mplife.gol_successive}}
-
-%D The number of dead cells to add left and right / before and after
-%D the initial frame. (Makes sense only for Game of Life.)
-
-\doifsomething{\moduleparameter{simpleslides}{extendxy}}{\ctxlua
-    {mplife.setup.current.extendx = tonumber("\luaescapestring{\moduleparameter{simpleslides}{extendxy}}")
-     mplife.setup.current.extendy = tonumber("\luaescapestring{\moduleparameter{simpleslides}{extendxy}}") }}
-
-\doifsomething{\moduleparameter{simpleslides}{extendx}}{\ctxlua
-    {mplife.setup.current.extendx = tonumber("\luaescapestring{\moduleparameter{simpleslides}{extendx}}") }}
-
-\doifsomething{\moduleparameter{simpleslides}{extendy}}{\ctxlua
-    {mplife.setup.current.extendy = tonumber("\luaescapestring{\moduleparameter{simpleslides}{extendy}}") }}
-
-%D Initial “tape”, i.e. the first frame with respect to Game of Life automata
-%D and the first line for Elementary automata. Filenames without suffix expand
-%D to \type{file .. ".gol"}.
-
-\doifsomething{\moduleparameter{simpleslides}{file}}{\ctxlua
-    {mplife.setup.current.file = "\luaescapestring{\moduleparameter{simpleslides}{file}}" }}
-
-%D Clipping is essential to cope with left/right propagation of
-%D patterns. E.g. with rule 158 the total propagation at iteration
-%D n is itself n to the left and n to the right. Whereas rule 102 
-%D (a Sierpiński fractal generator) protrudes only to the left at
-%D a rate of n.
-%D Frames cannot be simply cut off at the borders with adjacient 
-%D cells treated as “dead” because it would distort the pattern.
-%D Therefore, frames are generated as complete sections which are 
-%D clipped to the desired size, as specified by the initial row.
-%D To determine whether to clip your pattern to the left, right, 
-%D or in both directions, check the propagation at
-%D \type{string.format("http://mathworld.wolfram.com/Rule%s.html", rule)}
-%D or consult Wolfram's “A New Kind of Science” but beware not to
-%D buy everything he claims…
-%D
-%D Accepts values: \type{left}, \type{right} and \type{both}.
-
-\doifsomething{\moduleparameter{simpleslides}{clip}}{\ctxlua
-    {mplife.setup.current.clip = "\luaescapestring{\moduleparameter{simpleslides}{clip}}" }}
-
-\startluacode
-do
-    local c = mplife.setup.current
-    if c.mode == "life" then
-        c.init = gol.parse_file(c.file)
-        c.last = c.init
-    else
-        c.init      = eca.parse_file(c.file)
-        c.framesize = math.floor(c.aspect * c.init:len())
-        c.pages     = structures.counters.record("realpage")["last"]
-        if c.clip then
-            c.xneeded   =   c.pages * c.framesize
-            if c.clip == "both" then -- Assume initial pattern is centered.
-                c.diff      = c.xneeded - math.ceil(c.init:len()/2)
-            else
-                c.diff      = c.xneeded - c.init:len()
-            end
-            if c.diff > 0 then
-                local affix = ""
-                for i=1, c.diff, 1 do
-                    affix = affix .. "0"
-                end
-                if c.clip == "left"  or c.clip == "both" then
-                    c.init = affix .. c.init
-                end
-                if c.clip == "right" or c.clip == "both" then
-                    c.init = c.init .. affix
-                end
-            end
-        end
-    end
-    mplife.setup.current = c
-end
-\stopluacode
-
-%D Rules determine the transformation from one iteration to the next.
-%D {\em Life} rules take the form \type{B3/S23}, the separator being any of \type{/},
-%D \type{.} and \type{-}.
-%D Rules for elementary cellular automata are given in decimal: \type{1}--\type{255}.
-
-\doifsomething{\moduleparameter{simpleslides}{rule}}{\ctxlua
-   {if mplife.setup.current.mode == "life" then
-        mplife.setup.current.rule = gol.parse_rule("\luaescapestring{\moduleparameter{simpleslides}{rule}}") 
-    else
-        mplife.setup.current.rule = eca.gen_rule(tonumber("\luaescapestring{\moduleparameter{simpleslides}{rule}}")) 
-    end}}
-
-%D We also use \METAPOST\ to draw the horizontal and vertical page backgrounds.
-%D Backgrounds will be of solid color, the ornament gets the transparency.
-                       
-\startuniqueMPgraphic{simpleslides:MP:horizontal} 
-StartPage ;
-fill Page withcolor \MPcolor{simpleslides:backgroundoutside} ;
-fill Field[Text][Text] enlarged 0.2cm
-     withcolor \MPcolor{simpleslides:backgroundscreen} ;
-StopPage ;
-\stopuniqueMPgraphic 
-
-\startuniqueMPgraphic{simpleslides:MP:vertical}
-StartPage ;
-fill Page withcolor \MPcolor{simpleslides:backgroundoutside} ;
-
-z1 = urcorner Field[Text][Text] shifted (.2cm,0) ;
-z2 = lrcorner Field[Text][Text] shifted (.2cm,-.2cm) ;
-z3 = z1 shifted (-8.05cm,0) ;
-z4 = (x3,y2) ;
-
-save Main ;
-path Main ;
-Main := z1 -- z2 -- z4 -- z3 --cycle ;
-
-fill Main withcolor \MPcolor{simpleslides:backgroundscreen} ;
-StopPage ;
-\stopuniqueMPgraphic
-
-
-%D We define these backgrounds as overlays:
-
-\defineoverlay 
-  [simpleslides:background:horizontal] 
-  [\useMPgraphic{simpleslides:MP:horizontal}] 
-
-\defineoverlay 
-  [simpleslides:background:vertical] 
-  [\useMPgraphic{simpleslides:MP:vertical}] 
-
-\defineoverlay 
-  [simpleslides:background:title] 
-  [\useMPgraphic{simpleslides:MP:horizontal}] 
-
-\defineoverlay 
-  [simpleslides:background:ornament] 
-  [\ctxlua{mplife.successive()}] 
-
-%D The slide title is placed on the top of the text area. The layer takes care
-%D of the positioning.
-
-\setupSlideTitle
-   [\c!after=,
-    \c!alternative=layer,
-    \c!width=\textwidth,
-    \c!height=2.5cm,
-    \c!command=\doSlideTitle]
-
-
-%D Squares are used as the first level of itemizations 
-
-\definesymbol[1][$\square$]
-\setupitemize[1][inmargin]
-%\setupitemize[each][joinedup,unpacked]
-
-\protect
-\stopmodule
-
-\endinput
-
-- 
cgit v1.2.3