texlive[56994] Master/texmf-dist: schemata (24nov20)

commits+karl at tug.org commits+karl at tug.org
Tue Nov 24 23:11:37 CET 2020


Revision: 56994
          http://tug.org/svn/texlive?view=revision&revision=56994
Author:   karl
Date:     2020-11-24 23:11:37 +0100 (Tue, 24 Nov 2020)
Log Message:
-----------
schemata (24nov20)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/generic/schemata/schemata.pdf
    trunk/Master/texmf-dist/doc/generic/schemata/schematest.tex
    trunk/Master/texmf-dist/source/generic/schemata/Makefile
    trunk/Master/texmf-dist/source/generic/schemata/schemata.dtx
    trunk/Master/texmf-dist/tex/generic/schemata/schemata.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/generic/schemata/README.md

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/generic/schemata/README
    trunk/Master/texmf-dist/doc/generic/schemata/README.txt
    trunk/Master/texmf-dist/source/generic/schemata/schemata.ins

Deleted: trunk/Master/texmf-dist/doc/generic/schemata/README
===================================================================
--- trunk/Master/texmf-dist/doc/generic/schemata/README	2020-11-24 18:35:36 UTC (rev 56993)
+++ trunk/Master/texmf-dist/doc/generic/schemata/README	2020-11-24 22:11:37 UTC (rev 56994)
@@ -1,117 +0,0 @@
-
---------:| ----------------------------------------------------------------
-schemata:| Generic package to aid construction of topical categories
-  Author:| Charles P. Schaum
-  E-mail:| charles dot schaum at comcast.net
- License:| Released under the LaTeX Project Public License v1.3c or later
-     See:| http://www.latex-project.org/lppl.txt
-
-Short description:
-The schemata package helps the creation of topical outlines that illustrate the breakdown of concepts and categories in academic texts from the late medieval to early modern periods.
-
-Files     Distribution
-
-README        This file
-schemata.pdf  Documentation
-schematest.tex  Test file for Plain TeX or Eplain
-schemata.png  Image file used for the manual
-
-Makefile      Automates building with GNU make 3.81
-schemata.dtx  Documented LaTeX file containing both code and documentation
-
-Installation
-
-Download the package from
-
-https://www.ctan.org/tex-archive/macros/generic/schemata
-
-Unpack schemata.zip in an appropriate directory.
-
-If you have a make utility compatible with GNU make, either in
-GNU/Linux, a BSD variant, OSX, or Cygwin in Windows you can type
-
-make inst
-
-to install the package into your $TEXMFHOME tree or
-
-make install
-
-to install the package into your $TEXMFLOCAL tree for all users.
-The latter requires sudo privileges.
-
-Other useful targets include:
-
-(release process)
-
-make release The default target, same as just ``make''.
-
-make clean Removes all intermediate files. Left are
-the files listed above plus schemata.sty.
-
-make distclean Leave only schemata.dtx, schematest.tex,
-schemata.png, and Makefile.
-
-make zip Generate a zip file ready for distribution.
-
-(testing process)
-
-make testing Release files, plus compiles schematest.tex.
-
-It is not necessary, however, to use GNU make. One can generate
-the package files manually. Since the files schemata.ins and README.txt
-are contained in the .dtx file itself, the first step is to generate
-the installer driver schemata.ins, plus the file README.txt, which will
-also trigger the extraction of schemata.sty and produce the first pass of
-the package documentation schemata.pdf:
-
-pdflatex -shell-escape -recorder -interaction=batchmode schemata.dtx
-
-Next one adds a table of contents and all cross-references, this also
-should finalize page numbers for glossary and index input files:
-
-pdflatex --recorder --interaction=nonstopmode schemata.dtx
-
-The next commands generate the glossary/index output files:
-
-makeindex -q -s gglo.ist -o schemata.gls schemata.glo
-makeindex -q -s gind.ist -o schemata.ind schemata.idx
-
-The final two commands integrate the glossary (changes) and index:
-
-pdflatex --recorder --interaction=nonstopmode schemata.dtx
-pdflatex --recorder --interaction=nonstopmode schemata.dtx
-
-Now one can either keep README.txt or rename it to README, e.g.:
-
-mv README.txt README
-
-Normally one creates the following directories for a user:
-
-$TEXMFHOME/source/generic/schemata dtx file, schemata.png
-$TEXMFHOME/doc/generic/schemata pdf file, README, schematest.tex,
-
-and creates the following directories for the local site:
-
-$TEXMFLOCAL/source/generic/schemata dtx file, schemata.png
-$TEXMFLOCAL/doc/generic/schemata pdf file, README, schematest.tex,
-
-The above environment variables often are /usr/local/texlive/texmf-local for
-$TEXMFLOCAL and ~/texmf for $TEXMFHOME.
-
-The make process normally renames the README.txt file created from the
-dtx file to just README by using mv (move / rename utility in the *nix
-userland). Windows distributions of TeX and LaTeX often keep the txt file
-because of using file extensions instead of ``magic numbers'' to identify
-files.
-
-Run mktexlsr with the appropriate level of permissions to complete the
-install.
-
-This packages works with LaTeX and Plain TeX.
-
-License
-
-This material is subject to the LaTeX Project Public License:
-http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html
-
-Happy TeXing!

Added: trunk/Master/texmf-dist/doc/generic/schemata/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/generic/schemata/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/schemata/README.md	2020-11-24 22:11:37 UTC (rev 56994)
@@ -0,0 +1,164 @@
+# Short Description
+
+Short description:
+The schemata package helps the creation of topical outlines that illustrate the breakdown of concepts and categories in academic texts from the late medieval to early modern periods.
+
+# Files
+
+|Filename        |Description                            |
+|----------------|---------------------------------------|
+|`schemata.dtx`  |commented style file; source file      |
+|`Makefile`      |For use with GNU make; with source file|
+|`schemata.ins`  |installation driver (generated file)   |
+|`schemata.pdf`  |Documentation (generated file)         |
+|`README.md`     |This file (generated file)             |
+|`schematest.tex`|Test file for Plain TeX or Eplain      |
+|`schemata.png`  |Image file used for the manual         |
+
+# Obtaining the Package
+
+1. Packaged in your current TeX distrbution: See the appropriate documentation.
+
+2. Otherwise, download `schemata.zip` from [CTAN](www.ctan.org/tex-archive/macros/generic/schemata).
+
+3. Unpack `schemata.zip` in an appropriate directory.
+
+4. Change to the  directory containing the `schemata` files.
+
+# File Generation
+
+## Automatic Installation
+
+This method requires GNU `make` on a POSIX-compliant environment, such as GNU/Linux, various BSD flavors, perhaps MacOS (e.g., with various porting systems), and even Cygwin on Windows.
+
+0. A quick install in one's home directory using some of the included files from the `zip` archive just requires the following steps:
+
+        tex schemata.dtx
+        make inst
+
+Otherwise we use the LaTeX installation on the host machine to build the package. When using `make`, any `dvi` files that are created will also be converted to `pdf` format.
+
+1. Type `make distclean release` to generate the release files using `pdflatex`.
+
+3. To use another TeX engine, type one of the following:
+        make ENGINE=latex
+        make ENGINE=lualatex
+        make ENGINE=dvilualatex
+        make ENGINE=xelatex
+
+4. Type `make inst` to install the files in the user's personal TDS-compliant directory tree.
+
+5. Type `sudo make install` to install the files in the system-wide, local TDS-compliant directory tree.
+
+## Manual Compilation
+
+Otherwise, the following steps are used for manual installation. See the general information at the [TeX FAQ](https://www.texfaq.org/FAQ-installthings).
+
+0. To use some of the included files from the `zip` archive and only extract files from the `dtx` file, just do the following step and proceed to installation:
+
+        tex schemata.dtx
+
+1. To build the package on the host system, generate the installation files and a copy of the documentation without the table of contents and cross-references. We use `pdflatex` by default:
+
+        pdflatex --shell-escape --recorder --interaction=batchmode schemata.dtx
+
+2. Generate the TOC and cross-references for the documentation:
+
+        pdflatex --recorder --interaction=nonstopmode schemata.dtx
+
+3. Generate the index files using `makeindex`:
+
+        makeindex -q -s gglo.ist -o schemata.gls schemata.glo
+        makeindex -q -s gind.ist -o schemata.ind schemata.idx
+
+4. Integrate the glossary (changes) and index into the documentation. The second run updates the TOC:
+
+        pdflatex --recorder --interaction=nonstopmode schemata.dtx
+        pdflatex --recorder --interaction=nonstopmode schemata.dtx
+
+One can substitute, e.g., `latex`, `xelatex`, `lualatex`, and `dvilualatex` for `pdflatex`, but the documentation may look different in some cases.
+
+## File Installation
+
+Different TeX distributions have somewhat different ways to store TDS-compliant configuration and package data. See, for example, [MikTeX](https://miktex.org/kb/texmf-roots) and the [TeX FAQ](https://www.texfaq.org/FAQ-privinst). Two approaches below conform generally to a Unix-based system:
+
+## User's Home Directory
+
+`TEXMFHOME` is a variable that points to the root of a TDS-compliant directory tree available to a user. Use `kpsewhich --var-value TEXMFHOME` to obtain its value. Quite often it is equivalent to `$HOME/texmf`. The dollar sign in front of the variable denotes the value of the variable instead of its name. So if `$HOME` is `/home/bob`, then `$TEXMFHOME` would be `/home/bob/texmf`, and we can understand the following paths to be under that directory:
+
+|Path                                |Description                                 |
+|------------------------------------|--------------------------------------------|
+|`$TEXMFHOME/source/generic/schemata`|`ins` and `dtx` files, Makefile, `png` file |
+|`$TEXMFHOME/tex/generic/schemata`   |`sty` file                                  |
+|`$TEXMFHOME/doc/generic/schemata`   |`pdf` file, `README.md`, `schematest.tex`   |
+
+On older TeX distributions, run `mktexlsr` on $TEXMFHOME to complete the install process.
+
+## System-Wide Directory
+
+`TEXMFLOCAL` is a variable that points to the root of a TDS-compliant directory tree available to all users on a local site, system-wide installation. Use `kpsewhich --var-value TEXMFLOCAL` to obtain its value. See the [TeX FAQ](https://www.texfaq.org/FAQ-what-TDS). We can understand the following paths to be under that directory:
+
+|Path                                 |Description                                 |
+|-------------------------------------|--------------------------------------------|
+|`$TEXMFLOCAL/source/generic/schemata`|`ins` and `dtx` files, Makefile, `png` file |
+|`$TEXMFLOCAL/tex/generic/schemata`   |`sty` file                                  |
+|`$TEXMFLOCAL/doc/generic/schemata`   |`pdf` file, `README.md`, `schematest.tex`   |
+
+Run `mktexlsr` with the appropriate permissions on `$TEXMFLOCAL` to complete the install process.
+
+# Testing
+
+## Compiling `schematest.tex`
+
+1. Either go to the directory used when unpacking the `zip` file or copy the file `schematest.tex` from the `doc/generic/schemata` branch of whatever TDS-compliant tree to a directory of your choice.
+
+2. If one has access to GNU `make`, use either `Makefile` in the directory where one unpacked the `zip` file or copy `Makefile` from either `src/generic/schemata` or `doc/generic/schemata` in whatever TDS-compliant tree it exists.
+
+When using `make`, any `dvi` files that are created will also be converted to `pdf` format.
+
+3. To compile the test file using `make` and `pdftex`, simply type `make testing`.
+
+4. For multi-format testing using `make` in addition to that above, one can do the following:
+
+        make testing TESTENGINE=tex
+        make testing TESTENGINE=eplain
+        make testing TESTENGINE=lollipop
+        make testing TESTENGINE=luatex
+        make testing TESTENGINE=dviluatex
+        make testing TESTENGINE=xetex
+        make testing TESTENGINE=pdflatex
+        make testing TESTENGINE=latex
+        make testing TESTENGINE=lualatex
+        make testing TESTENGINE=dvilualatex
+        make testing TESTENGINE=xelatex
+
+5. If one does not have `make`, one can use any one of the following commands:
+
+        pdftex --interaction=nonstopmode schematest
+        tex --interaction=nonstopmode schematest
+        eplain --interaction=nonstopmode schematest
+        lollipop --interaction=nonstopmode schematest
+        luatex --interaction=nonstopmode schematest
+        dviluatex --interaction=nonstopmode schematest
+        xetex --interaction=nonstopmode schematest
+        pdflatex --interaction=nonstopmode schematest
+        lualatex --interaction=nonstopmode schematest
+        dvilualatex --interaction=nonstopmode schematest
+        xelatex --interaction=nonstopmode schematest
+
+The manual is also a test suite.
+
+# Copyright
+
+Copyright (C) 2020 by Charles P. Schaum <charles[dot]schaum at comcast.net>
+-------------------------------------------------------
+
+This file may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either version 1.3
+of this license or (at your option) any later version.
+The latest version of this license is in:
+
+   [http://www.latex-project.org/lppl.txt](http://www.latex-project.org/lppl.txt)
+
+and version 1.3 or later is part of all distributions of LaTeX
+version 2005/12/01 or later.


Property changes on: trunk/Master/texmf-dist/doc/generic/schemata/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/doc/generic/schemata/README.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/schemata/README.txt	2020-11-24 18:35:36 UTC (rev 56993)
+++ trunk/Master/texmf-dist/doc/generic/schemata/README.txt	2020-11-24 22:11:37 UTC (rev 56994)
@@ -1,117 +0,0 @@
-
---------:| ----------------------------------------------------------------
-schemata:| Generic package to aid construction of topical categories
-  Author:| Charles P. Schaum
-  E-mail:| charles dot schaum at comcast.net
- License:| Released under the LaTeX Project Public License v1.3c or later
-     See:| http://www.latex-project.org/lppl.txt
-
-Short description:
-The schemata package helps the creation of topical outlines that illustrate the breakdown of concepts and categories in academic texts from the late medieval to early modern periods.
-
-Files     Distribution
-
-README        This file
-schemata.pdf  Documentation
-schematest.tex  Test file for Plain TeX or Eplain
-schemata.png  Image file used for the manual
-
-Makefile      Automates building with GNU make 3.81
-schemata.dtx  Documented LaTeX file containing both code and documentation
-
-Installation
-
-Download the package from
-
-https://www.ctan.org/tex-archive/macros/generic/schemata
-
-Unpack schemata.zip in an appropriate directory.
-
-If you have a make utility compatible with GNU make, either in
-GNU/Linux, a BSD variant, OSX, or Cygwin in Windows you can type
-
-make inst
-
-to install the package into your $TEXMFHOME tree or
-
-make install
-
-to install the package into your $TEXMFLOCAL tree for all users.
-The latter requires sudo privileges.
-
-Other useful targets include:
-
-(release process)
-
-make release The default target, same as just ``make''.
-
-make clean Removes all intermediate files. Left are
-the files listed above plus schemata.sty.
-
-make distclean Leave only schemata.dtx, schematest.tex,
-schemata.png, and Makefile.
-
-make zip Generate a zip file ready for distribution.
-
-(testing process)
-
-make testing Release files, plus compiles schematest.tex.
-
-It is not necessary, however, to use GNU make. One can generate
-the package files manually. Since the files schemata.ins and README.txt
-are contained in the .dtx file itself, the first step is to generate
-the installer driver schemata.ins, plus the file README.txt, which will
-also trigger the extraction of schemata.sty and produce the first pass of
-the package documentation schemata.pdf:
-
-pdflatex -shell-escape -recorder -interaction=batchmode schemata.dtx
-
-Next one adds a table of contents and all cross-references, this also
-should finalize page numbers for glossary and index input files:
-
-pdflatex --recorder --interaction=nonstopmode schemata.dtx
-
-The next commands generate the glossary/index output files:
-
-makeindex -q -s gglo.ist -o schemata.gls schemata.glo
-makeindex -q -s gind.ist -o schemata.ind schemata.idx
-
-The final two commands integrate the glossary (changes) and index:
-
-pdflatex --recorder --interaction=nonstopmode schemata.dtx
-pdflatex --recorder --interaction=nonstopmode schemata.dtx
-
-Now one can either keep README.txt or rename it to README, e.g.:
-
-mv README.txt README
-
-Normally one creates the following directories for a user:
-
-$TEXMFHOME/source/generic/schemata dtx file, schemata.png
-$TEXMFHOME/doc/generic/schemata pdf file, README, schematest.tex,
-
-and creates the following directories for the local site:
-
-$TEXMFLOCAL/source/generic/schemata dtx file, schemata.png
-$TEXMFLOCAL/doc/generic/schemata pdf file, README, schematest.tex,
-
-The above environment variables often are /usr/local/texlive/texmf-local for
-$TEXMFLOCAL and ~/texmf for $TEXMFHOME.
-
-The make process normally renames the README.txt file created from the
-dtx file to just README by using mv (move / rename utility in the *nix
-userland). Windows distributions of TeX and LaTeX often keep the txt file
-because of using file extensions instead of ``magic numbers'' to identify
-files.
-
-Run mktexlsr with the appropriate level of permissions to complete the
-install.
-
-This packages works with LaTeX and Plain TeX.
-
-License
-
-This material is subject to the LaTeX Project Public License:
-http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html
-
-Happy TeXing!

Modified: trunk/Master/texmf-dist/doc/generic/schemata/schemata.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/schemata/schematest.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/schemata/schematest.tex	2020-11-24 18:35:36 UTC (rev 56993)
+++ trunk/Master/texmf-dist/doc/generic/schemata/schematest.tex	2020-11-24 22:11:37 UTC (rev 56994)
@@ -1,40 +1,34 @@
-%--------:| ----------------------------------------------------------------
-%schemata:| Generic package to aid construction of topical categories
-%  Author:| Charles P. Schaum
-%  E-mail:| charles dot schaum at comcast.net
-% License:| Released under the LaTeX Project Public License 1.3c or later
-%     See:| http://www.latex-project.org/lppl.txt
-%
-% This is an example file used with the schemata package.
-% See README and schemata.pdf for copyright info.
-%---------------------------------------------------------------------------
+%%
+%% This is file `schematest.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% schemata.dtx  (with options: `examples')
+%% 
+%% This is a generated file.
+%% 
+%% Copyright (C) 2020 by Charles P. Schaum <charles[dot]schaum at comcast.net>
+%% 
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.3 of this license
+%% or (at your option) any later version.  The latest version of this
+%% license is in:
+%% 
+%%    http://www.latex-project.org/lppl.txt
+%% 
+%% and version 1.3 or later is part of all distributions of LaTeX version
+%% 2005/12/01 or later.
+%% 
 \def\nameofplain{plain}
 \def\nameofeplain{eplain}
 \def\nameoflatex{LaTeX2e}
 \def\nameoflollipop{Lollipop}
 %
-% To use Plain TeX, do something like the following, substituting
-% tex, xetex, luatex, etc.:
-% 
-%      pdftex schematest
+% See README.md for compiling this document.
 %
-% To use Eplain, do something like the following:
-% 
-%      touch test.tex
-%      pdftex test <<< "\\input eplain \\input schematest"
-%
-% To use lollipop, do something like the following:
-% 
-%      lollipop schematest
-%
-% To use LaTeX, do something like the following, substituting
-% latex, xelatex, lualatex, etc.:
-% 
-%      pdflatex schematest
-%
 \ifx\fmtname\nameoflatex
   \documentclass[10pt]{article}
-  %\usepackage[utf8]{inputenc} %Not needed for newer versions
   \usepackage[T1]{fontenc}
   \usepackage[polutonikogreek,american]{babel}
   \newcommand{\gk}[1]{\foreignlanguage{polutonikogreek}{#1}}
@@ -54,6 +48,9 @@
     \def\gk#1{\bgroup\it #1\egroup}
   \fi
 \fi
+
+Format: \fmtname\par
+
 $$
 \Schema{-1ex}{8.7ex}
 {
@@ -291,9 +288,9 @@
             \schemabox{Universalis} \smallskip \schemabox{Particularis}
           }
           \smallskip
-          \schemabox{Politi\ae{} ut Magistratuum}
+          \schemabox{Politi\ae, ut Magistratuum}
           \smallskip
-          \schemabox{\OE{}conomi\ae{} ut privatorum}
+          \schemabox{\OE{}conomi\ae, ut privatorum}
         }
       }\vskip2ex
     }
@@ -410,9 +407,9 @@
             \schemabox{Universalis} \smallskip \schemabox{Particularis}
           }
           \smallskip
-          \schemabox{Politi\ae{} ut Magistratuum}
+          \schemabox{Politi\ae, ut Magistratuum}
           \smallskip
-          \schemabox{\OE{}conomi\ae{} ut privatorum}
+          \schemabox{\OE{}conomi\ae, ut privatorum}
         }
       }\vskip2ex
     }

Modified: trunk/Master/texmf-dist/source/generic/schemata/Makefile
===================================================================
--- trunk/Master/texmf-dist/source/generic/schemata/Makefile	2020-11-24 18:35:36 UTC (rev 56993)
+++ trunk/Master/texmf-dist/source/generic/schemata/Makefile	2020-11-24 22:11:37 UTC (rev 56994)
@@ -1,14 +1,49 @@
+#Copyright (C) 2020 by Charles P. Schaum <charles[dot]schaum at comcast.net>
+#-------------------------------------------------------
+#
+#This file may be distributed and/or modified under the
+#conditions of the LaTeX Project Public License, either version 1.3
+#of this license or (at your option) any later version.
+#The latest version of this license is in:
+#
+#   http://www.latex-project.org/lppl.txt
+#
+#and version 1.3 or later is part of all distributions of LaTeX 
+#version 2005/12/01 or later.
+#
+# Name of package
 NAME  = schemata
-ENGINE = pdflatex
+# LaTeX engine to use for package; below is the default.
+# One can choose from latex, pdflatex, xelatex, lualatex, dvilualatex.
+ENGINE ?= pdflatex
+# Engine to use for test; below is the default.
+TESTENGINE ?= pdftex
+# Shell to use; default is bash
 SHELL = bash
+# Value of current working directory
 PWD   = $(shell pwd)
+# Package version info
 VERS  = $(shell ltxfileinfo -v $(NAME).dtx|sed -e 's/^v//')
+# Local, system-wide tex tree
 LOCAL = $(shell kpsewhich --var-value TEXMFLOCAL)
+# Tex tree in user's home directory
 UTREE = $(shell kpsewhich --var-value TEXMFHOME)
+#
+# Default make target is release and its dependencies
 release:    $(NAME).pdf
+#
+# The testing target also compiles the examples file.
 testing:    $(NAME).pdf schematest.pdf
+
+#
+# This is the recipe for schematest.pdf. It will work also for dvi output.
 schematest.pdf    : schematest.tex
-	pdftex schematest >/dev/null
+	$(TESTENGINE) --interaction=nonstopmode schematest > /dev/null
+	if [ -f schematest.dvi ]; then dvipdf schematest; fi
+	if [ -f schematest.out.ps ]; then rm schematest.out.ps; fi
+
+#
+# This is the recipe for the package docs. It will work also for dvi output.
 $(NAME).pdf : $(NAME).dtx
 	$(ENGINE) -shell-escape -recorder -interaction=batchmode $(NAME).dtx >/dev/null
 	$(ENGINE) --recorder --interaction=nonstopmode $(NAME).dtx > /dev/null
@@ -16,13 +51,24 @@
 	if [ -f $(NAME).idx ]; then makeindex -q -s gind.ist -o $(NAME).ind $(NAME).idx; fi
 	$(ENGINE) --recorder --interaction=nonstopmode $(NAME).dtx > /dev/null
 	$(ENGINE) --recorder --interaction=nonstopmode $(NAME).dtx > /dev/null
-	test -e README.txt && mv README.txt README || exit 0
+	if [ -f $(NAME).dvi ]; then dvipdf $(NAME); fi
+#
+# Using this recipe deletes the auxiliary and log files
 clean:
-	rm -f $(NAME).{aux,fls,glo,gls,hd,idx,ilg,ind,ins,log,out,toc} README.txt
+	rm -f $(NAME).{aux,fls,glo,gls,hd,idx,ilg,ind,ins,log,out,toc}
 	rm -f schematest.{aux,fls,glo,gls,hd,idx,ilg,ind,ins,log,out,toc}
+#
+# Using this recipe cleans also all generated files
 distclean: clean
-	rm -f $(NAME).{dvi,pdf,sty,synctex.gz} README
-	rm -f schematest.{dvi,pdf,sty,synctex.gz}
+	rm -f $(NAME).{dvi,pdf,sty,synctex.gz,"synctex(busy)"} README.md
+	rm -f schematest.{dvi,pdf,synctex.gz,"synctex(busy)",tex}
+#
+# Using this recipe deletes files for testong
+testclean:
+	rm -f schematest.{aux,fls,glo,gls,hd,idx,ilg,ind,ins,log,out,toc}
+	rm -f schematest.{dvi,pdf,synctex.gz,"synctex(busy)"}
+#
+# This recipe installs the package release into the user's tree
 inst: release
 	mkdir -p $(UTREE)/{tex,source,doc}/generic/$(NAME)
 	cp $(NAME).dtx $(UTREE)/source/generic/$(NAME)
@@ -31,9 +77,11 @@
 	cp $(NAME).sty $(UTREE)/tex/generic/$(NAME)
 	cp $(NAME).pdf $(UTREE)/doc/generic/$(NAME)
 	cp schematest.tex $(UTREE)/doc/generic/$(NAME)
-	cp README $(UTREE)/doc/generic/$(NAME)
+	cp README.md $(UTREE)/doc/generic/$(NAME)
+#
+# This recipe installs the package release into the system tree
 install: release
-	sudo mkdir -p $(LOCAL)/{tex,source,doc}/latex/$(NAME)
+	sudo mkdir -p $(LOCAL)/{tex,source,doc}/generic/$(NAME)
 	sudo cp $(NAME).dtx $(LOCAL)/source/generic/$(NAME)
 	sudo cp $(NAME).png $(LOCAL)/source/generic/$(NAME)
 	sudo cp Makefile $(LOCAL)/source/generic/$(NAME)
@@ -40,10 +88,11 @@
 	sudo cp $(NAME).sty $(LOCAL)/tex/generic/$(NAME)
 	sudo cp $(NAME).pdf $(LOCAL)/doc/generic/$(NAME)
 	sudo cp schematest.tex $(LOCAL)/doc/generic/$(NAME)
-	sudo cp README $(LOCAL)/doc/generic/$(NAME)
+	sudo cp README.md $(LOCAL)/doc/generic/$(NAME)
+#
+# This recipe creates a zip file for upload to CTAN
 zip: release
 	ln -sf . $(NAME)
-	zip -Drq $(PWD)/$(NAME)-$(VERS).zip\
-      $(NAME)/{README,schematest.tex,Makefile,$(NAME).{pdf,dtx,png}}
+	zip -Drq $(PWD)/$(NAME)-$(VERS).zip \
+$(NAME)/{README.md,schematest.tex,Makefile,$(NAME).{pdf,dtx,png}}
 	rm $(NAME)
-

Modified: trunk/Master/texmf-dist/source/generic/schemata/schemata.dtx
===================================================================
--- trunk/Master/texmf-dist/source/generic/schemata/schemata.dtx	2020-11-24 18:35:36 UTC (rev 56993)
+++ trunk/Master/texmf-dist/source/generic/schemata/schemata.dtx	2020-11-24 22:11:37 UTC (rev 56994)
@@ -1,128 +1,188 @@
 % \iffalse meta-comment
-% vim: textwidth=75
+%
+% Copyright (C) 2020 by Charles P. Schaum <charles[dot]schaum at comcast.net>
+% -------------------------------------------------------
+%
+% This file may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in:
+%
+%    http://www.latex-project.org/lppl.txt
+%
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
 %<*internal>
 \iffalse
 %</internal>
 %<*readme>
+%<<readmevb
+# Short Description
 
---------:| ----------------------------------------------------------------
-schemata:| Generic package to aid construction of topical categories
-  Author:| Charles P. Schaum
-  E-mail:| charles dot schaum at comcast.net
- License:| Released under the LaTeX Project Public License v1.3c or later
-     See:| http://www.latex-project.org/lppl.txt
-
 Short description:
 The schemata package helps the creation of topical outlines that illustrate the breakdown of concepts and categories in academic texts from the late medieval to early modern periods.
 
-Files		    Distribution
+# Files
 
-README        This file
-schemata.pdf  Documentation
-schematest.tex  Test file for Plain TeX or Eplain
-schemata.png  Image file used for the manual
+|Filename        |Description                            |
+|----------------|---------------------------------------|
+|`schemata.dtx`  |commented style file; source file      |
+|`Makefile`      |For use with GNU make; with source file|
+|`schemata.ins`  |installation driver (generated file)   |
+|`schemata.pdf`  |Documentation (generated file)         |
+|`README.md`     |This file (generated file)             |
+|`schematest.tex`|Test file for Plain TeX or Eplain      |
+|`schemata.png`  |Image file used for the manual         |
 
-Makefile      Automates building with GNU make 3.81
-schemata.dtx  Documented LaTeX file containing both code and documentation
+# Obtaining the Package
 
-Installation
+1. Packaged in your current TeX distrbution: See the appropriate documentation.
 
-Download the package from
+2. Otherwise, download `schemata.zip` from [CTAN](www.ctan.org/tex-archive/macros/generic/schemata).
 
-https://www.ctan.org/tex-archive/macros/generic/schemata
+3. Unpack `schemata.zip` in an appropriate directory.
 
-Unpack schemata.zip in an appropriate directory.
+4. Change to the  directory containing the `schemata` files.
 
-If you have a make utility compatible with GNU make, either in
-GNU/Linux, a BSD variant, OSX, or Cygwin in Windows you can type
+# File Generation
 
-	make inst
+## Automatic Installation
 
-to install the package into your $TEXMFHOME tree or
+This method requires GNU `make` on a POSIX-compliant environment, such as GNU/Linux, various BSD flavors, perhaps MacOS (e.g., with various porting systems), and even Cygwin on Windows.
 
-	make install
+0. A quick install in one's home directory using some of the included files from the `zip` archive just requires the following steps:
 
-to install the package into your $TEXMFLOCAL tree for all users.
-The latter requires sudo privileges.
+        tex schemata.dtx
+        make inst
 
-Other useful targets include:
+Otherwise we use the LaTeX installation on the host machine to build the package. When using `make`, any `dvi` files that are created will also be converted to `pdf` format.
 
-	(release process)
+1. Type `make distclean release` to generate the release files using `pdflatex`.
 
-	make release			The default target, same as just ``make''.
+3. To use another TeX engine, type one of the following:
+        make ENGINE=latex
+        make ENGINE=lualatex
+        make ENGINE=dvilualatex
+        make ENGINE=xelatex
 
-	make clean				Removes all intermediate files. Left are
-							the files listed above plus schemata.sty.
+4. Type `make inst` to install the files in the user's personal TDS-compliant directory tree.
 
-	make distclean			Leave only schemata.dtx, schematest.tex,
-							schemata.png, and Makefile.
+5. Type `sudo make install` to install the files in the system-wide, local TDS-compliant directory tree.
 
-	make zip				Generate a zip file ready for distribution.
+## Manual Compilation
 
-	(testing process)
+Otherwise, the following steps are used for manual installation. See the general information at the [TeX FAQ](https://www.texfaq.org/FAQ-installthings).
 
-	make testing			Release files, plus compiles schematest.tex.
+0. To use some of the included files from the `zip` archive and only extract files from the `dtx` file, just do the following step and proceed to installation:
 
-It is not necessary, however, to use GNU make. One can generate
-the package files manually. Since the files schemata.ins and README.txt
-are contained in the .dtx file itself, the first step is to generate
-the installer driver schemata.ins, plus the file README.txt, which will
-also trigger the extraction of schemata.sty and produce the first pass of
-the package documentation schemata.pdf:
+        tex schemata.dtx
 
-	pdflatex -shell-escape -recorder -interaction=batchmode schemata.dtx
+1. To build the package on the host system, generate the installation files and a copy of the documentation without the table of contents and cross-references. We use `pdflatex` by default:
 
-Next one adds a table of contents and all cross-references, this also
-should finalize page numbers for glossary and index input files:
+        pdflatex --shell-escape --recorder --interaction=batchmode schemata.dtx
 
-	pdflatex --recorder --interaction=nonstopmode schemata.dtx
-	
-The next commands generate the glossary/index output files:
-	
-	makeindex -q -s gglo.ist -o schemata.gls schemata.glo
-	makeindex -q -s gind.ist -o schemata.ind schemata.idx
-	
-The final two commands integrate the glossary (changes) and index:
-	
-	pdflatex --recorder --interaction=nonstopmode schemata.dtx
-	pdflatex --recorder --interaction=nonstopmode schemata.dtx
+2. Generate the TOC and cross-references for the documentation:
 
-Now one can either keep README.txt or rename it to README, e.g.:
+        pdflatex --recorder --interaction=nonstopmode schemata.dtx
 
-	mv README.txt README
+3. Generate the index files using `makeindex`:
 
-Normally one creates the following directories for a user:
+        makeindex -q -s gglo.ist -o schemata.gls schemata.glo
+        makeindex -q -s gind.ist -o schemata.ind schemata.idx
 
-	$TEXMFHOME/source/generic/schemata		dtx file, schemata.png
-	$TEXMFHOME/doc/generic/schemata			pdf file, README, schematest.tex,
-	                                       
-		
-and creates the following directories for the local site:
+4. Integrate the glossary (changes) and index into the documentation. The second run updates the TOC:
 
-	$TEXMFLOCAL/source/generic/schemata		dtx file, schemata.png
-	$TEXMFLOCAL/doc/generic/schemata		pdf file, README, schematest.tex,
-	                                       
+        pdflatex --recorder --interaction=nonstopmode schemata.dtx
+        pdflatex --recorder --interaction=nonstopmode schemata.dtx
 
-The above environment variables often are /usr/local/texlive/texmf-local for
-$TEXMFLOCAL and ~/texmf for $TEXMFHOME.
+One can substitute, e.g., `latex`, `xelatex`, `lualatex`, and `dvilualatex` for `pdflatex`, but the documentation may look different in some cases.
 
-The make process normally renames the README.txt file created from the
-dtx file to just README by using mv (move / rename utility in the *nix
-userland). Windows distributions of TeX and LaTeX often keep the txt file
-because of using file extensions instead of ``magic numbers'' to identify
-files.
+## File Installation
 
-Run mktexlsr with the appropriate level of permissions to complete the
-install.
+Different TeX distributions have somewhat different ways to store TDS-compliant configuration and package data. See, for example, [MikTeX](https://miktex.org/kb/texmf-roots) and the [TeX FAQ](https://www.texfaq.org/FAQ-privinst). Two approaches below conform generally to a Unix-based system:
 
-This packages works with LaTeX and Plain TeX.
+## User's Home Directory
 
-License
+`TEXMFHOME` is a variable that points to the root of a TDS-compliant directory tree available to a user. Use `kpsewhich --var-value TEXMFHOME` to obtain its value. Quite often it is equivalent to `$HOME/texmf`. The dollar sign in front of the variable denotes the value of the variable instead of its name. So if `$HOME` is `/home/bob`, then `$TEXMFHOME` would be `/home/bob/texmf`, and we can understand the following paths to be under that directory:
 
-This material is subject to the LaTeX Project Public License:
-http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html
+|Path                                |Description                                 |
+|------------------------------------|--------------------------------------------|
+|`$TEXMFHOME/source/generic/schemata`|`ins` and `dtx` files, Makefile, `png` file |
+|`$TEXMFHOME/tex/generic/schemata`   |`sty` file                                  |
+|`$TEXMFHOME/doc/generic/schemata`   |`pdf` file, `README.md`, `schematest.tex`   |
 
-Happy TeXing!
+On older TeX distributions, run `mktexlsr` on $TEXMFHOME to complete the install process.
+
+## System-Wide Directory
+
+`TEXMFLOCAL` is a variable that points to the root of a TDS-compliant directory tree available to all users on a local site, system-wide installation. Use `kpsewhich --var-value TEXMFLOCAL` to obtain its value. See the [TeX FAQ](https://www.texfaq.org/FAQ-what-TDS). We can understand the following paths to be under that directory:
+
+|Path                                 |Description                                 |
+|-------------------------------------|--------------------------------------------|
+|`$TEXMFLOCAL/source/generic/schemata`|`ins` and `dtx` files, Makefile, `png` file |
+|`$TEXMFLOCAL/tex/generic/schemata`   |`sty` file                                  |
+|`$TEXMFLOCAL/doc/generic/schemata`   |`pdf` file, `README.md`, `schematest.tex`   |
+
+Run `mktexlsr` with the appropriate permissions on `$TEXMFLOCAL` to complete the install process.
+
+# Testing
+
+## Compiling `schematest.tex`
+
+1. Either go to the directory used when unpacking the `zip` file or copy the file `schematest.tex` from the `doc/generic/schemata` branch of whatever TDS-compliant tree to a directory of your choice.
+
+2. If one has access to GNU `make`, use either `Makefile` in the directory where one unpacked the `zip` file or copy `Makefile` from either `src/generic/schemata` or `doc/generic/schemata` in whatever TDS-compliant tree it exists.
+
+When using `make`, any `dvi` files that are created will also be converted to `pdf` format.
+
+3. To compile the test file using `make` and `pdftex`, simply type `make testing`.
+
+4. For multi-format testing using `make` in addition to that above, one can do the following:
+
+        make testing TESTENGINE=tex
+        make testing TESTENGINE=eplain
+        make testing TESTENGINE=lollipop
+        make testing TESTENGINE=luatex
+        make testing TESTENGINE=dviluatex
+        make testing TESTENGINE=xetex
+        make testing TESTENGINE=pdflatex
+        make testing TESTENGINE=latex
+        make testing TESTENGINE=lualatex
+        make testing TESTENGINE=dvilualatex
+        make testing TESTENGINE=xelatex
+
+5. If one does not have `make`, one can use any one of the following commands:
+
+        pdftex --interaction=nonstopmode schematest
+        tex --interaction=nonstopmode schematest
+        eplain --interaction=nonstopmode schematest
+        lollipop --interaction=nonstopmode schematest
+        luatex --interaction=nonstopmode schematest
+        dviluatex --interaction=nonstopmode schematest
+        xetex --interaction=nonstopmode schematest
+        pdflatex --interaction=nonstopmode schematest
+        lualatex --interaction=nonstopmode schematest
+        dvilualatex --interaction=nonstopmode schematest
+        xelatex --interaction=nonstopmode schematest
+
+The manual is also a test suite.
+
+# Copyright
+
+Copyright (C) 2020 by Charles P. Schaum <charles[dot]schaum at comcast.net>
+-------------------------------------------------------
+
+This file may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either version 1.3
+of this license or (at your option) any later version.
+The latest version of this license is in:
+
+   [http://www.latex-project.org/lppl.txt](http://www.latex-project.org/lppl.txt)
+
+and version 1.3 or later is part of all distributions of LaTeX
+version 2005/12/01 or later.
+%readmevb
 %</readme>
 %<*internal>
 \fi
@@ -135,40 +195,26 @@
 \input docstrip.tex
 \keepsilent
 \askforoverwritefalse
+
 \preamble
 
---------:| ----------------------------------------------------------------
-schemata:| Generic package to aid construction of topical categories
-  Author:| Charles P. Schaum
-  E-mail:| charles dot schaum at comcast.net
- License:| Released under the LaTeX Project Public License v1.3c or later
-     See:| http://www.latex-project.org/lppl.txt
+This is a generated file.
 
-\endpreamble
-\postamble
+Copyright (C) 2020 by Charles P. Schaum <charles[dot]schaum at comcast.net>
 
-Copyright (C) 2020 by Charles P. Schaum <charles dot schaum at comcast.net>
+This file may be distributed and/or modified under the conditions of
+the LaTeX Project Public License, either version 1.3 of this license
+or (at your option) any later version.  The latest version of this
+license is in:
 
-This work may be distributed and/or modified under the
-conditions of the LaTeX Project Public License (LPPL), either
-version 1.3c of this license or (at your option) any later
-version.  The latest version of this license is in the file:
+   http://www.latex-project.org/lppl.txt
 
-http://www.latex-project.org/lppl.txt
+and version 1.3 or later is part of all distributions of LaTeX version
+2005/12/01 or later.
 
-This work is "maintained" (as per LPPL maintenance status) by
-Charles P. Schaum.
+\endpreamble
 
-This work consists of the file schemata.dtx, schematest.tex,
-  schemata.png, and a Makefile.
-Running "make" generates the derived files README, schemata.pdf,
-  and schemata.sty.
-Running "make inst" installs the files in the user's TeX tree.
-Running "make install" installs the files in the local TeX tree.
-
-\endpostamble
-
-\usedir{tex/generic/schemata}
+\usedir{tex/latex/nameauth}
 \generate{
   \file{\jobname.sty}{\from{\jobname.dtx}{package}}
 }
@@ -179,11 +225,15 @@
 \generate{
   \file{\jobname.ins}{\from{\jobname.dtx}{install}}
 }
-\nopreamble\nopostamble
 \usedir{doc/generic/schemata}
+\nopostamble
 \generate{
-  \file{README.txt}{\from{\jobname.dtx}{readme}}
+  \file{schematest.tex}{\from{\jobname.dtx}{examples}}
 }
+\nopreamble
+\generate{
+  \file{README.md}{\from{\jobname.dtx}{readme}}
+}
 \ifx\fmtname\nameofplainTeX
   \expandafter\endbatchfile
 \else
@@ -199,12 +249,13 @@
 %<package>{\expandafter}\expandafter\ifx \csname schemataLaTeX\endcsname\relax
 %<package>  \def\schemataLaTeX{LaTeX2e}\fi
 %<package>\ifx\fmtname\schemataLaTeX
-%<package>\expandafter\NeedsTeXFormat\expandafter{\schemataLaTeX}
+%<package>\expandafter\NeedsTeXFormat\expandafter{\schemataLaTeX}[2005/12/01]
 %<package>\ProvidesPackage{schemata}
 %<*package>
-  [2020/03/14 v1.1 generic package to aid construction of topical categories]
+  [2020/11/23 1.2 generic package to aid construction of topical categories]
 %</package>
 %<package>\fi
+%
 %<*driver>
 \documentclass[11pt]{ltxdoc}
 \usepackage[T1]{fontenc}
@@ -219,7 +270,7 @@
 \usepackage{mflogo}
 \usepackage[toc]{multitoc}
 \usepackage{paracol}
-\usepackage{\jobname}
+\usepackage{\jobname}[2020/11/23]
 \usepackage{verbatim}
 \usepackage[numbered]{hypdoc}
 
@@ -281,19 +332,21 @@
 %   Right brace   \}     Tilde         \~}
 %
 %
-% \changes{v0.5}{2013/02/14}{Initial version}
-% \changes{v0.6}{2013/03/10}{Added features}
-% \changes{v0.7}{2013/09/23}{Changed contact info}
-% \changes{v0.8}{2016/01/25}{Rewrote manual; moved to dtxgen}
-% \changes{v1.1}{2020/03/14}{Fix issue with dtx guards}
+% \changes{0.5}{2013/02/14}{Initial version}
+% \changes{0.6}{2013/03/10}{Added features}
+% \changes{0.7}{2013/09/23}{Changed contact info}
+% \changes{0.8}{2016/01/25}{Rewrote manual}
+% \changes{1.0}{2020/03/13}{Ensure better multi-format operation}
+% \changes{1.1}{2020/03/14}{Fix issue with \texttt{dtx} guards}
+% \changes{1.2}{2020/11/11}{Updates to \texttt{Readme.md}, \texttt{Makefile}, \texttt{schematest.tex}, combine \texttt{Readme.md} and \texttt{schematest.tex} files in \texttt{dtx}}
 %
 % \GetFileInfo{\jobname.dtx}
-% \DoNotIndex{\bgroup, \csname, \DeclareOption, \def, \dimen, \egroup, \else, \endcsname, \endinput, \ExecuteOptions, \expandafter, \fi, \futurelet, \gdef, \hbox, \hfil, \if, \ifcsname, \ifdim, \ifmmode, \ifx, \ignorespaces, \index, \let, \newbox, \newcommand, \newdimen, \newif, \next, \PackageWarning, \ProcessOptions, \relax, \RequirePackage, \setbox, \space, \testchar, \vbox, \vcenter, \vfil, \vskip}
+% \DoNotIndex{\bgroup, \csname, \DeclareOption, \def, \dimen, \egroup, \else, \endcsname, \endinput, \ExecuteOptions, \expandafter, \fi, \futurelet, \gdef, \hbox, \hfil, \if, \ifcsname, \ifdim, \ifmmode, \ifx, \ignorespaces, \index, \let, \newbox, \newcommand, \newdimen, \newif, \next, \PackageWarning, \ProcessOptions, \relax, \RequirePackage, \setbox, \space, \vbox, \vcenter, \vfil, \vskip}
 %
 %\title{\textsf{schemata} --- Generic package to aid construction of topical categories\thanks{This file
 %   describes version \fileversion, last revised \filedate.}
 %}
-%\author{Charles P. Schaum\thanks{E-mail: charles dot schaum at comcast.net}}
+%\author{Charles P. Schaum\thanks{E-mail: charles[dot]schaum at comcast.net}}
 %\date{Released \filedate}
 %
 %\maketitle
@@ -323,23 +376,23 @@
 % {\Large\strut}For generic use: & \cmd{\input}\texttt{\textvisiblespace schemata.sty}
 % \end{tabular}}
 % \end{quote}\smallskip
-% 
+%
 % \DescribeMacro{\schemataLaTeX}
 % Normally, \textsf{schemata} uses generic \TeX{} macros if the format is not \LaTeXe. When using a \LaTeX-like format with a different name than \texttt{LaTeX2e}, one theoretically could insert the following before |\usepackage{schemata}|:
 % \begin{quote}
 % |\edef\schemataLaTeX{\fmtname}|
 % \end{quote}
-% 
+%
 % Yet\Warn{} this is usually unneeded. We want \cmd{\schemataLaTeX} to be undefined before \texttt{schemata.sty} is loaded to get the default value \texttt{LaTeX2e}. We recommend not using this macro unless you know what you are doing.\medskip
-% 
+%
 % \LaTeX\Info{options} users can choose one among four package options: \texttt{braces}, \texttt{brackets}, \texttt{parens}, and \texttt{groups}. These set the defaults for the delimiters. If no options are chosen, the default is \texttt{braces}.
-% 
+%
 % \subsection{Macro Overview}
 %
 % One can describe schemata as a grouping of boxes that contain content, whose relationships are demonstrated by delimiters. We start with the boxes and their content. Subsequently, we deal with the delimiters, then later, the manner of grouping and arrangement, as well as tweaks and tutorials.
-% 
+%
 % \subsubsection[\texttt{\textbackslash schemabox}]{Containers: \texttt{\textbackslash schemabox}}
-% 
+%
 % \DescribeMacro{\schemabox}
 % Schemata contain vertically-centered lists of material in inner vertical mode. When in a \cmd{\schema} or a \cmd{\Schema} (see below), a \cmd{\schemabox} stacks one or more lines of \cmd{\hbox}-enclosed text in a \cmd{\vbox.} It redefines the macro |\\| to close the current \cmd{\hbox} and begin a new one, with some options that can be modified (Section~\ref{sec:tweakschema}).
 % \begin{quote}
@@ -353,7 +406,7 @@
 % \newpage
 %
 % \subsubsection{Delimiters}
-% 
+%
 % \DescribeMacro{\DoBraces}
 % Both generic \TeX{} and \LaTeX{} users can use these four macros to set or change the type of delimiters.
 % \DescribeMacro{\DoBrackets}
@@ -363,19 +416,19 @@
 % \DescribeMacro{\DoGroups}
 % except they also change the delimiters when used before \cmd{\schema} and \cmd{\Schema}. They remain in force until the end of a scope:\label{page:SBNudge}
 % \begin{displaymath}
-% \DoBrackets\bgroup\renewcommand\SBNudgeFactor{\kern0.08em}
+% \DoBraces
+% \Schema{0ex}{2.3ex}{\schemabox{a}}{\Schema[close]{0ex}{2.4ex}{\schemabox{b\\c}}{\schemabox{d}}}
+% \qquad\DoBrackets\bgroup\renewcommand\SBNudgeFactor{\kern0.08em}
 % \Schema{0ex}{2.3ex}{\schemabox{a}}{\Schema[close]{0ex}{2.4ex}{\NudgeSB\schemabox{b\\c}}{\schemabox{d}}}\egroup
 % \qquad\DoParens
 % \Schema{0ex}{2.3ex}{\schemabox{a}}{\Schema[close]{0ex}{2.4ex}{\schemabox{b\\c}}{\schemabox{d}}}
 % \qquad\DoGroups
 % \Schema{0ex}{2.3ex}{\schemabox{a}}{\Schema[close]{0ex}{2.4ex}{\schemabox{b\\c}}{\schemabox{d}}}
-% \qquad\DoBraces
-% \Schema{0ex}{2.3ex}{\schemabox{a}}{\Schema[close]{0ex}{2.4ex}{\schemabox{b\\c}}{\schemabox{d}}}
 % \end{displaymath}
 %
 % Additionally, these macros can change the delimiter style within a schema. See Section~\ref{sec:multiple}, as well as the example below:\bigskip
-% 
-% \leavevmode\quad\begin{minipage}[c]{0.6\textwidth}\small
+%
+% \leavevmode\quad\begin{minipage}{0.6\textwidth}\small
 % \StartNum
 % \begin{verbatim}
 %\DoBrackets
@@ -386,7 +439,7 @@
 %    {\schemabox{d}}
 %}\end{verbatim}
 % \end{minipage}
-% \begin{minipage}[c]{0.25\textwidth}
+% \begin{minipage}{0.25\textwidth}
 % \begin{displaymath}
 % \DoBrackets\Schema{0ex}{2.4ex}
 %   {\schemabox{a}}
@@ -395,10 +448,10 @@
 %     {\schemabox{d}}}
 % \end{displaymath}\medskip
 % \end{minipage}\bigskip
-% 
+%
 % One can add new types by using eligible math-mode delimiters, e.g.:\bigskip
-% 
-% \leavevmode\quad\begin{minipage}[c]{0.6\textwidth}\small
+%
+% \leavevmode\quad\begin{minipage}{0.6\textwidth}\small
 % \StartNum
 % \begin{verbatim}
 %\makeatletter
@@ -414,7 +467,7 @@
 %    {\vskip0.6ex\schemabox{{\kern0.1em}f}}
 %}\end{verbatim}
 % \end{minipage}
-% \begin{minipage}[c]{0.25\textwidth}
+% \begin{minipage}{0.25\textwidth}
 % \makeatletter
 % \newcommand*{\DoVerts}%
 %   {\let\@schemata at LD\bracevert%
@@ -441,10 +494,10 @@
 % \end{tabular}}
 % \end{quote}
 % The \meta{left side} and \meta{right side} are vertical material in order to allow a \cmd{\smallskip} or other vertical adjustment as needed.\medskip
-% 
+%
 % The \meta{type} of a schema is \texttt{open} (the delimiter opens to the right) by default:
-% 
-% \leavevmode\quad\begin{minipage}[c]{0.6\textwidth}\small
+%
+% \leavevmode\quad\begin{minipage}{0.6\textwidth}\small
 % \StartNum
 % \begin{verbatim}
 %\schema
@@ -451,7 +504,7 @@
 %  {\schemabox{a}}
 %  {\schemabox{b\\c}}\end{verbatim}
 % \end{minipage}
-% \begin{minipage}[c]{0.25\textwidth}
+% \begin{minipage}{0.25\textwidth}
 % \begin{displaymath}
 % \schema
 %   {\schemabox{a}}
@@ -459,10 +512,10 @@
 % \end{displaymath}\vspace{0pt}
 % \end{minipage}
 % \newpage
-% 
+%
 % Any value of \meta{type} other than the exact string \texttt{open} makes a ``closed'' schema (the delimiter opens to the left):
 %
-% \leavevmode\quad\begin{minipage}[c]{0.6\textwidth}\small
+% \leavevmode\quad\begin{minipage}{0.6\textwidth}\small
 % \StartNum
 % \begin{verbatim}
 %\schema[closed]
@@ -469,7 +522,7 @@
 %  {\NudgeSB\schemabox{b\\c}}
 %  {\schemabox{a}}\end{verbatim}
 % \end{minipage}
-% \begin{minipage}[c]{0.25\textwidth}
+% \begin{minipage}{0.25\textwidth}
 % \begin{displaymath}
 % \schema[closed]
 %   {\NudgeSB\schemabox{b\\c}}
@@ -476,15 +529,14 @@
 %   {\schemabox{a}}
 % \end{displaymath}\vspace{0pt}
 % \end{minipage}
-% 
+%
+% \noindent\leavevmode\newlength{\savepar}\setlength{\savepar}{\the\parindent}^^A
+% \begin{minipage}{0.65\textwidth}
 % Using \cmd{\NudgeSB} above added a kern of \texttt{0.2em} at the right of the \cmd{\schemabox} to offset an automatic kern of \texttt{-0.2em} that normally pulls the brace slightly closer to the left-hand side when it opens to the right. We cover such tweaks in Section~\ref{sec:tweakschema}.
-% 
-% In practice, \cmd{\schema} does not nest, so it is only useful for the right-hand ``leaves'' of a large schema. That makes formatting the ``leaves'' much faster. Thus, the \cmd{\schema} macro is used only in the framed sub-schemata below.\smallskip
 %
-% \noindent\leavevmode\begin{minipage}[c]{0.6\textwidth}
-% \quad\space The automatic sizing of \cmd{\schema} changes, depending on the height, depth, and even context of the letters. This can look ugly if uniformity is desired. Use \cmd{\Schema} (next section) to enforce uniform schemata. Section~\ref{sec:tweakschema} gives more details on tweaking \cmd{\schema} as needed.
+% \hspace{\the\savepar}In practice, \cmd{\schema} does not nest, so it is only useful for the right-hand ``leaves'' of a large schema. That makes formatting the ``leaves'' much faster. Thus, the \cmd{\schema} macro is used only in the framed sub-schemata at right.
 % \end{minipage}\hfill
-% \begin{minipage}[c]{0.235\textwidth}\small
+% \begin{minipage}{0.2\textwidth}\small
 %   \Schema{-1ex}{4.2ex}
 %     {
 %       \schemabox{a}
@@ -496,8 +548,10 @@
 %       }
 %     }
 %   }
-% \end{minipage}
+% \end{minipage}\smallskip
 %
+% \indent The automatic sizing of \cmd{\schema} changes, depending on the height, depth, and even context of the letters. This can look ugly if uniformity is desired. Use \cmd{\Schema} (next section) to enforce uniform schemata.
+%
 % \subsubsection[\texttt{\textbackslash Schema}]{Branches and Root: \texttt{\textbackslash Schema}}
 %
 % \DescribeMacro{\Schema}
@@ -533,7 +587,7 @@
 % }
 % {
 %   \Schema{0ex}{3.8ex}
-%   {\schemabox{synonym}}
+%   {\schemabox{\,synonym}}
 %   {
 %     \schema{\schemabox{part 3}}
 %       {\SwitchSB\schemabox{detail e\\detail f}}\smallskip
@@ -543,7 +597,7 @@
 % }
 % \end{displaymath}
 % \newpage
-% 
+%
 % The source for that complex schema looks like:
 % \begin{quote}\small
 % \StartNum
@@ -561,7 +615,7 @@
 %}
 %{
 %  \Schema{0ex}{3.8ex}
-%  {\schemabox{synonym}}
+%  {\schemabox{\,synonym}}
 %  {
 %    \schema{\schemabox{part 3}}
 %      {\SwitchSB\schemabox{detail e\\detail f}}\smallskip
@@ -572,7 +626,7 @@
 % \end{quote}
 %
 % Both \cmd{\schema} and \cmd{\Schema} will stack vertically if set sequentially as paragraphs in running text:
-% 
+%
 % \begin{paracol}{2}
 % \begin{quote}\small
 % \StartNum
@@ -587,7 +641,7 @@
 % \end{quote}
 % \switchcolumn
 % \vfil
-% 
+%
 % \schema
 %   {\schemabox{a}}
 %   {\schemabox{b\\c}}
@@ -614,7 +668,7 @@
 % \end{quote}
 %
 % Now we begin with the trivial example of one \cmd{\Box} on each side of the delimiter:\bigskip
-% 
+%
 % \begin{paracol}{2}
 % \vspace{-0.1cm}
 % \begin{quote}\small
@@ -626,9 +680,9 @@
 % \schema{\Box}{\Box}\bigskip
 % \end{paracol}
 % \newpage
-% 
+%
 % This example is more complex, showing how each side stacks \cmd{\Box}es vertically:\bigskip
-% 
+%
 % \begin{paracol}{2}
 % \vspace{0.45cm}
 % \begin{quote}\small
@@ -639,9 +693,9 @@
 % \switchcolumn
 % \schema{\Box}{\Box\Box}\bigskip
 % \end{paracol}
-% 
+%
 % Finally we use \cmd{\Schema} to get a schema that is both open and closed:\bigskip
-% 
+%
 % \begin{paracol}{2}
 % \vspace{-0.4cm}
 % \begin{quote}\small
@@ -707,7 +761,7 @@
 % \UCschema
 % \end{displaymath}\smallskip
 % \newpage
-% 
+%
 % \DescribeMacro{\SwitchSB}
 % The macro \cmd{\SwitchSB} is a per-use toggle. It causes a particular \cmd{\schemabox} to do the opposite of whatever \cmd{\LCschema} and \cmd{\UCschema} call for. It should be placed immediately before the \cmd{\schemabox} to be affected and its effect is reset when that particular \cmd{\schemabox} terminates. 
 %
@@ -715,7 +769,7 @@
 %
 % \DescribeMacro{\NudgeSB}
 % The macro \cmd{\NudgeSB} is another ``per-use'' macro that causes a particular \cmd{\schemabox} to add a default \texttt{0.2em} kern at the end of every line of text, then is reset thereafter. It ``corrects a corrective.''
-% 
+%
 % \cmd{\NudgeSB} is meant to be used on the left-hand side of a closed \cmd{\schema} or \cmd{\Schema}. Both macros insert a kern of \texttt{-0.2em} to draw the cusp or flexion point of the delimiter closer to the left-hand side. This corrects the spacing of delimiters that open to the right. When a delimiter opens to the left, the kern may be needed if there is punctuation, or it may throw off the spacing.\medskip
 %
 % \DescribeMacro{\SBNudgeFactor}
@@ -725,7 +779,7 @@
 % \end{quote}
 %
 % \subsection{Tutorial}
-% 
+%
 % Now that we have explained what all the macros are supposed to do, let's take a journey together in establishing and practicing a methodology for creating general forms of schemata.
 %
 % \subsubsection{Starting Off Basic}
@@ -738,10 +792,10 @@
 %\schema{a}{b\\c}\end{verbatim}
 % \end{quote}
 % \switchcolumn
-% 
+%
 % \vfil\schema{a}{b\\c}\medskip
 % \end{paracol}
-% 
+%
 % Oh dear, that went badly. Oh, wait! Schemata hold internal vertical lists. That weird \cmd{\schemabox} thing handles just that case:
 % \begin{paracol}{2}
 % \begin{quote}\small
@@ -752,7 +806,7 @@
 %  {\schemabox{b\\c}}\end{verbatim}
 % \end{quote}
 % \switchcolumn
-% 
+%
 % \vfil\schema
 %   {\schemabox{a}}
 %   {\schemabox{b\\c}}
@@ -768,15 +822,15 @@
 %  {\schemabox{b}}\end{verbatim}
 % \end{quote}
 % \switchcolumn
-% 
+%
 % \vfil\schema
 %   {\schemabox{a}}
 %   {\schemabox{b}}
 % \end{paracol}
-% 
+%
 % When there is no ``big'' side of a schema, perhaps use inline math mode:
 % \begin{quote}
-% |\(\hbox{a}\left\{\hbox{\strut b}\right.\)|\qquad \(\hbox{a}\left\{\hbox{\strut gib}\right.\)
+% |\(\hbox{a}\left\{\hbox{\strut gib}\right.\)|\qquad \(\hbox{a}\left\{\hbox{\strut gib}\right.\)
 % \end{quote}
 %
 % \subsubsection{\textit{Loci} 101}
@@ -858,7 +912,7 @@
 %   }
 % }
 % \end{displaymath}
-% 
+%
 % This is not what we want; \cmd{\schema} works for the ``leaves'' on the right, but not for the ``root'' on the left. The brace adjusts to the entire right-hand side.
 %
 % Before we address the brace, we adjust the spacing, starting from the ``leaves'' at right, going to the  ``root'' on the left. We add a \cmd{\smallskip} after a \cmd{\schema} to space out the ``leaves'':\footnote{Using \cmd{\vskip} in \PlainTeX{} starts a new paragraph, so \cmd{\smallskip} cannot be used within the horizontal mode \cmd{\schemabox} when using \PlainTeX. In some cases, putting vertical space in the first or last lines of a \cmd{\schemabox}, regardless of format, will affect centering.}
@@ -866,12 +920,12 @@
 % \StartNum\addtocounter{VerbLine}{16}
 % \begin{verbatim} }\smallskip\end{verbatim}
 % \end{quote}
-% 
+%
 % We have two \cmd{\schema} ``leaves'' and one ``root,'' so we only change one \cmd{\schema} into a \cmd{\Schema}. We count the lines of text, estimate, then revise. Below we have 8--9 lines of text from ``\textsc{Essentiam}'' to ``ut in.'' We estimate \meta{size} at \texttt{8.5ex} and \meta{adjust} at \texttt{0ex}. The large brace is too low, so we \meta{adjust} to \texttt{-1ex}, raising the left side and the delimiter, while lowering the right. We then refine \meta{size} to \texttt{8.7ex}.\footnote{Changes in \TeX{} distributions can change font metrics and thus, the metrics of your schemata.}
 % \begin{quote}
 % \StartNum\begin{verbatim} \Schema{-1ex}{8.7ex}\end{verbatim}
 % \end{quote}
-% 
+%
 % After those two line changes, we have the finished schema that now looks like it is supposed to appear:
 % \begin{displaymath}
 % \Schema{-1ex}{8.7ex}
@@ -912,9 +966,9 @@
 %\end{displaymath}
 %
 % \subsubsection{Going Big}
-% 
+%
 % Thus far, we have dealt with many trivial examples. We have amassed a significant body of knowledge:
-% 
+%
 % \begin{enumerate}
 % \item We usually use \cmd{\schemabox} for the contents of a schema.
 % \item Schemata usually ``open'' from left to right, from ``root'' to ``leaves.''
@@ -925,26 +979,26 @@
 % \item We may need to use the tweaking macros \cmd{\UCschema}, \cmd{\LCschema}, \cmd{\SwitchSB}, and \cmd{\NudgeSB}.
 % \end{enumerate}
 % \newpage
-% 
+%
 % Armed with this information, we sally forth to reproduce the following schema found on page 13 of Martin Chemnitz, \textit{Loci Theologici} (Frankfurt, 1653).\footnote{This image was created from a photograph taken by the author. It is the victim of a few cage transforms, despeckling, color selection and fill, color equalization, cleanup, scaling, and reduction to a two-color indexed palette.}\bigskip
-% 
+%
 % \noindent\includegraphics[width=\textwidth]{schemata.png}\bigskip
 %
 % \begin{itemize}
 % \item As you see, the braces were composed of various type sorts, mainly smaller rules and assorted curly and bendy bits.
-% 
+%
 % \item Because this is Latin we will see roman, italic and small caps, but little of other typefaces. We do see \emph{s-medialis} and many old-style ligatures.
-% 
+%
 % \item In the reproduction we will use \emph{s-finalis} only, but we will retain some ligatures.
-% 
+%
 % \item We will improve spacing between elements.
-% 
+%
 % \item We will not aim for an exact reproduction of line breaks and such.
 % \end{itemize}
 % \newpage
-% 
+%
 % We begin by looking at the ``leaves,'' the rightmost bits of text enclosed by braces. We can use \cmd{\schema} in these cases. That results in the following:
-% 
+%
 % \begin{quote}
 % \StartNum
 % \begin{verbatim}
@@ -1005,7 +1059,7 @@
 %  Renovationem S. Sancti.}
 %}\end{verbatim}
 % \qquad\schemabox{Ante lapsum.}\footnote{We delete line 2 after \emph{Ante lapsum} in the large example on page~\pageref{page:firstbig} and thereafter.}
-% 
+%
 % \qquad\schema
 % {\schemabox{Post lapsum:}}
 % {
@@ -1082,11 +1136,11 @@
 %   Cognationis.\\
 %   Agnationis.}
 % }
-% 
+%
 % \qquad\schemabox{Inimicum.}\footnote{We delete line 9 before \emph{Inimicum} in the large example on page~\pageref{page:firstbig} and thereafter.}
 % \end{quote}
 % \newpage
-% 
+%
 % \phantomsection
 % \label{page:firstbig}
 % Below we build all of the ``leaves'' into the larger schema using \cmd{\Schema}. The braces all have dummy values of \texttt{0ex} \meta{adjust} and \texttt{5ex} \meta{size}. Please do not be alarmed at how bad this looks right now! We will adjust the layout shortly. We just want to see the general look of things:\bigskip
@@ -1285,7 +1339,7 @@
 %      \schemabox{Trinus in personis.}
 %    }\smallskip\end{verbatim}
 % \end{quote}
-% 
+%
 % Again, below, the skip comes at the close of a \cmd{\schema}.
 % \begin{quote}\small\ContinueNum\addtocounter{VerbLine}{10}
 % \begin{verbatim}
@@ -1292,9 +1346,9 @@
 %      \textsc{\quad Ad Vitam \AE{}ternam}.}
 %    }\medskip\end{verbatim}
 % \end{quote}
-% 
+%
 % Below, the first skip helps to separate the lone \cmd{\schemabox} from the \cmd{\schema} beneath it. This illustrates how the internal vertical lists of schemata can contain heterogeneous material.
-% 
+%
 % A medium skip is placed between two \cmd{\schemabox}es, which slightly throws off the way the brace spans the boxes. A small skip is put at the end of the last \cmd{\schemabox} to correct that. Sometimes putting skips within a \cmd{\schema} can be tricky. Then a \cmd{\smallskip} is added again at the end of the right-hand side.
 % \begin{quote}\small\ContinueNum\addtocounter{VerbLine}{8}
 % \begin{verbatim}
@@ -1310,7 +1364,7 @@
 %      }\smallskip
 %    }\end{verbatim}
 % \end{quote}
-% 
+%
 % The skips below generally follow the same patterns that we have seen above.
 % \begin{quote}\small\ContinueNum\addtocounter{VerbLine}{15}
 % \begin{verbatim}
@@ -1320,7 +1374,7 @@
 %        {\schemabox{seipsum ratione}}
 %        {\schemabox{Anim\ae{}\\ vel\\ Corporis}}\smallskip\end{verbatim}
 % \end{quote}
-% 
+%
 % \begin{quote}\small\ContinueNum\addtocounter{VerbLine}{10}
 % \begin{verbatim}
 %          }\smallskip
@@ -1418,9 +1472,9 @@
 % }
 %\end{displaymath}\egroup
 % \newpage
-% 
+%
 % \newpage
-% 
+%
 % Next we estimate the lines of text and blank lines from the top of a \cmd{\Schema} brace to the bottom, e.g., from ``\textsc{Per se}:'' to ``quem vel''. We use those ``ex'' height figures for \meta{size}. The following lines illustrate our ``ball park'' figures:
 %
 % \begin{quote}\small\StartNum
@@ -1447,7 +1501,7 @@
 % \begin{verbatim}
 % \Schema{0ex}{5ex}\end{verbatim}
 % \end{quote}
-% 
+%
 % \bgroup\small\begin{displaymath}
 % \Schema{0ex}{23ex}
 % {
@@ -1539,7 +1593,7 @@
 %\end{displaymath}\egroup
 %
 % \newpage
-% 
+%
 % Next we tweak \meta{adjust} values by counting the lines (\texttt{ex}) in the direction the left side needs to move relative to the right, multiply the result by two, and make it negative for up and positive for down. Using an editor, e.g., \texttt{texworks} makes this fairly easy. We also adjust the final \meta{size} of the braces. Work from leaves to root:
 % \begin{quote}\small\StartNum
 % \begin{verbatim}
@@ -1659,7 +1713,7 @@
 % \subsubsection[Big Groups]{Big Schema with Groups}
 %
 % The next example illustrates everything tha we have covered so far, plus \cmd{\DoGroups}, all inside a local scope:\bigskip
-% 
+%
 % \bgroup\footnotesize\begin{displaymath}
 % \DoGroups%
 %\Schema{-27ex}{21.5ex}
@@ -1761,9 +1815,9 @@
 %            \schemabox{Universalis} \smallskip \schemabox{Particularis}
 %          }
 %          \smallskip
-%          \schemabox{Politi\ae{} ut Magistratuum}
+%          \schemabox{Politi\ae, ut Magistratuum}
 %          \smallskip
-%          \schemabox{\OE{}conomi\ae{} ut privatorum}
+%          \schemabox{\OE{}conomi\ae, ut privatorum}
 %        }
 %      }\vskip2ex
 %    }
@@ -1796,7 +1850,7 @@
 %
 % \newpage
 % We use a modified version of our \cmd{\Box} macro from above to show how each part nests within the other. Below we do not use \cmd{\NudgeSB} from Section~\ref{sec:tweakschema} because we are not using \cmd{\schemabox}; instead we directly add the kern: |\hbox{\Box{\,$left_2$}\kern0.2em}| within the closed schema. The result is:\medskip
-% 
+%
 % \begin{quote}
 %   \quad\Schema{0ex}{2ex}
 %     {\Box{\,$left_1$}}
@@ -1808,7 +1862,7 @@
 %       }%^^A
 %     }
 % \end{quote}\medskip
-% 
+%
 %  Here is another, more complex example:\medskip
 %
 % \begin{displaymath}
@@ -1871,7 +1925,7 @@
 %\newpage
 %
 % This is more of a real-world example. As above, one must use \cmd{\Schema} to prevent the opening braces from being slightly larger than the closing braces.
-% 
+%
 % \bgroup\small\begin{displaymath}
 % \Schema{-1.4ex}{10ex}
 % {
@@ -1930,7 +1984,7 @@
 %   }
 % }
 % \end{displaymath}\egroup\smallskip
-% 
+%
 % This listing of the previous example illustrates how one handles closed schemata. The macro \cmd{\gk} uses \textsf{babel} to create Greek text.
 %
 % \begin{quote}\small\StartNum
@@ -1971,11 +2025,11 @@
 %}\end{verbatim}
 % \end{quote}
 % \newpage
-% 
+%
 % \subsection{Final features}
 % \label{sec:multiple}
 % This final example illustrates how one can set the width of a \cmd{\schemabox}, and for what sort of use that might be. Below we invoke \cmd{\DoBrackets} after the start of the group containing the right-hand side of the first \cmd{\Schema}.
-% 
+%
 % \bgroup\small\begin{displaymath}
 % \Schema{-0.2ex}{14.4ex}
 % {\schemabox{\bfseries Curricula\\\bfseries Texts}}
@@ -2009,7 +2063,7 @@
 %        2. Specialized Works}}
 % }
 %\end{displaymath}\egroup
-% 
+%
 % \begin{quote}\small
 % \StartNum
 % \begin{verbatim}
@@ -2047,16 +2101,17 @@
 %}\end{verbatim}
 % \end{quote}
 % \newpage
-% 
+%
 %\StopEventually{^^A
 %  \newgeometry{textwidth=160mm,textheight=237mm,right=25mm}
-%  \newpage\PrintChanges
-%  \newpage\PrintIndex
+%  \PrintChanges\newpage\PrintIndex
 %}
 % \iffalse
 %<*package>
 % \fi
+%
 % \section{Implementation}
+% \small
 %
 % Shorter macros are written in both \LaTeX{} and generic \TeX. Longer macros implement a platform-specific front end and a common back end. The macros default to \LaTeXe{} format. If the format test fails, then generic macros are selected.\medskip
 %
@@ -2064,20 +2119,20 @@
 % \leavevmode\llap{\scriptsize 1\ \ }\verb+%<package>{\expandafter}\expandafter\ifx \csname schemataLaTeX\endcsname\relax+
 % \leavevmode\llap{\scriptsize 2\ \ }\verb+%<package>  \def\schemataLaTeX{LaTeX2e}\fi+
 % \leavevmode\llap{\scriptsize 3\ \ }\verb+%<package>\ifx\fmtname\schemataLaTeX+
-% \leavevmode\llap{\scriptsize 4\ \ }\verb+%<package>\expandafter\NeedsTeXFormat\expandafter{\schemataLaTeX}+
+% \leavevmode\llap{\scriptsize 4\ \ }\verb+%<package>\expandafter\NeedsTeXFormat\expandafter{\schemataLaTeX}[2005/12/01]+
 % \leavevmode\llap{\scriptsize 5\ \ }\verb+%<package>\ProvidesPackage{schemata}+
 %                                  \verb+%<*package>+
-% \leavevmode\llap{\scriptsize 6\ \ }\verb+  [2020/03/14 v1.1 generic package to aid construction of topical categories]+
+% \leavevmode\llap{\scriptsize 6\ \ }\verb+  [2020/11/11 1.2 generic package to aid construction of topical categories]+
 %                                  \verb+%</package>+
 % \leavevmode\llap{\scriptsize 7\ \ }\verb+%<package>\fi+
 % \egroup
 % \makeatletter\advance\c at CodelineNo by 7\makeatother
-% 
+%
 % \subsection{Internal Variables}
 %
-% \changes{v1.0}{2020/03/13}{current format handling}
+% \changes{1.0}{2020/03/13}{current format handling}
 % If we are not using \LaTeXe, we do the equivalent of \cmd{\makeatletter}.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX\else
   \catcode`@=11\relax
@@ -2084,8 +2139,8 @@
 \fi
 %    \end{macrocode}
 %    
-% \changes{v0.8}{2016/01/25}{Rename box/dimen registers}
-% \changes{v1.0}{2020/03/13}{Rename box/dimen registers}
+% \changes{0.8}{2016/01/25}{Rename box/dimen registers}
+% \changes{1.0}{2020/03/13}{Rename box/dimen registers}
 %Two box registers and two dimen registers are used to analyze the left-hand and right-hand vertical sizes of the boxes in a schema. To make it less likely for these internal variables to be redefined, they are now more ``unique.''
 %
 %    \begin{macrocode}
@@ -2095,10 +2150,10 @@
 \newdimen\@schemata at lheight
 %    \end{macrocode}
 %
-% \changes{v0.6}{2013/03/10}{Added UC/LC tweaks.}
-% \changes{v0.8}{2016/01/25}{Renamed internal macros}
+% \changes{0.6}{2013/03/10}{Added UC/LC tweaks.}
+% \changes{0.8}{2016/01/25}{Renamed internal macros}
 % Two Boolean flags affect the height of a \cmd{\schemabox}, respectively setting and toggling that height for lowercase and uppercase content in order to add or remove space for boxes with only lowercase text.
-% 
+%
 %    \begin{macrocode}
 \newif\if at schemata@LCBox
 \newif\if at schemata@SWBox
@@ -2105,7 +2160,7 @@
 %    \end{macrocode}
 %
 % This Boolean flag determines if a kern should be added to the end of each line in a \cmd{\schemabox} (helps with closed braces).
-% 
+%
 %    \begin{macrocode}
 \newif\if at schemata@NudgeBox
 %    \end{macrocode}
@@ -2112,8 +2167,8 @@
 %
 % \subsection{Package Options}
 %
-% \changes{v0.6}{2013/03/10}{Added brackets and parens as well as braces}
-% \changes{v1.0}{2020/03/13}{Added group option}
+% \changes{0.6}{2013/03/10}{Added brackets and parens as well as braces}
+% \changes{1.0}{2020/03/13}{Added group option}
 % We set braces to be the default set of delimiters. Apart from \LaTeXe{} we ignore the options. Three options are implemented, namely, \texttt{braces} (the default), \texttt{brackets}, and \texttt{parens}. Since the options are used infrequently, we naively process them in whatever order we get, each overwriting the last. 
 %
 %    \begin{macrocode}
@@ -2137,10 +2192,10 @@
 % \subsection {Macros}
 %
 % \begin{macro}{\DoBraces}
-% \changes{v0.6}{2013/03/10}{Added macro}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.6}{2013/03/10}{Added macro}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Set the delimiters to be braces. This is local to a scope, including within a schema.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\DoBraces}%
@@ -2151,12 +2206,12 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\DoBrackets}
-% \changes{v0.6}{2013/03/10}{Added macro}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.6}{2013/03/10}{Added macro}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Set the delimiters to be brackets. This is local, as above.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\DoBrackets}%
@@ -2167,12 +2222,12 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\DoParens}
-% \changes{v0.6}{2013/03/10}{Added macro}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.6}{2013/03/10}{Added macro}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Set the delimiters to be parentheses. This is local, as above.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\DoParens}%
@@ -2183,11 +2238,11 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\DoGroups}
-% \changes{v1.0}{2020/03/13}{Added macro}
+% \changes{1.0}{2020/03/13}{Added macro}
 % Set the delimiters to be parentheses. This is local, as above.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\DoGroups}%
@@ -2198,12 +2253,12 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\LCschema}
-% \changes{v0.6}{2013/03/10}{Added macro}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.6}{2013/03/10}{Added macro}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Prevent \cmd{\schemabox} from adding a \cmd{\strut} in the first line.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\LCschema}{\@schemata at LCBoxtrue}
@@ -2213,12 +2268,12 @@
 %    \end{macrocode}
 % \end{macro}
 % \newpage
-% 
+%
 % \begin{macro}{\UCschema}
-% \changes{v0.6}{2013/03/10}{Added macro}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.6}{2013/03/10}{Added macro}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Permit \cmd{\schemabox} to add a \cmd{\strut} in the first line (default).
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\UCschema}{\@schemata at LCBoxfalse}
@@ -2227,12 +2282,12 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\SwitchSB}
-% \changes{v0.6}{2013/03/10}{Added macro}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.6}{2013/03/10}{Added macro}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Flip the UC/LC settings for one \cmd{\schemabox}, which will reset this value on exit.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\SwitchSB}{\@schemata at SWBoxtrue}%
@@ -2241,12 +2296,12 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\NudgeSB}
-% \changes{v0.8}{2016/01/25}{Added macro}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.8}{2016/01/25}{Added macro}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Add a kern to the end of each line in one \cmd{\schemabox}. This will be reset on exit from that \cmd{\schemabox}.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\NudgeSB}{\@schemata at NudgeBoxtrue}
@@ -2255,11 +2310,11 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\SBNudgeFactor}
-% \changes{v1.0}{2020/03/13}{Added macro}
+% \changes{1.0}{2020/03/13}{Added macro}
 % Define the \texttt{\textbackslash kern} to be added to the end of each line in one \cmd{\schemabox}. The default is \texttt{0.2em}, equal to the horizontal corrective.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand{\SBNudgeFactor}{\kern0.2em}
@@ -2268,11 +2323,12 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\schemabox}
-% \changes{v0.6}{2013/03/10}{Added lowercase tweaks}
-% \changes{v0.8}{2016/01/25}{Added nudge feature; fix errors when not in internal vertical mode}
-% \changes{v1.0}{2020/03/13}{create front- and back-end; ensure short}
+% \changes{0.6}{2013/03/10}{Added lowercase tweaks}
+% \changes{0.8}{2016/01/25}{Added nudge feature; fix errors when not in internal vertical mode}
+% \changes{1.0}{2020/03/13}{Create front- and back-end; ensure short}
+% \changes{1.2}{2020/11/11}{Fix namespace}
 %  If in internal vertical mode, restricted horizontal mode, or math mode, wrap a stack of \cmd{\hbox}es in a \cmd{\vbox}, then put that inside an \cmd{\hbox}. The first argument sets an optional width for those \cmd{\hbox}es. Normally insert a \cmd{\strut} in the first \cmd{\hbox}. The second argument contains the rows of horizontal material, where |\\| is redefined to end one \cmd{\hbox} and begin another. When in any other mode mode, just display the second argument as text.
 %
 %    \begin{macrocode}
@@ -2279,9 +2335,9 @@
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\schemabox}[2][0pt]{\@schemata at schemabox[#1]{#2}}
 \else
-  \def\schemabox{\futurelet\testchar\@schemata at schemab@x}
+  \def\schemabox{\futurelet\@schemata at testchar\@schemata at schemab@x}
   \def\@schemata at schemab@x{%
-    \ifx[\testchar
+    \ifx[\@schemata at testchar
       \let\next\@schemata at schemabox%
     \else
       \let\next\@schemata@@schemab at x%
@@ -2293,23 +2349,27 @@
 \def\@schemata at schemabox[#1]#2{%
   \ifinner
     \if at schemata@LCBox
-      \def\@Adj{}%
-      \if at schemata@SWBox\def\@Adj{\strut}\fi
+      \def\@schemata at Adj{}%
+      \if at schemata@SWBox\def\@schemata at Adj{\strut}\fi
     \else
-      \def\@Adj{\strut}%
-      \if at schemata@SWBox\def\@Adj{}\fi
+      \def\@schemata at Adj{\strut}%
+      \if at schemata@SWBox\def\@schemata at Adj{}\fi
     \fi
     \if at schemata@NudgeBox
-      \let\@Nudge\SBNudgeFactor%
+      \let\@schemata at Nudge\SBNudgeFactor%
     \else
-      \def\@Nudge{}%
+      \def\@schemata at Nudge{}%
     \fi
     \ifdim#1<1pt
-      \def\\{\@Nudge\egroup\hbox\bgroup\ignorespaces }%
-      \vbox{\hbox\bgroup\@Adj\ignorespaces #2\@Nudge\egroup}%
+      \def\\{\@schemata at Nudge\egroup\hbox\bgroup\ignorespaces }%
+      \vbox{\hbox\bgroup%
+        \@schemata at Adj\ignorespaces #2\@schemata at Nudge%
+        \egroup}%
     \else
       \def\\{\hfil\egroup\hbox to #1\bgroup\ignorespaces }%
-      \vbox{\hbox to #1\bgroup\@Adj\ignorespaces #2\hfil\egroup}%
+      \vbox{\hbox to #1\bgroup%
+      \@schemata at Adj\ignorespaces #2\hfil%
+      \egroup}%
     \fi
   \else
     #2%
@@ -2319,23 +2379,24 @@
 }
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\schema}
-% \changes{v1.0}{2020/03/13}{create front- and back-end; ensure long}
+% \changes{1.0}{2020/03/13}{create front- and back-end; ensure long}
+% \changes{1.2}{2020/11/11}{Fix namespace}
 % This ``simple'' schema vertically centers two boxes of internal vertical material and puts a ``simple'' brace between the boxes based on the height of the box and the options passed to the schema.
-% 
+%
 % There is something of a ``magic'' value for adjusting the height used for the larger side of a \cmd{\schema}, namely \texttt{1.44265ex}. By using this adjustment, which is slightly larger than $\sqrt{2}$ times the ex-height of the font, the results look more aesthetically pleasing in terms of centering and size of the braces.
-% 
+%
 % By default, a schema has a box to the left, an open delimiter, and a box to the right. If any optional argument other than \texttt{open} is used, the schema prints a box to the left, a close brace, and a box to the right.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand{\schema}[3][open]{%
     \@schemata at schema[#1]{#2}{#3}}
 \else
-  \long\def\schema{\futurelet\testchar\@schemata at schem@}
+  \long\def\schema{\futurelet\@schemata at testchar\@schemata at schem@}
   \long\def\@schemata at schem@{%
-    \ifx[\testchar
+    \ifx[\@schemata at testchar
       \let\next\@schemata at schema%
     \else
       \let\next\@schemata@@schem@%
@@ -2346,8 +2407,8 @@
     \@schemata at schema[open]{#1}{#2}}
 \fi
 \long\def\@schemata at schema[#1]#2#3{%
-  \def\@ption{#1}\def\@pen{open}%
-  \ifx\@ption\@pen
+  \def\@schemata at option{#1}\def\@schemata at open{open}%
+  \ifx\@schemata at option\@schemata at open
     \setbox\@schemata at rhs=\vbox{#3}%
     \@schemata at rheight=\ht\@schemata at rhs%
     \advance\@schemata at rheight\dp\@schemata at rhs%
@@ -2367,19 +2428,20 @@
 }
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\Schema}
-% \changes{v1.0}{2020/03/13}{create front- and back-end; ensure long}
+% \changes{1.0}{2020/03/13}{create front- and back-end; ensure long}
+% \changes{1.2}{2020/11/11}{Fix namespace}
 % This is the general-purpose form of schemata. The arguments include whether it is an open or closed schema, the vertical adjustment of the left-hand side and delimiter over against the right-hand side, the size of the brace, and the contents of the left and right-hand sizes. It works about the same as above, but requires manual adjustment of the braces. Again we see the ``magic'' height adjustment value of \texttt{1.44265ex}.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand{\Schema}[5][open]{%
     \@schemata at Schema[#1]{#2}{#3}{#4}{#5}}
 \else
-  \long\def\Schema{\futurelet\testchar\@schemata at Schem@}
+  \long\def\Schema{\futurelet\@schemata at testchar\@schemata at Schem@}
   \long\def\@schemata at Schem@{%
-    \ifx[\testchar
+    \ifx[\@schemata at testchar
       \let\next\@schemata at Schema%
     \else
       \let\next\@schemata@@Schem@%
@@ -2390,10 +2452,10 @@
     \@schemata at Schema[open]{#1}{#2}{#3}{#4}}
 \fi
 \long\def\@schemata at Schema[#1]#2#3#4#5{%
-  \def\@ption{#1}%
-  \def\@pen{open}%
+  \def\@schemata at option{#1}%
+  \def\@schemata at open{open}%
   \dimen0=#2%
-  \ifx\@ption\@pen
+  \ifx\@schemata at option\@schemata at open
     \hbox{$\vcenter{\vskip1.44265\dimen0#4}%
       \@schemata at biglbrace{#2}{#3}\vcenter{#5}$}%
   \else
@@ -2404,12 +2466,12 @@
 %    \end{macrocode}
 % \end{macro}
 % \newpage
-% 
+%
 % \begin{macro}{\@schemata at lbrace}
-% \changes{v0.8}{2016/01/25}{Renamed}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.8}{2016/01/25}{Renamed}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Draw an on-center delimiter to the left of a simple box.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\@schemata at lbrace}[1]{%
@@ -2426,12 +2488,12 @@
 \fi
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\@schemata at rbrace}
-% \changes{v0.8}{2016/01/25}{Renamed}
-% \changes{v1.0}{2020/03/13}{ensure short}
+% \changes{0.8}{2016/01/25}{Renamed}
+% \changes{1.0}{2020/03/13}{ensure short}
 % Draw an on-center delimiter to the right of a simple box.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\@schemata at rbrace}[1]{%
@@ -2450,10 +2512,10 @@
 % \end{macro}
 %
 % \begin{macro}{\@schemata at biglbrace}
-% \changes{v0.8}{2016/01/25}{Renamed; use absolute value of brace size}
-% \changes{v1.0}{2020/03/13}{ensure short; create front- and back-end}
+% \changes{0.8}{2016/01/25}{Renamed; use absolute value of brace size}
+% \changes{1.0}{2020/03/13}{ensure short; create front- and back-end}
 % Draw a vertically-adjustable delimiter to the left of a complex assortment of boxes. Again we see the ``magic'' height adjustment value of \texttt{1.44265ex}, but both positive and negative.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\@schemata at biglbrace}[2]{%
@@ -2481,12 +2543,12 @@
 }
 %    \end{macrocode}
 % \end{macro}
-% 
+%
 % \begin{macro}{\@schemata at bigrbrace}
-% \changes{v0.8}{2016/01/25}{Renamed; Use absolute value of brace size}
-% \changes{v1.0}{2020/03/13}{ensure short; create front- and back-end}
+% \changes{0.8}{2016/01/25}{Renamed; Use absolute value of brace size}
+% \changes{1.0}{2020/03/13}{ensure short; create front- and back-end}
 % Draw a vertically-adjustable delimiter to the right of a complex assortment of boxes. Again we see the ``magic'' height adjustment value of \texttt{1.44265ex}, but both positive and negative.
-% 
+%
 %    \begin{macrocode}
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\@schemata at bigrbrace}[2]{%
@@ -2524,6 +2586,516 @@
   \catcode`@=12\relax
 \fi
 %    \end{macrocode}
-%\Finale
+% \Finale
+% \endinput
+%</package>
+%<*examples>
+%<<examplesvb
+\def\nameofplain{plain}
+\def\nameofeplain{eplain}
+\def\nameoflatex{LaTeX2e}
+\def\nameoflollipop{Lollipop}
+%
+% See README.md for compiling this document.
+%
+\ifx\fmtname\nameoflatex
+  \documentclass[10pt]{article}
+  \usepackage[T1]{fontenc}
+  \usepackage[polutonikogreek,american]{babel}
+  \newcommand{\gk}[1]{\foreignlanguage{polutonikogreek}{#1}}
+  \usepackage{schemata}
+  \begin{document}
+\else
+  \ifx\fmtname\nameoflollipop
+    \input schemata.sty
+    \font\scshape=cmcsc10
+    \def\textsc#1{\bgroup\scshape #1\egroup}
+    \def\gk#1{\bgroup\it #1\egroup}
+    \Start
+  \else
+    \input schemata.sty
+    \font\scshape=cmcsc10
+    \def\textsc#1{\bgroup\scshape #1\egroup}
+    \def\gk#1{\bgroup\it #1\egroup}
+  \fi
+\fi
+
+Format: \fmtname\par
+
+$$
+\Schema{-1ex}{8.7ex}
+{
+  \schemabox{Subjectum theo-\\
+  logi\ae{} est Notitia\\
+  Dei. Considerat\\
+  ergo, Dei, vel}
+}
+{
+\schema
+  {
+    \schemabox{\textsc{Essentiam},}
+  }
+  {
+    \schemabox{Unitate natur\ae{}.\\
+    Trinitate personarum.\\
+    Operibus ad intra.}
+  }\smallskip
+  \schema
+  {
+    \schemabox{\textsc{Voluntatem},\\
+    manifestatam in\\
+    operibus ad extra;\\
+    ut in}
+  }
+  {
+    \schemabox{Creatione.\\
+    Sustentatione natur\ae{} %
+    laps\ae{}.\\
+    Reparatione.\\
+    Conversione.\\
+    Justificatione.\\
+    Sanctificatione \&\\
+    Glorificatione ejusdem.}
+  }
+}
+$$
+
+$$
+\Schema{-25ex}{20.6ex}
+{
+  \schemabox{Subjectum \&\\
+  summa univer-\\
+  s\ae{} Scriptur\ae{},\\
+  est \textsc{Cognitio}\\
+  vel}
+}
+{
+  \Schema{-6.4ex}{8.5ex}
+  {
+    \schemabox{\textsc{Dei}, qua-\\lis sit, aut}
+  }
+  {
+    \schema
+    {\schemabox{\textsc{Per se}:\\ scilicet.}}
+    {
+      \schemabox{Unus in essentia.}\smallskip
+      \schemabox{Trinus in personis.}
+    }\smallskip
+    \schema
+    {\schemabox{Ad hominem\\ quem vel}}
+    {
+      \schemabox{Accusat \& terret, \textsc{Per Legem},\\
+      Consolatur \& erigit, \textsc{Per Evangelium}.\\
+      Salvat, \textsc{Per Christum}.\\
+      Renovat, \textsc{Per Spiritum Sanctum}.\\
+      Sanctificat, \textsc{Per Verbum} \& \textsc{Sacramenta}.\\
+      Castigat, tentat \& exercet, \textsc{Per Crucem}.\\
+      Glorificat \textsc{Per Resurrectionem Carnis}\\
+      \textsc{\quad Ad Vitam \AE{}ternam}.}
+    }\medskip
+  }
+  \Schema{-13.4ex}{17.4ex}
+  {
+    \schemabox{\textsc{Hominis},\\ qualis sit}
+  }
+  {
+    \Schema{-4.4ex}{5ex}
+    {\schemabox{\textsc{Per se}:}}
+    {
+      \schemabox{Ante lapsum.}\smallskip
+      \schema
+      {\schemabox{Post lapsum:}}
+      {
+        \schemabox{Ante Regenerationem \&\\
+        Renovationem S. Sancti.}\medskip
+        \schemabox{Post Regenerationem \&\\
+        Renovationem S. Sancti.}\smallskip
+      }\smallskip
+    }
+    \Schema{4.2ex}{14.4ex}
+    {\schemabox{Ad}}
+    {
+      \schema
+      {\schemabox{\textsc{Deum},}}
+      {
+        \schemabox{P\oe{}nitentia agens, agnitis peccatis \&\\
+        ira Dei cognita \textsc{Ex Lege}.\\
+        Erigens se \textsc{Voce Evangelii}.\\
+        Credens \textsc{In Christum Salvatorem}.\\
+        Non repugnans \textsc{Spiritui Sancto} impellenti.\\
+        Audiens \textsc{Verbum}: \& utens \textsc{Sacramentis}.\\
+        Patienter \& constanter sufferens \textsc{Crucem}.\\
+        Sperans \& expectans glorificationem\\
+        \textsc{\quad In Resurrectione Carnis}\\
+        \textsc{\quad Ad Vitam \AE{}ternam}.}
+      }\smallskip
+      \schema
+        {\schemabox{seipsum ratione}}
+        {\schemabox{Anim\ae{}\\ vel\\ Corporis}}\smallskip
+      \Schema{2ex}{5.1ex}
+      {\schemabox{Proximum,}}
+      {
+        \schema
+        {\schemabox{Amicum ra-\\ tione vel}}
+        {
+          \schemabox{Religionis.\\
+          Politic\ae{} \& \OE{}conomic\ae{}.\\
+          Cognationis.\\
+          Agnationis.}
+        }\smallskip
+        \schemabox{Inimicum.}
+      }
+    }
+  }
+}
+$$
+
+\eject
+
+\bgroup
+
+\ifx\fmtname\nameofeplain
+\verbatim \DoParens |endverbatim
+\fi
+\DoParens%
+\vfil
+$$
+\Schema{-26ex}{21.5ex}
+{
+  \schemabox{Sacr\ae{}\\ litter\ae{}\\ loquuntur,\\ de}
+}
+{
+  \schema
+  {
+    \schemabox{\textsc{Deo}}
+  }
+  {
+    \schemabox{Uno, in Trinitate.}\smallskip\schemabox{Trino, in unitate.}
+  }
+  \Schema{-16.5ex}{23.4ex}
+  {
+    \vskip30ex
+    \schemabox{\textsc{Dei}\\ \textsc{Operibus}}
+  }
+  {
+    \schema
+    {
+      \schemabox{\textsc{Intra},\\ qu\ae{} sunt\\ divisa, ut}
+    }
+    {
+      \schemabox{\textsc{Patris}, ab \ae{}terno gignere.\\ \textsc{Filii}, ab \ae{}terno genitum esse.\\ \textsc{Spiritus Sancti}, ab utroque\\ ab \ae{}terno procedete.}
+    }
+    \medskip
+    \Schema{-2ex}{21ex}
+    {
+      \schemabox{\textsc{Extra},\\ qu\ae{} sunt\\ indivisa;\\ tervata\\ tamen\\ cujusque\\ person\ae{}\\ divinitatis\\ sua pro-\\prietate}
+    }
+    {
+      \Schema{-0.8ex}{6.4ex}
+      {
+        \schemabox{Creatione\\ natur\ae{}}
+      }
+      {
+        \schema
+        {
+          \schemabox{Brute ut}
+        }
+        {
+          \schemabox{C\oe{}li} \smallskip \schemabox{Elementorum} \smallskip \schemabox{Mundi}
+        }
+        \smallskip
+        \schema
+        {
+          \schemabox{\ifx\fmtname\nameoflatex\gk{logik~hs}\else\gk{logik\=es}\fi, ut}
+        }
+        {
+          \schemabox{Angelorum.} \smallskip \schemabox{Hominum: Ad\ae{},\\ Ev\ae{} \& procreatorum\\ exipsis.}
+        }
+      }
+      \schema
+      {
+        \schemabox{Sustenatione\\ natur\ae{} laps\ae{},}
+      }
+      {
+        \schemabox{Angelorum malorum,} \smallskip \schemabox{Hominum: Ad\ae{}, Ev\ae{}\\ \& procreatorum exipsis.}
+      }
+      \Schema{2.6ex}{8.8ex}
+      {
+        \schemabox{Beneficiis\\ erga Ecc-\\ lesiam: ea\\ versantur\\ aut circa}
+      }
+      {
+        \Schema{2.2ex}{7ex}
+        {
+          \schemabox{Res, ut}
+        }
+        {
+          \schema
+          {
+            \schemabox{Verbum}
+          }
+          {
+            \schemabox{Legis} \smallskip \schemabox{Evangelii} \smallskip \schemabox{Sacramentorum}
+          }
+          \smallskip
+          \schema
+          {
+            \schemabox{Signa vel Veteris\\ vel Novi Testa-\\ mentum ut sunt:}
+          }
+          {
+            \schemabox{Ceremoni\ae{}} \smallskip \schemabox{Miracula}
+          }
+        }
+        \smallskip
+        \Schema{1ex}{5ex}
+        {
+          \schemabox{Personas}
+        }
+        {
+          \schema
+          {
+            \schemabox{Ecclesi\ae{}}
+          }
+          {
+            \schemabox{Universalis} \smallskip \schemabox{Particularis}
+          }
+          \smallskip
+          \schemabox{Politi\ae, ut Magistratuum}
+          \smallskip
+          \schemabox{\OE{}conomi\ae, ut privatorum}
+        }
+      }\vskip2ex
+    }
+  }
+}
+$$
+\vfil
+
+\eject
+
+\ifx\fmtname\nameofeplain
+\verbatim \DoGroups |endverbatim
+\fi
+\DoGroups
+
+\vfil
+$$
+\Schema{-26.5ex}{21ex}
+{
+  \schemabox{Sacr\ae{}\\ litter\ae{}\\ loquuntur,\\ de}
+}
+{
+  \schema
+  {
+    \schemabox{\textsc{Deo}}
+  }
+  {
+    \schemabox{Uno, in Trinitate.}\smallskip\schemabox{Trino, in unitate.}
+  }
+  \Schema{-17ex}{23.4ex}
+  {
+    \vskip30ex
+    \schemabox{\textsc{Dei}\\ \textsc{Operibus}}
+  }
+  {
+    \schema
+    {
+      \schemabox{\textsc{Intra},\\ qu\ae{} sunt\\ divisa, ut}
+    }
+    {
+      \schemabox{\textsc{Patris}, ab \ae{}terno gignere.\\ \textsc{Filii}, ab \ae{}terno genitum esse.\\ \textsc{Spiritus Sancti}, ab utroque\\ ab \ae{}terno procedete.\strut}
+    }
+    \medskip
+    \Schema{-2ex}{21ex}
+    {
+      \schemabox{\textsc{Extra},\\ qu\ae{} sunt\\ indivisa;\\ tervata\\ tamen\\ cujusque\\ person\ae{}\\ divinitatis\\ sua pro-\\prietate}
+    }
+    {
+      \Schema{-0.8ex}{6.4ex}
+      {
+        \schemabox{Creatione\\ natur\ae{}}
+      }
+      {
+        \schema
+        {
+          \schemabox{Brute ut}
+        }
+        {
+          \schemabox{C\oe{}li} \smallskip \schemabox{Elementorum} \smallskip \schemabox{Mundi}
+        }
+        \smallskip
+        \schema
+        {
+          \schemabox{\ifx\fmtname\nameoflatex\gk{logik~hs}\else\gk{logik\=es}\fi, ut}
+        }
+        {
+          \schemabox{Angelorum.} \smallskip \schemabox{Hominum: Ad\ae{},\\ Ev\ae{} \& procreatorum\\ exipsis.\strut}
+        }
+      }
+      \schema
+      {
+        \schemabox{Sustenatione\\ natur\ae{} laps\ae{},}
+      }
+      {
+        \schemabox{Angelorum malorum,} \smallskip \schemabox{Hominum: Ad\ae{}, Ev\ae{}\\ \& procreatorum exipsis.}
+      }
+      \Schema{2.6ex}{8.8ex}
+      {
+        \schemabox{Beneficiis\\ erga Ecc-\\ lesiam: ea\\ versantur\\ aut circa}
+      }
+      {
+        \Schema{2.2ex}{7ex}
+        {
+          \schemabox{Res, ut}
+        }
+        {
+          \schema
+          {
+            \schemabox{Verbum}
+          }
+          {
+            \schemabox{Legis} \smallskip \schemabox{Evangelii} \smallskip \schemabox{Sacramentorum}
+          }
+          \smallskip
+          \schema
+          {
+            \schemabox{Signa vel Veteris\\ vel Novi Testa-\\ mentum ut sunt:}
+          }
+          {
+            \schemabox{Ceremoni\ae{}} \smallskip \schemabox{Miracula}
+          }
+        }
+        \smallskip
+        \Schema{0.6ex}{5.5ex}
+        {
+          \schemabox{Personas}
+        }
+        {
+          \schema
+          {
+            \schemabox{Ecclesi\ae{}}
+          }
+          {
+            \schemabox{Universalis} \smallskip \schemabox{Particularis}
+          }
+          \smallskip
+          \schemabox{Politi\ae, ut Magistratuum}
+          \smallskip
+          \schemabox{\OE{}conomi\ae, ut privatorum}
+        }
+      }\vskip2ex
+    }
+  }
+}
+$$
+\vfil
+\egroup
+
+\eject
+
+$$
+\Schema{-1.4ex}{10ex}
+{
+  \schemabox{Qu\ae{} sit\\ \textsc{Dei}, vel}
+}
+{
+  \Schema{-1ex}{5ex}
+  {
+    \schemabox{\textsc{Essentia}, in}
+  }
+  {
+    \vskip1ex\schemabox{Unitate divina,}
+    \medskip
+    \Schema{0ex}{3.4ex}
+    {
+      \schemabox{Tribus perso-\\ nis divinitatis}
+    }
+    {
+      \Schema[close]{0ex}{3.4ex}
+      {
+        \NudgeSB\schemabox{Patre,\\ Filio,\\ Spiritui Sancto}
+      }
+      {
+        \schemabox{\ifx\fmtname\nameoflatex\gk{<omoous'iois}\else\gk{homoousiois}\fi\\ \& co\ae{}ternis}
+      }
+    }
+  }
+  \medskip
+  \Schema{-0.2ex}{6.4ex}
+  {
+    \schemabox{\textsc{Voluntas},\\ revelatur in\\ actione, sive}
+  }
+  {
+    \Schema{0ex}{3.4ex}
+    {
+      \schemabox{Universali}
+    }
+    {
+      \Schema[close]{0ex}{3.4ex}
+      {
+        \schemabox{Creationis,\\Sustenationis,\\ Propagationis,}
+      }
+      {
+        \schemabox{rerum creatarum.}
+      }
+    }
+    \medskip
+    \schema
+    {
+      \schemabox{Speciali, in beneficiis\\ erga Ecclesiam, eam}
+    }
+    {
+      \schemabox{Colligendo.\\ Justificando.\\ Conservando.\\
+      Glorificando.}
+    }
+  }
+}
+$$
+
+\vfill
+% Use here in Plain TeX.
+\newbox\mybox
+$$
+\Schema{-0.2ex}{14.4ex}
+{\schemabox{\bf Curricula\\\bf Texts}}
+{
+  \DoBrackets%
+  % Doable in LaTeX, not in Plain TeX, because \outer.
+  % \newbox\mybox%
+  \setbox\mybox=\hbox{\bf III. Philosophical }%
+  \dimen0=\wd\mybox%
+  \schema
+    {\schemabox[\dimen0]{\bf I. General\\Studies}}
+    {\schemabox{1. Collected Works\\2. Encyclopedias}}
+  \smallskip
+  \schema
+    {\schemabox[\dimen0]{\bf II. Literary\\Disciplines}}
+    {\schemabox{1. Philology\\
+     2. Historical Introduction\\
+     3. Literary Theory\\
+     4. Application}}
+  \smallskip
+  \schema
+      {\schemabox[\dimen0]{\bf III. Philosophical\\Disciplines}}
+      {\schemabox{1. Source Texts\\
+       2. History of Philosophy\\
+       3. General Surveys\\
+       4. Specific Studies}}
+  \smallskip
+  \schema
+      {\schemabox[\dimen0]{\bf IV. Historical\\Disciplines}}
+      {\schemabox{1. General Surveys\\
+       2. Specialized Works}}
+}
+$$
+\ifx\fmtname\nameoflatex
+  \end{document}
+\else
+  \ifx\fmtname\nameoflollipop
+    \Stop
+  \else
+    \bye
+  \fi
+\fi
+%examplesvb
+%</examples>
 \endinput
-%</package>

Deleted: trunk/Master/texmf-dist/source/generic/schemata/schemata.ins
===================================================================
--- trunk/Master/texmf-dist/source/generic/schemata/schemata.ins	2020-11-24 18:35:36 UTC (rev 56993)
+++ trunk/Master/texmf-dist/source/generic/schemata/schemata.ins	2020-11-24 22:11:37 UTC (rev 56994)
@@ -1,78 +0,0 @@
-%%
-%% This is file `schemata.ins',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% schemata.dtx  (with options: `install')
-%% 
-%% --------:| ----------------------------------------------------------------
-%% schemata:| Generic package to aid construction of topical categories
-%%   Author:| Charles P. Schaum
-%%   E-mail:| charles dot schaum at comcast.net
-%%  License:| Released under the LaTeX Project Public License v1.3c or later
-%%      See:| http://www.latex-project.org/lppl.txt
-%% 
-\input docstrip.tex
-\keepsilent
-\askforoverwritefalse
-\preamble
-
---------:| ----------------------------------------------------------------
-schemata:| Generic package to aid construction of topical categories
-  Author:| Charles P. Schaum
-  E-mail:| charles dot schaum at comcast.net
- License:| Released under the LaTeX Project Public License v1.3c or later
-     See:| http://www.latex-project.org/lppl.txt
-
-\endpreamble
-\postamble
-
-Copyright (C) 2020 by Charles P. Schaum <charles dot schaum at comcast.net>
-
-This work may be distributed and/or modified under the
-conditions of the LaTeX Project Public License (LPPL), either
-version 1.3c of this license or (at your option) any later
-version.  The latest version of this license is in the file:
-
-http://www.latex-project.org/lppl.txt
-
-This work is "maintained" (as per LPPL maintenance status) by
-Charles P. Schaum.
-
-This work consists of the file schemata.dtx, schematest.tex,
-  schemata.png, and a Makefile.
-Running "make" generates the derived files README, schemata.pdf,
-  and schemata.sty.
-Running "make inst" installs the files in the user's TeX tree.
-Running "make install" installs the files in the local TeX tree.
-
-\endpostamble
-
-\usedir{tex/generic/schemata}
-\generate{
-  \file{\jobname.sty}{\from{\jobname.dtx}{package}}
-}
-\endbatchfile
-%% 
-%% Copyright (C) 2020 by Charles P. Schaum <charles dot schaum at comcast.net>
-%% 
-%% This work may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License (LPPL), either
-%% version 1.3c of this license or (at your option) any later
-%% version.  The latest version of this license is in the file:
-%% 
-%% http://www.latex-project.org/lppl.txt
-%% 
-%% This work is "maintained" (as per LPPL maintenance status) by
-%% Charles P. Schaum.
-%% 
-%% This work consists of the file schemata.dtx, schematest.tex,
-%%   schemata.png, and a Makefile.
-%% Running "make" generates the derived files README, schemata.pdf,
-%%   and schemata.sty.
-%% Running "make inst" installs the files in the user's TeX tree.
-%% Running "make install" installs the files in the local TeX tree.
-%% 
-%%
-%% End of file `schemata.ins'.

Modified: trunk/Master/texmf-dist/tex/generic/schemata/schemata.sty
===================================================================
--- trunk/Master/texmf-dist/tex/generic/schemata/schemata.sty	2020-11-24 18:35:36 UTC (rev 56993)
+++ trunk/Master/texmf-dist/tex/generic/schemata/schemata.sty	2020-11-24 22:11:37 UTC (rev 56994)
@@ -6,19 +6,26 @@
 %%
 %% schemata.dtx  (with options: `package')
 %% 
-%% --------:| ----------------------------------------------------------------
-%% schemata:| Generic package to aid construction of topical categories
-%%   Author:| Charles P. Schaum
-%%   E-mail:| charles dot schaum at comcast.net
-%%  License:| Released under the LaTeX Project Public License v1.3c or later
-%%      See:| http://www.latex-project.org/lppl.txt
+%% This is a generated file.
 %% 
+%% Copyright (C) 2020 by Charles P. Schaum <charles[dot]schaum at comcast.net>
+%% 
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.3 of this license
+%% or (at your option) any later version.  The latest version of this
+%% license is in:
+%% 
+%%    http://www.latex-project.org/lppl.txt
+%% 
+%% and version 1.3 or later is part of all distributions of LaTeX version
+%% 2005/12/01 or later.
+%% 
 {\expandafter}\expandafter\ifx \csname schemataLaTeX\endcsname\relax
   \def\schemataLaTeX{LaTeX2e}\fi
 \ifx\fmtname\schemataLaTeX
-\expandafter\NeedsTeXFormat\expandafter{\schemataLaTeX}
+\expandafter\NeedsTeXFormat\expandafter{\schemataLaTeX}[2005/12/01]
 \ProvidesPackage{schemata}
-  [2020/03/14 v1.1 generic package to aid construction of topical categories]
+  [2020/11/23 1.2 generic package to aid construction of topical categories]
 \fi
 \ifx\fmtname\schemataLaTeX\else
   \catcode`@=11\relax
@@ -101,9 +108,9 @@
 \ifx\fmtname\schemataLaTeX
   \newcommand*{\schemabox}[2][0pt]{\@schemata at schemabox[#1]{#2}}
 \else
-  \def\schemabox{\futurelet\testchar\@schemata at schemab@x}
+  \def\schemabox{\futurelet\@schemata at testchar\@schemata at schemab@x}
   \def\@schemata at schemab@x{%
-    \ifx[\testchar
+    \ifx[\@schemata at testchar
       \let\next\@schemata at schemabox%
     \else
       \let\next\@schemata@@schemab at x%
@@ -115,23 +122,27 @@
 \def\@schemata at schemabox[#1]#2{%
   \ifinner
     \if at schemata@LCBox
-      \def\@Adj{}%
-      \if at schemata@SWBox\def\@Adj{\strut}\fi
+      \def\@schemata at Adj{}%
+      \if at schemata@SWBox\def\@schemata at Adj{\strut}\fi
     \else
-      \def\@Adj{\strut}%
-      \if at schemata@SWBox\def\@Adj{}\fi
+      \def\@schemata at Adj{\strut}%
+      \if at schemata@SWBox\def\@schemata at Adj{}\fi
     \fi
     \if at schemata@NudgeBox
-      \let\@Nudge\SBNudgeFactor%
+      \let\@schemata at Nudge\SBNudgeFactor%
     \else
-      \def\@Nudge{}%
+      \def\@schemata at Nudge{}%
     \fi
     \ifdim#1<1pt
-      \def\\{\@Nudge\egroup\hbox\bgroup\ignorespaces }%
-      \vbox{\hbox\bgroup\@Adj\ignorespaces #2\@Nudge\egroup}%
+      \def\\{\@schemata at Nudge\egroup\hbox\bgroup\ignorespaces }%
+      \vbox{\hbox\bgroup%
+        \@schemata at Adj\ignorespaces #2\@schemata at Nudge%
+        \egroup}%
     \else
       \def\\{\hfil\egroup\hbox to #1\bgroup\ignorespaces }%
-      \vbox{\hbox to #1\bgroup\@Adj\ignorespaces #2\hfil\egroup}%
+      \vbox{\hbox to #1\bgroup%
+      \@schemata at Adj\ignorespaces #2\hfil%
+      \egroup}%
     \fi
   \else
     #2%
@@ -143,9 +154,9 @@
   \newcommand{\schema}[3][open]{%
     \@schemata at schema[#1]{#2}{#3}}
 \else
-  \long\def\schema{\futurelet\testchar\@schemata at schem@}
+  \long\def\schema{\futurelet\@schemata at testchar\@schemata at schem@}
   \long\def\@schemata at schem@{%
-    \ifx[\testchar
+    \ifx[\@schemata at testchar
       \let\next\@schemata at schema%
     \else
       \let\next\@schemata@@schem@%
@@ -156,8 +167,8 @@
     \@schemata at schema[open]{#1}{#2}}
 \fi
 \long\def\@schemata at schema[#1]#2#3{%
-  \def\@ption{#1}\def\@pen{open}%
-  \ifx\@ption\@pen
+  \def\@schemata at option{#1}\def\@schemata at open{open}%
+  \ifx\@schemata at option\@schemata at open
     \setbox\@schemata at rhs=\vbox{#3}%
     \@schemata at rheight=\ht\@schemata at rhs%
     \advance\@schemata at rheight\dp\@schemata at rhs%
@@ -179,9 +190,9 @@
   \newcommand{\Schema}[5][open]{%
     \@schemata at Schema[#1]{#2}{#3}{#4}{#5}}
 \else
-  \long\def\Schema{\futurelet\testchar\@schemata at Schem@}
+  \long\def\Schema{\futurelet\@schemata at testchar\@schemata at Schem@}
   \long\def\@schemata at Schem@{%
-    \ifx[\testchar
+    \ifx[\@schemata at testchar
       \let\next\@schemata at Schema%
     \else
       \let\next\@schemata@@Schem@%
@@ -192,10 +203,10 @@
     \@schemata at Schema[open]{#1}{#2}{#3}{#4}}
 \fi
 \long\def\@schemata at Schema[#1]#2#3#4#5{%
-  \def\@ption{#1}%
-  \def\@pen{open}%
+  \def\@schemata at option{#1}%
+  \def\@schemata at open{open}%
   \dimen0=#2%
-  \ifx\@ption\@pen
+  \ifx\@schemata at option\@schemata at open
     \hbox{$\vcenter{\vskip1.44265\dimen0#4}%
       \@schemata at biglbrace{#2}{#3}\vcenter{#5}$}%
   \else
@@ -282,25 +293,6 @@
 \ifx\fmtname\schemataLaTeX\else
   \catcode`@=12\relax
 \fi
-%% 
-%% Copyright (C) 2020 by Charles P. Schaum <charles dot schaum at comcast.net>
-%% 
-%% This work may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License (LPPL), either
-%% version 1.3c of this license or (at your option) any later
-%% version.  The latest version of this license is in the file:
-%% 
-%% http://www.latex-project.org/lppl.txt
-%% 
-%% This work is "maintained" (as per LPPL maintenance status) by
-%% Charles P. Schaum.
-%% 
-%% This work consists of the file schemata.dtx, schematest.tex,
-%%   schemata.png, and a Makefile.
-%% Running "make" generates the derived files README, schemata.pdf,
-%%   and schemata.sty.
-%% Running "make inst" installs the files in the user's TeX tree.
-%% Running "make install" installs the files in the local TeX tree.
-%% 
+\endinput
 %%
 %% End of file `schemata.sty'.



More information about the tex-live-commits mailing list.