From d514da93f0c807683bc53dab573bc0900c64b3c9 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Tue, 12 Oct 2010 00:14:10 +0000
Subject: texshade (11oct10)

git-svn-id: svn://tug.org/texlive/trunk@20065 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/tex/latex/texshade/texshade.sty | 256 +++++++++++++++++++---
 1 file changed, 226 insertions(+), 30 deletions(-)

(limited to 'Master/texmf-dist/tex/latex/texshade/texshade.sty')

diff --git a/Master/texmf-dist/tex/latex/texshade/texshade.sty b/Master/texmf-dist/tex/latex/texshade/texshade.sty
index d8ab1cccdc6..03c74861193 100644
--- a/Master/texmf-dist/tex/latex/texshade/texshade.sty
+++ b/Master/texmf-dist/tex/latex/texshade/texshade.sty
@@ -13,8 +13,8 @@
 %% 
 
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{texshade}[2010/03/01 LaTeX TeXshade (v1.21)]
-\message{Package `texshade', Version 1.21 of 2010/03/01.}
+\ProvidesPackage{texshade}[2010/10/11 LaTeX TeXshade (v1.22)]
+\message{Package `texshade', Version 1.22 of 2010/10/11.}
 
 \PassOptionsToPackage{dvips}{color}
 \PassOptionsToPackage{dvips}{graphicx}
@@ -114,6 +114,7 @@
 \newif\ifall@fshade   \newif\ifregionalemph
 \newif\ifregionallower
 \newif\ifframe@       \newif\ifregionaltint
+\newif\ifshading@
 \newif\ifshow@logo    \newif\ifshow@sublogo
 \newif\ifhidechar     \newif\ifsh@wg@ps
 \newif\ifsimmode
@@ -130,6 +131,7 @@
 \newif\ifbbbottomfeaturenow
 \newif\ifbbbbottomfeaturenow
 \newif\ifframenow
+\newif\ifshadingnow
 \newif\iffix@
 
 \expandafter\ifx\csname mdqon\endcsname\relax
@@ -141,7 +143,7 @@
 \def\gre@ter{>} \def\sm@ller{<} \def\N@{N} \def\equ@l{=} \def\H@{H}
 \def\gap@char{.} \def\dom@char{{\dom@rule}} \def\yes{yes} \def\y@{y} \def\n@{n}
 \def\o@{o} \def\d@t{.} \def\questi@n{?} \def\st@p@char{*} \def\semic@n{;}
-\def\br@cket{[}
+\def\br@cket{[} \def\p@r@gr@ph{�}
 \def\@TOM{ATOM} \def\C@lpha{CA} \def\@point@{point} \def\@line@{line} \def\@plane@{plane}
 \def\gap@rule{\rule[0.3\box@height]{\box@width}{\gap@rulethick}}
 \def\dom@rule{\vrule depth\box@depth height\box@height width\domgap@rulethick}
@@ -2297,6 +2299,8 @@
                     \csname stack@@lowerreg#1\endcsname}
       \expandafter\xdef\csname stack@framereg\the\loopcount\endcsname{%
                     \csname stack@@framereg#1\endcsname}
+      \expandafter\xdef\csname stack@shadingreg\the\loopcount\endcsname{%
+                    \csname stack@@shadingreg#1\endcsname}
       \expandafter\xdef\csname stack@top\the\loopcount\endcsname{%
                     \csname stack@@top#1\endcsname}
       \expandafter\xdef\csname stack@ttop\the\loopcount\endcsname{%
@@ -2350,6 +2354,8 @@
             \csname stack@lowerreg\the\loopcount\endcsname}
          \expandafter\xdef\csname stack@@framereg\the\loopcount\endcsname{%
             \csname stack@framereg\the\loopcount\endcsname}
+         \expandafter\xdef\csname stack@@shadingreg\the\loopcount\endcsname{%
+            \csname stack@shadingreg\the\loopcount\endcsname}
          \expandafter\xdef\csname stack@@top\the\loopcount\endcsname{%
             \csname stack@top\the\loopcount\endcsname}
          \expandafter\xdef\csname stack@@ttop\the\loopcount\endcsname{%
@@ -2639,6 +2645,8 @@
             \csname stack@lowerreg\the\innerloopcount\endcsname}
       \expandafter\xdef\csname stack@framereg\the\loopcount\endcsname{%
             \csname stack@framereg\the\innerloopcount\endcsname}
+      \expandafter\xdef\csname stack@shadingreg\the\loopcount\endcsname{%
+            \csname stack@shadingreg\the\innerloopcount\endcsname}
       \expandafter\xdef\csname stack@top\the\loopcount\endcsname{%
             \csname stack@top\the\innerloopcount\endcsname}
       \expandafter\xdef\csname stack@ttop\the\loopcount\endcsname{%
@@ -3051,6 +3059,23 @@
    \sort@emphstack
    \expandafter\xdef\csname stack@framereg\seq@\endcsname{\tmpstack}
 }
+\def\getregion@fromshadingstack#1{%
+   \xdef\temp@{#1}
+   \xdef\first@{\csname stack@shadingreg\temp@\endcsname}
+   \expandafter\get@fromemphstack\first@
+   \expandafter\xdef\csname shadingstart\temp@\endcsname{\first@}
+   \expandafter\xdef\csname shadingstop\temp@\endcsname{\second@}
+   \expandafter\xdef\csname shadingstyle\temp@\endcsname{\third@}
+   \expandafter\xdef\csname stack@shadingreg\temp@\endcsname{\last@}
+}
+\def\get@shadingregions#1..#2,#3@{%
+   \shading@true
+   \xdef\st@rt{#1} \xdef\st@p{#2} \xdef\list@{#3}
+   \xdef\last@{\csname stack@shadingreg\seq@\endcsname}
+   \xdef\tmpstack{}
+   \sort@emphstack
+   \expandafter\xdef\csname stack@shadingreg\seq@\endcsname{\tmpstack}
+}
 \def\getregion@fromfstack#1{%
    \xdef\temp@{#1}
    \xdef\first@{\csname stack@\bottop@\temp@\endcsname}
@@ -3088,14 +3113,6 @@
    \sort@fstack
    \expandafter\xdef\csname stack@\bottop@\seq@\endcsname{\tmpstack}
 }
-\def\get@frameregions#1..#2,#3@{%
-   \frame@true
-   \xdef\st@rt{#1} \xdef\st@p{#2} \xdef\list@{#3}
-   \xdef\last@{\csname stack@framereg\seq@\endcsname}
-   \xdef\tmpstack{}
-   \sort@emphstack
-   \expandafter\xdef\csname stack@framereg\seq@\endcsname{\tmpstack}
-}
 \def\getarrow@shape#1#2#3#4&{%
    \xdef\first@@{#1}\xdef\second@@{#2}\xdef\third@@{#3}
    \if\first@@ v
@@ -3243,9 +3260,9 @@
                \xdef\temp@{tint}
                \ifx\temp@\temp@@
                   \regionaltinttrue
-                  \xdef\last@{\csname stack@tintreg\seq@\endcsname}     \message{((last:\last@))}
+                  \xdef\last@{\csname stack@tintreg\seq@\endcsname}
                   \sort@emphstack
-                  \expandafter\xdef\csname stack@tintreg\seq@\endcsname{\tmpstack} \message{((tmp:\tmpstack))}
+                  \expandafter\xdef\csname stack@tintreg\seq@\endcsname{\tmpstack}
                \else
                \xdef\temp@{frame}
                \ifx\temp@\temp@@
@@ -3254,6 +3271,13 @@
                   \sort@emphstack
                   \expandafter\xdef\csname stack@framereg\seq@\endcsname{\tmpstack}
                \else
+               \xdef\temp@{shading}
+               \ifx\temp@\temp@@
+                  \shading@true
+                  \xdef\last@{\csname stack@shadingreg\seq@\endcsname}
+                  \sort@emphstack
+                  \expandafter\xdef\csname stack@shadingreg\seq@\endcsname{\tmpstack}
+               \else
                \xdef\temp@{ttttop}
                \ifx\temp@\temp@@
                   \xdef\last@{\csname stack@ttttop\seq@\endcsname}
@@ -3314,10 +3338,15 @@
                \fi
                \fi
                \fi
+               \fi
                \xdef\fifth@@{\m@tif} \expandafter\get@third@\fifth@@
                \xdef\nineth@@{n}
             \fi
          \else
+            \ifx\nineth@@\y@
+               \xdef\first@@{\second@@\first@@}
+               \advance\temp@count by -1
+            \fi
             \xdef\nineth@@{n} \xdef\st@p{n}
             \xdef\fifth@@{\m@tif} \expandafter\get@third@\fifth@@
          \fi
@@ -3355,6 +3384,10 @@
                                                                  \csname framestop\the\loopcount\endcsname;%
                                                                  \csname framestyle\the\loopcount\endcsname;%
                                                                  \csname stack@framereg\the\loopcount\endcsname}
+      \expandafter\xdef\csname stack@shadingreg\the\loopcount\endcsname{\csname shadingstart\the\loopcount\endcsname;%
+                                                                 \csname shadingstop\the\loopcount\endcsname;%
+                                                                 \csname shadingstyle\the\loopcount\endcsname;%
+                                                                 \csname stack@shadingreg\the\loopcount\endcsname}
       \expandafter\xdef\csname stack@ttttop\the\loopcount\endcsname{\csname textttttop\the\loopcount\endcsname;%
                                                                  \csname startttttop\the\loopcount\endcsname;%
                                                                  \csname stopttttop\the\loopcount\endcsname;%
@@ -3417,6 +3450,7 @@
       \expandafter\getregion@fromemphstack{\the\loopcount}
       \expandafter\getregion@fromlowerstack{\the\loopcount}
       \expandafter\getregion@fromframestack{\the\loopcount}
+      \expandafter\getregion@fromshadingstack{\the\loopcount}
       \xdef\bottop@{top}       \expandafter\getregion@fromfstack{\the\loopcount}
       \xdef\bottop@{ttop}      \expandafter\getregion@fromfstack{\the\loopcount}
       \xdef\bottop@{tttop}     \expandafter\getregion@fromfstack{\the\loopcount}
@@ -3439,6 +3473,8 @@
    \ifx\temp@\temp@@ \xdef\style@{0} \fi
    \xdef\temp@{frame}
    \ifx\temp@\temp@@ \xdef\style@{0} \fi
+   \xdef\temp@{shading}
+   \ifx\temp@\temp@@ \xdef\style@{0} \fi
    \xdef\temp@{#1#2}
    \xdef\first@{#1}
    \ifx\first@\br@cket
@@ -5386,6 +5422,28 @@
      \fi
    \fi
 }
+\def\changeshadingcolors#1#2#3{%
+   \xdef\seq@{#1}
+   \xdef\temp@{consensus} \ifx\seq@\temp@ \xdef\seq@{0} \fi
+   \xdef\first@{\seq@ @} \expandafter\check@letter\first@
+   \xdef\first@{\seq@}
+   \ifletter \get@name@number \xdef\seq@{\first@} \fi
+   \ifnum\seq@>\seq@count
+     \message{<Ignored seq `\seq@' in \noexpand\changeshadingcolors>}
+   \else
+     \xdef\@ll{#3}
+     \xdef\list@{#2,&}
+     \xdef\temp@@{shading} \loopcount=0
+     \xdef\temp@{#2,,,:,,,,@}    \expandafter\test@PDB\temp@
+     \ifx\list@\ampers@nd
+     \else
+        \loop
+           \xdef\list@{\list@ @}
+           \expandafter\get@shadingregions\list@
+        \ifx\list@\ampers@nd\else\repeat
+     \fi
+   \fi
+}
 \def\bargraphstretch#1{\def\b@r@stretch{#1}}
 \def\colorscalestretch#1{\def\sc@le@stretch{#1}}
 \def\rm@@measure#1#2@{%
@@ -5770,7 +5828,9 @@
    \xdef\f@color{\f@@color}
    \xdef\temp@{#4&}
    \ifx\temp@\ampers@nd
+      \xdef\list@{#3,&}
       \xdef\style@{&}
+      \def\f@text@{#5}
    \else
       \xdef\last@{restriction}
       \ifx\second@@\last@
@@ -6931,6 +6991,27 @@
      \expandafter\xdef\csname funcm@tch\first@\endcsname{#4}
      \expandafter\def\csname func@style\first@\endcsname{\csname text#5\endcsname}
   \fi}
+\def\defshadingcolors#1{%
+   \expandafter\xdef\csname TextNomatch@#1\endcsname{\TextNomatch}
+   \expandafter\xdef\csname Nomatch@#1\endcsname{\Nomatch}
+   \expandafter\xdef\csname resn@m@tch@#1\endcsname{\resn@m@tch}
+
+   \expandafter\xdef\csname TextSimilar@#1\endcsname{\TextSimilar}
+   \expandafter\xdef\csname Similar@#1\endcsname{\Similar}
+   \expandafter\xdef\csname ressimm@tch@#1\endcsname{\ressimm@tch}
+
+   \expandafter\xdef\csname TextIdentical@#1\endcsname{\TextIdentical}
+   \expandafter\xdef\csname Identical@#1\endcsname{\Identical}
+   \expandafter\xdef\csname resm@tch@#1\endcsname{\resm@tch}
+
+   \expandafter\xdef\csname TextAllmatch@#1\endcsname{\TextAllmatch}
+   \expandafter\xdef\csname Allmatch@#1\endcsname{\Allmatch}
+   \expandafter\xdef\csname res@llm@tch@#1\endcsname{\res@llm@tch}
+
+   \expandafter\xdef\csname gap@fg@#1\endcsname{\gap@fg}
+   \expandafter\xdef\csname gap@bg@#1\endcsname{\gap@bg}
+
+}
 \def\shadingcolors#1{%
   \gapcolors{Black}{White}
   \nomatchresidues{Black}{White}{upper}{up}
@@ -6955,13 +7036,31 @@
     \conservedresidues{White}{Black}{upper}{up}
     \allmatchresidues{White}{Black}{upper}{sl}
   \else \xdef\second@{grays}
-  \ifx\first@\second@
-  \else \message{<Undefined color set - using `grays'>} \xdef\first@{grays}\fi
   \ifx\first@\second@
     \similarresidues{Black}{LightGray}{upper}{up}
     \conservedresidues{White}{DarkGray}{upper}{up}
     \allmatchresidues{White}{Black}{upper}{up}
-  \fi\fi\fi\fi\fi}
+  \else
+    \xdef\TextNomatch{\csname TextNomatch@#1\endcsname}
+    \xdef\Nomatch    {\csname Nomatch@#1\endcsname}
+    \xdef\resn@m@tch {\csname resn@m@tch@#1\endcsname}
+    \xdef\TextSimilar{\csname TextSimilar@#1\endcsname}
+    \xdef\Similar    {\csname Similar@#1\endcsname}
+    \xdef\ressimm@tch{\csname ressimm@tch@#1\endcsname}
+    \xdef\TextIdentical{\csname TextIdentical@#1\endcsname}
+    \xdef\Identical    {\csname Identical@#1\endcsname}
+    \xdef\resm@tch     {\csname resm@tch@#1\endcsname}
+    \xdef\TextAllmatch{\csname TextAllmatch@#1\endcsname}
+    \xdef\Allmatch    {\csname Allmatch@#1\endcsname}
+    \xdef\res@llm@tch {\csname res@llm@tch@#1\endcsname}
+    \xdef\gap@fg    {\csname gap@fg@#1\endcsname}
+    \xdef\gap@bg    {\csname gap@bg@#1\endcsname}
+    \xdef\domgap@fg {\csname domgap@fg@#1\endcsname}
+    \xdef\domgap@bg {\csname domgap@bg@#1\endcsname}
+  \fi\fi\fi\fi\fi
+  \xdef\first@{#1}
+  \expandafter\defshadingcolors{\first@}
+}
 \def\nomatchresidues#1#2#3#4  {\xdef\first@{#1&}\xdef\second@{#2&}\xdef\third@{#3&}
                              \xdef\last@{\ampers@nd}
                              \ifx\first@\last@\else\def\TextNomatch{#1}
@@ -8826,6 +8925,48 @@
       \ifnum\loopcount<\seq@count \repeat
 }
 
+\def\getregion@fromshadingstack@first{%
+      \expandafter\getregion@fromshadingstack{\the\loopcount}
+      \expandafter\ifx\csname shadingstart\the\loopcount\endcsname\ampers@nd
+      \else
+      \expandafter\ifnum\csname shadingstop\the\loopcount\endcsname<\first@@
+         \getregion@fromshadingstack@first
+      \fi
+      \fi
+}
+
+\def\calc@shading{%
+      \xdef\shading@style{&}
+      \loopcount=-1
+      \loop
+         \advance\loopcount by 1
+         \ifnum\loopcount=0 \xdef\first@@{\the\cons@count}
+         \else \xdef\first@@{\csname res@count\the\loopcount\endcsname} \fi
+         \expandafter\ifx\csname shadingstart\the\loopcount\endcsname\ampers@nd
+         \else
+         \expandafter\ifnum\csname shadingstart\the\loopcount\endcsname>\first@@
+         \else
+            \expandafter\ifnum\csname shadingstop\the\loopcount\endcsname<\first@@
+               \getregion@fromshadingstack@first
+            \else
+               \xdef\shading@style{\csname shadingstyle\the\loopcount\endcsname}
+               \expandafter\ifnum\csname shadingstop\the\loopcount\endcsname=\first@@
+                  \expandafter\getregion@fromshadingstack{\the\loopcount}
+               \fi
+            \fi
+         \fi\fi
+      \ifnum\loopcount<\seq@count \repeat
+      \loopcount=0
+      \loop
+         \advance\loopcount by 1
+         \ifx\shading@style\ampers@nd
+         \else
+             \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+                              \csname seq\the\loopcount\endcsname�\shading@style)}
+         \fi
+      \ifnum\loopcount<\seq@count \repeat
+}
+
 \def\getregion@fromemphstack@first{%
       \expandafter\getregion@fromemphstack{\the\loopcount}
       \expandafter\ifx\csname emphstart\the\loopcount\endcsname\ampers@nd
@@ -10551,6 +10692,7 @@
     \ifregionalemphnow  \calc@regemph  \fi
     \ifregionallowernow \calc@reglower \fi
     \ifframenow         \calc@frame    \fi
+    \ifshadingnow\iffuncmode\else\ifT@coffee\else   \calc@shading \fi\fi\fi
     \iftopfeaturenow       \xdef\bottop@{top}       \calc@feature \fi
     \ifttopfeaturenow      \xdef\bottop@{ttop}      \calc@feature \fi
     \iftttopfeaturenow     \xdef\bottop@{tttop}     \calc@feature \fi
@@ -10733,6 +10875,16 @@
             \fi
          \fi
     \fi
+    \ifshading@
+         \expandafter\ifx\csname shadingstart\the\loopcount\endcsname\ampers@nd
+         \else
+            \expandafter\ifnum\csname shadingstart\the\loopcount\endcsname>%
+            \innerloopcount
+            \else
+               \shadingnowtrue
+            \fi
+         \fi
+    \fi
     \iftopfeature
        \xdef\bottop@{top}
          \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
@@ -10930,6 +11082,16 @@
             \fi
          \fi
     \fi
+    \ifshading@
+         \expandafter\ifx\csname shadingstart\the\loopcount\endcsname\ampers@nd
+         \else
+            \expandafter\ifnum\csname shadingstart\the\loopcount\endcsname>%
+            \innerloopcount
+            \else
+               \shadingnowtrue
+            \fi
+         \fi
+    \fi
     \iftopfeature
        \xdef\bottop@{top}
          \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
@@ -11271,6 +11433,14 @@
    \hbox to \number@width{\hss\numbertext@size{\temp@}\@kern}}\fi%
    \xdef\first@{#2@}%
 }
+\def\special@shading#1)#2#3#4@{%
+   \xdef\second@{@\second@#1}%
+   \xdef\third@{\second@}%
+   \xdef\first@{#4@}%
+   \xdef\second@{#3}%
+   \xdef\last@{#2}%
+    \def\res@@style{\csname relax\endcsname}%
+}
 \def\special@shade#1)#2#3#4@{%
    \xdef\second@{\second@#1}%
    \xdef\boxc@l@r{\csname bgseqregion\second@\endcsname}%
@@ -11285,6 +11455,8 @@
    \xdef\second@{#2}%
    \xdef\last@{#1}%
    \xdef\temp@@{}%
+   \xdef\third@{}%
+   \ifx\last@\p@r@gr@ph\expandafter\special@shading\first@\fi%
    \ifx\last@\ampers@nd\def\last@{0}\expandafter\special@shade\first@%
    \else%
    \ifT@coffee%
@@ -11303,25 +11475,34 @@
          \if\last@ /\def\last@{10}\fi
          \if\last@ !\def\last@{11}\fi
    \else%
-   \ifcase\last@\xdef\boxc@l@r{\Allmatch}\xdef\textc@l@r{\TextAllmatch}%
+   \ifcase\last@\xdef\boxc@l@r{\csname Allmatch\third@\endcsname}%
+             \xdef\textc@l@r{\csname TextAllmatch\third@\endcsname}%
              \def\res@@style{\all@style}%
-         \or\xdef\boxc@l@r{\Identical}\xdef\textc@l@r{\TextIdentical}%
+         \or\xdef\boxc@l@r{\csname Identical\third@\endcsname}%
+            \xdef\textc@l@r{\csname TextIdentical\third@\endcsname}%
              \def\res@@style{\id@style}%
-         \or\xdef\boxc@l@r{\Similar}\xdef\textc@l@r{\TextSimilar}%
+         \or\xdef\boxc@l@r{\csname Similar\third@\endcsname}%
+            \xdef\textc@l@r{\csname TextSimilar\third@\endcsname}%
              \def\res@@style{\sim@style}%
-         \or\xdef\boxc@l@r{\Nomatch}\xdef\textc@l@r{\TextNomatch}%
+         \or\xdef\boxc@l@r{\csname Nomatch\third@\endcsname}%
+            \xdef\textc@l@r{\csname TextNomatch\third@\endcsname}%
              \def\res@@style{\no@style}%
-         \or\xdef\boxc@l@r{\ConsNomatch}\xdef\textc@l@r{\ConsTextNomatch}%
+         \or\xdef\boxc@l@r{\csname ConsNomatch\third@\endcsname}%
+            \xdef\textc@l@r{\csname ConsTextNomatch\third@\endcsname}%
              \def\res@@style{\csname relax\endcsname}%
-         \or\xdef\boxc@l@r{\ConsMatch}\xdef\textc@l@r{\ConsTextMatch}%
+         \or\xdef\boxc@l@r{\csname ConsMatch\third@\endcsname}%
+            \xdef\textc@l@r{\csnam ConsTextMatch\third@\endcsname}%
              \def\res@@style{\csname relax\endcsname}%
-         \or\xdef\boxc@l@r{\ConsAllmatch}\xdef\textc@l@r{\ConsTextAllmatch}%
+         \or\xdef\boxc@l@r{\csname ConsAllmatch\third@\endcsname}%
+            \xdef\textc@l@r{\csname ConsTextAllmatch\third@\endcsname}%
              \def\res@@style{\csname relax\endcsname}%
-         \or\xdef\boxc@l@r{\gap@bg}\xdef\textc@l@r{\gap@fg}%
+         \or\xdef\boxc@l@r{\csname gap@bg\third@\endcsname}%
+            \xdef\textc@l@r{\csname gap@fg\third@\endcsname}%
              \def\res@@style{\csname relax\endcsname}%
          \or\xdef\boxc@l@r{White}\xdef\textc@l@r{White}%
              \def\res@@style{\csname relax\endcsname}%
-         \else\xdef\boxc@l@r{\domgap@bg}\xdef\textc@l@r{\domgap@fg}%
+         \else\xdef\boxc@l@r{\csname domgap@bg\endcsname}%
+              \xdef\textc@l@r{\csname domgap@fg\endcsname}%
              \def\res@@style{\csname relax\endcsname}%
    \fi\fi\fi\fi%
    \ifx\second@\comm@%
@@ -11365,6 +11546,8 @@
    \fi}
 \def\next@cons#1#2#3@{%
    \xdef\last@{#1}%
+   \xdef\third@{}%
+   \ifx\last@\p@r@gr@ph\expandafter\special@shading\first@\fi%
    \ifx\last@\ampers@nd\def\last@{0}\expandafter\special@shade\first@%
    \else%
    \ifx\collect@cons@colors\y@%
@@ -11417,13 +11600,17 @@
          \fi%
       \fi%
    \else%
-   \ifcase#1\xdef\boxc@l@r{\Allmatch}\xdef\textc@l@r{\TextAllmatch}%
+   \ifcase#1\xdef\boxc@l@r{\csname Allmatch\third@\endcsname}%
+            \xdef\textc@l@r{\csname TextAllmatch\third@\endcsname}%
              \def\res@@style{\all@style}%
-         \or\xdef\boxc@l@r{\Identical}\xdef\textc@l@r{\TextIdentical}%
+         \or\xdef\boxc@l@r{\csname Identical\third@\endcsname}%
+            \xdef\textc@l@r{\csname TextIdentical\third@\endcsname}%
              \def\res@@style{\id@style}%
-         \or\xdef\boxc@l@r{\Similar}\xdef\textc@l@r{\TextSimilar}%
+         \or\xdef\boxc@l@r{\csname Similar\third@\endcsname}%
+            \xdef\textc@l@r{\csname TextSimilar\third@\endcsname}%
              \def\res@@style{\sim@style}%
-         \or\xdef\boxc@l@r{\Nomatch}\xdef\textc@l@r{\TextNomatch}%
+         \or\xdef\boxc@l@r{\csname Nomatch\third@\endcsname}%
+            \xdef\textc@l@r{\csname TextNomatch\third@\endcsname}%
              \def\res@@style{\no@style}%
          \or\xdef\boxc@l@r{\ConsNomatch}\xdef\textc@l@r{\ConsTextNomatch}%
              \def\res@@style{\csname relax\endcsname}%
@@ -13801,6 +13988,7 @@
     \expandafter\xdef\csname stack@emphreg\the\loopcount\endcsname{&;&;&;@}
     \expandafter\xdef\csname stack@lowerreg\the\loopcount\endcsname{&;&;&;@}
     \expandafter\xdef\csname stack@framereg\the\loopcount\endcsname{&;&;&;@}
+    \expandafter\xdef\csname stack@shadingreg\the\loopcount\endcsname{&;&;&;@}
     \expandafter\xdef\csname stack@top\the\loopcount\endcsname{&;&;&;&;@}
     \expandafter\xdef\csname stack@ttop\the\loopcount\endcsname{&;&;&;&;@}
     \expandafter\xdef\csname stack@tttop\the\loopcount\endcsname{&;&;&;&;@}
@@ -13831,6 +14019,7 @@
        \expandafter\xdef\csname stack@emphreg\the\loopcount\endcsname{&;&;&;@}
        \expandafter\xdef\csname stack@lowerreg\the\loopcount\endcsname{&;&;&;@}
        \expandafter\xdef\csname stack@framereg\the\loopcount\endcsname{&;&;&;@}
+       \expandafter\xdef\csname stack@shadingreg\the\loopcount\endcsname{&;&;&;@}
        \expandafter\xdef\csname stack@top\the\loopcount\endcsname{&;&;&;&;@}
        \expandafter\xdef\csname stack@ttop\the\loopcount\endcsname{&;&;&;&;@}
        \expandafter\xdef\csname stack@tttop\the\loopcount\endcsname{&;&;&;&;@}
@@ -13880,6 +14069,7 @@
    \expandafter\getregion@fromemphstack{\the\loopcount}
    \expandafter\getregion@fromlowerstack{\the\loopcount}
    \expandafter\getregion@fromframestack{\the\loopcount}
+   \expandafter\getregion@fromshadingstack{\the\loopcount}
    \xdef\bottop@{top}       \expandafter\getregion@fromfstack{\the\loopcount}
    \xdef\bottop@{ttop}      \expandafter\getregion@fromfstack{\the\loopcount}
    \xdef\bottop@{tttop}     \expandafter\getregion@fromfstack{\the\loopcount}
@@ -13931,6 +14121,7 @@
        \expandafter\getregion@fromemphstack{\the\loopcount}
        \expandafter\getregion@fromlowerstack{\the\loopcount}
        \expandafter\getregion@fromframestack{\the\loopcount}
+       \expandafter\getregion@fromshadingstack{\the\loopcount}
        \xdef\bottop@{top}       \expandafter\getregion@fromfstack{\the\loopcount}
        \xdef\bottop@{ttop}      \expandafter\getregion@fromfstack{\the\loopcount}
        \xdef\bottop@{tttop}     \expandafter\getregion@fromfstack{\the\loopcount}
@@ -14153,6 +14344,11 @@
 \xdef\prfx{DNA}\clear@groups\clear@sims
 \clearfuncgroups
 \clear@simpairs
+\shadingcolors{blues}
+\shadingcolors{reds}
+\shadingcolors{greens}
+\shadingcolors{grays}
+\shadingcolors{black}
 \loopcount=\@lign@count
 \advance\loopcount by 1\relax
 \xdef\@lign@count{\the\loopcount}
@@ -14162,7 +14358,7 @@
 \expandafter\xdef\csname res@count0\endcsname{0}
 \xdef\allow@zero{n} \xdef\c@ns@shift{0}
 \regionalshadefalse\regionalemphfalse\regionallowerfalse\regionaltintfalse
-\frame@false
+\frame@false\shading@false
 \xdef\ruler@rot{0}
 \topfeaturefalse    \bottomfeaturefalse
 \ttopfeaturefalse   \bbottomfeaturefalse
-- 
cgit v1.2.3

