texlive[53305] Master/texmf-dist: schwalbe-chess (2jan20)

commits+karl at tug.org commits+karl at tug.org
Thu Jan 2 23:12:09 CET 2020


Revision: 53305
          http://tug.org/svn/texlive?view=revision&revision=53305
Author:   karl
Date:     2020-01-02 23:12:09 +0100 (Thu, 02 Jan 2020)
Log Message:
-----------
schwalbe-chess (2jan20)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/schwalbe-chess/README
    trunk/Master/texmf-dist/doc/latex/schwalbe-chess/schwalbe.pdf
    trunk/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx
    trunk/Master/texmf-dist/tex/latex/schwalbe-chess/schwalbe.cls
    trunk/Master/texmf-dist/tex/latex/schwalbe-chess/schwalbe.sty

Modified: trunk/Master/texmf-dist/doc/latex/schwalbe-chess/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/schwalbe-chess/README	2020-01-02 22:11:57 UTC (rev 53304)
+++ trunk/Master/texmf-dist/doc/latex/schwalbe-chess/README	2020-01-02 22:12:09 UTC (rev 53305)
@@ -1,5 +1,5 @@
 schwalbe --- A package for typesetting chessproblems
-Version v2.3 / Stefan Hoening 2012-2018
+Version v2.7 / Stefan Hoening 2012-2018
 
 CONTENTS
 

Modified: trunk/Master/texmf-dist/doc/latex/schwalbe-chess/schwalbe.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx	2020-01-02 22:11:57 UTC (rev 53304)
+++ trunk/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx	2020-01-02 22:12:09 UTC (rev 53305)
@@ -13,9 +13,9 @@
 %%
 %%
 % \fi
-% \def\fileversion{v2.3}
-% \def\docdate{2018/12/20}
-% \CheckSum{2056}
+% \def\fileversion{v2.7}
+% \def\docdate{2019/12/28}
+% \CheckSum{2122}
 % \changes{v1.1}{03 June 2011}{Reflecting change in command
 % @writename inside diagram.sty}
 % \changes{v1.2}{01 July 2011}{Added parameter for Band to Heft
@@ -46,6 +46,12 @@
 % avoid problems when including further packages inside 'schwalbe.tex'.\\
 % Added Abteilung commands in Urdrucke- und Loesungen-environments.}
 % \changes{v2.3}{18 December 2018}{Added commands Loeser and LoeserListe to collect abbreviations of solvernames in different sections of Loesungen}
+% \changes{v2.4}{21 September 2019}{Changed parameter <monat> in Heft command to be numeric.\\
+% Added command LoesungenBis to calculate the month to send solutions.}
+% \changes{v2.5}{29 September 2019}{Changed Loesungen environment to calculate issue month and year of solutions from
+% values given in Heft command.}
+% \changes{v2.6}{16 October 2019}{Moved do at dia@job redefinition to schwalbe.cls.}
+% \changes{v2.7}{28 December 2019}{Used new begin/end diagram hook command to deactivate/activate solslash before/after diagrams.}
 %
 % \DoNotIndex{\@arabic,\def,\@idxitem,\@ifnextchar,\@ifstar,
 % \@ne,\@ptsize,\ ,\advance,\AtEndOfPackage,\begin,\begingroup,
@@ -97,16 +103,16 @@
 % \begin{enumerate}
 % \item der Band, zu dem das Heft geh"ort
 % \item die Nummer des Heftes
-% \item der Monat des Erscheinens
+% \item der Monat des Erscheinens als Zahl
 % \item das Jahr des Erscheinens
 % \item die Seitennummer der ersten Seite des Heftes
 % \end{enumerate}
 %
-% Das August Heft 2011, das die fortlaufende Nummer 250 hat und mit
-% der Seitenummmer 177 beginnt wird demzufolge folgendermassen
+% Das Dezember Heft 2019, das die fortlaufende Nummer 299 hat und mit
+% der Seitenummmer 361 beginnt wird demzufolge folgendermassen
 % eingeleitet:
 %
-% \verb+\Heft{XXX}{250}{August}{2011}{177}+
+% \verb+\Heft{XXXIV}{299}{12}{2019}{361}+
 %
 % \DescribeEnv{Editorial}
 % Die \verb+Editorial+ Umgebung ben"otigt einen Parameter, der
@@ -198,9 +204,10 @@
 % \verb+retroart+ erläutert.
 %
 % \DescribeEnv{Loesungen}
-% Die Umgebung \verb+Loesungen+, innerhalb der die
-% L"osungsbesprechungen beschrieben werden, ben"otigt 2
-% Parameter:
+% Von der \verb+Loesungen+ Umgebung, gibt es eine *-Form, die sonst keine weiteren Parameter erwartet.
+% Heftnummer, Monat und Jahr der Lösung werden in diesem Fall automatisch aus
+% den Angaben des aktuellen Hefts ermittelt (3 Hefte bzw. 6 Monate zurück).
+% Ohne * benötigt die Umgebung \verb+Loesungen+ 2  Parameter:
 % \begin{enumerate}
 % \item die Nummer des Hefts mit den Urdrucken
 % \item Monat und Jahr dieses Hefts
@@ -424,9 +431,9 @@
 %    \begin{macrocode}
 %<*class>
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{schwalbe}[2017/01/31]
+\ProvidesClass{schwalbe}[2019/12/28]
 \LoadClass[11pt,a4paper]{article}
-\RequirePackage[12pt]{schwalbe}
+\RequirePackage[12pt]{schwalbe}[2019/12/28]
 \RequirePackage[T2A,T1]{fontenc}% fsRUS 140121
 \RequirePackage[koi8-r,utf8]{inputenc}% fsRUS 140121
 \RequirePackage[russian,german,english,ngerman]{babel}
@@ -531,23 +538,37 @@
 }
 %    \end{macrocode}
 %
+% Im Titel sowie bei den Urdrucken und L"osungen werden die Namen der Monate benötigt.
+%
+%    \begin{macrocode}
+\newcommand{\sw at monat}[1]{%
+\ifcase#1\relax%
+\or Januar\or Februar\or M\"arz\or April\or Mai\or Juni\or Juli\or August\or September\or Oktober\or November\or Dezember\fi%
+}%
+%    \end{macrocode}
+%
 % Der Befehl \verb+\Heft+ leitet jedes Heft ein. Damit werden
 % Band, Heftnummer, Monat, Jahr und erste Seitennummer des Heftes 
 % spezifiziert.
 %    \begin{macrocode}
+\newcounter{sw at issue}%
+\newcounter{sw at month}%
+\newcounter{sw at year}%
 \newcommand{\Heft}[5]{%
    \def\heft at band{#1}%
-   \def\heft at nr{#2}%    
-   \def\heft at monat{#3}%
-   \def\heft at year{#4}%
+   \setcounter{sw at issue}{#2}%
+   \setcounter{sw at month}{#3}%
+   \setcounter{sw at year}{#4}%
    \setcounter{page}{#5}%
    \hbox to \textwidth{\vbox to 60mm{\vfill}\hfill}%
    \hbox to \textwidth{%
-      {\large\bfseries HEFT~#2}%
+      {\large\bfseries%
+      HEFT~#2%
       \hfill%
-      {\large\bfseries BAND #1}%
+      BAND #1%
       \hfill%
-      {\large\bfseries #3~#4}%
+      \sw at monat{\value{sw at month}}~#4%
+      }%
    }%
    \vskip2mm%
    \hrule width \textwidth height 1\p@%
@@ -728,6 +749,28 @@
 }{}
 %    \end{macrocode}
 %
+% Das Kommando \verb+\LoesungenBis+ gibt den Monat (und ggfs. das Jahr) aus, bis zu dem Lösungen einzusenden sind.
+%
+%    \begin{macrocode}
+\newcounter{sw at loesungen@bis at monat}
+\newcounter{sw at loesungen@bis at jahr}
+%
+\newcommand{\LoesungenBis}{%
+   \setcounter{sw at loesungen@bis at monat}{\value{sw at month}}%
+   \setcounter{sw at loesungen@bis at jahr}{\value{sw at year}}%
+   \addtocounter{sw at loesungen@bis at monat}{3}%
+   \ifthenelse{\value{sw at loesungen@bis at monat} > 12}%
+      {%
+         \addtocounter{sw at loesungen@bis at monat}{-12}%
+         \addtocounter{sw at loesungen@bis at jahr}{1}%
+         \sw at monat{\value{sw at loesungen@bis at monat}}\ \arabic{sw at loesungen@bis at jahr}%
+      }%
+      {%
+         \sw at monat{\value{sw at loesungen@bis at monat}}%
+      }%
+}%
+%    \end{macrocode}
+%
 % Innerhalb der Umgebung \verb+Urdrucke+ werden
 % die Diagramme immer zu dritt nebeneinander gesetzt -
 % sofern dies pa"st. Au"serdem werden von jedem Diagramm
@@ -784,7 +827,12 @@
 }{}
 %    \end{macrocode}
 %
-% Die Umgebung f"ur L"osungen ben"otigt 2 Parameter:
+% Von der Umbgebung für Lösungen gibt es 2 Varianten:
+% \begin{itemize}
+% \item gefolgt von einem Stern werden Heft, Monat und Jahr automatisch gesetzt.
+% \item ohne Stern werden 2 Parameter benötigt:
+% \end{itemize}
+%
 % \begin{enumerate}
 % \item die Nummer des Heftes mit den Urdrucken
 % \item Monat und Jahr
@@ -803,8 +851,8 @@
 \newcommand{\@sw at lsg@abteilung}[4]{%
     \textbf{#1 Nr. #2-#3} (Bearbeiter = #4)%
 }
-\newenvironment{Loesungen}[2]{%
-    \begingroup%
+\newcommand{\sw at loesungen}[2]{%
+   \begingroup%
    \ttitel at skip%
    \centerline{\Large\bfseries L\"osungen der Urdrucke aus Heft #1, #2}%
    \titel at skip%
@@ -820,8 +868,8 @@
         \edef\@tempa{
             \write\sw at contents{%
             \@nearverbatim\@tempb{%
-                    {\@nearverbatim\@tempc}%
-                    {\@nearverbatim\@tempd}%
+                    {\@tempc}%
+                    {\@tempd}%
                 {\@nearverbatim\pageref{inhalt\@nameuse{the at inhalt}}}%
                 }%
             }%
@@ -829,6 +877,26 @@
     \expandafter\egroup\@tempa%
    \parskip.5ex plus 2ex%
    \catcode`/=\active%
+}
+\newcounter{sw at loesungen@aus at heft}
+\newcounter{sw at loesungen@aus at monat}
+\newcounter{sw at loesungen@aus at jahr}
+\newcommand{\sw at loesungen@star}{%
+   \setcounter{sw at loesungen@aus at heft}{\value{sw at issue}}%
+   \addtocounter{sw at loesungen@aus at heft}{-3}%
+   \setcounter{sw at loesungen@aus at jahr}{\value{sw at year}}%
+   \setcounter{sw at loesungen@aus at monat}{\value{sw at month}}%
+   \addtocounter{sw at loesungen@aus at monat}{-6}%
+   \ifthenelse{\value{sw at loesungen@aus at monat} < 1}%
+   {%
+      \addtocounter{sw at loesungen@aus at monat}{12}%
+      \addtocounter{sw at loesungen@aus at jahr}{-1}%
+   }{}%
+   \sw at loesungen{\arabic{sw at loesungen@aus at heft}}{\sw at monat{\value{sw at loesungen@aus at monat}} \arabic{sw at loesungen@aus at jahr}}%
+}
+
+\newenvironment{Loesungen}{%
+   \@ifstar{\sw at loesungen@star}{\sw at loesungen}%
 }{%
    \catcode`/=12%
     \endgroup%
@@ -941,7 +1009,7 @@
 }
 %    \end{macrocode}
 %
-% Die folgenden werden benutzt im Titel zu setzen und ggfs\@. entsprechende
+% Die folgenden werden benutzt um Titel zu setzen und ggfs\@. entsprechende
 % \verb+\label+ zu registrieren.
 %    \begin{macrocode}
 \let\titel at ext\relax
@@ -1598,6 +1666,11 @@
         \expandafter\l@@klist\the\aut at tk; \e at list%
     \egroup%
 }
+% Wenn das Diagramm ausgegeben wird, sollen auch die Informationen ausgegeben werden.
+\def\do at dia@job{%
+   \@write at sol\ifvmode\noindent\fi\unhbox\dia at box%
+   \sw at problem%
+}
 % Schreiben eines einzelnen Autors in das Inhaltsverzeichnis
 %
 \def\sw at problemAuthor#1; {%
@@ -1746,13 +1819,14 @@
 % Zeichen / aktiviert.
 %    \begin{macrocode}
 \def\sol at slash{\nobreak\hskip\z@ plus 2\p@\char`/\hskip\z@ plus 2\p@\discretionary{}{}{}}
-%
 \catcode`/=\active\relax\let/\sol at slash\relax\catcode`/=12%
-%
 \def\bsol{\catcode`/=\active\relax}
 \def\esol{\catcode`/=12\relax}
 \bsol
+\renewcommand{\cpd at begindiagram@hook}{\esol}
+\renewcommand{\cpd at enddiagram@hook}{\bsol}
 
+
 \renewcommand{\section}{\@startsection{section}{1}{\z@}{2ex}{.5ex}{\normalfont\large\bfseries}}
 \renewcommand{\subsection}{\@startsection{subsection}{2}{\z@}{1ex}{.3ex}{\normalfont\bfseries}}
 \renewcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}{.4ex}{.1ex}{\normalfont}}
@@ -1768,7 +1842,7 @@
 %    \begin{macrocode}
 %<*style>
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{schwalbe}[2017/01/31]
+\ProvidesPackage{schwalbe}[2019/12/28]
 %    \end{macrocode}
 %
 % Der \textit{Schwalbe-Style} ist eine Erweiterung des
@@ -1783,10 +1857,10 @@
 %    \end{macrocode}
 %
 %    \begin{macrocode}
-\RequirePackage{diagram}
+\RequirePackage{diagram}[2019/12/28]
 %
 %
-% Wir definieren das Diagrammlayout ein wenig um
+% Wir definieren das Diagrammlayout ein wenig um.
 %
 \newcommand{\rb}[1]{\raisebox{0.4ex}{#1}}
 \nocomputer
@@ -1814,11 +1888,6 @@
    \diagramx%
    \setboardwidth%
 }
-
-\def\do at dia@job{%
-   \@write at sol\ifvmode\noindent\fi\unhbox\dia at box%
-   \sw at problem%
-}
 %    \end{macrocode}
 %
 % In der \Schwalbe{} setzen wir keine akademischen Titel.

Modified: trunk/Master/texmf-dist/tex/latex/schwalbe-chess/schwalbe.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/schwalbe-chess/schwalbe.cls	2020-01-02 22:11:57 UTC (rev 53304)
+++ trunk/Master/texmf-dist/tex/latex/schwalbe-chess/schwalbe.cls	2020-01-02 22:12:09 UTC (rev 53305)
@@ -34,9 +34,9 @@
 %%
 %%
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{schwalbe}[2017/01/31]
+\ProvidesClass{schwalbe}[2019/12/28]
 \LoadClass[11pt,a4paper]{article}
-\RequirePackage[12pt]{schwalbe}
+\RequirePackage[12pt]{schwalbe}[2019/12/28]
 \RequirePackage[T2A,T1]{fontenc}% fsRUS 140121
 \RequirePackage[koi8-r,utf8]{inputenc}% fsRUS 140121
 \RequirePackage[russian,german,english,ngerman]{babel}
@@ -109,19 +109,28 @@
                \itemsep \parsep}%
    \belowdisplayskip \abovedisplayskip
 }
+\newcommand{\sw at monat}[1]{%
+\ifcase#1\relax%
+\or Januar\or Februar\or M\"arz\or April\or Mai\or Juni\or Juli\or August\or September\or Oktober\or November\or Dezember\fi%
+}%
+\newcounter{sw at issue}%
+\newcounter{sw at month}%
+\newcounter{sw at year}%
 \newcommand{\Heft}[5]{%
    \def\heft at band{#1}%
-   \def\heft at nr{#2}%
-   \def\heft at monat{#3}%
-   \def\heft at year{#4}%
+   \setcounter{sw at issue}{#2}%
+   \setcounter{sw at month}{#3}%
+   \setcounter{sw at year}{#4}%
    \setcounter{page}{#5}%
    \hbox to \textwidth{\vbox to 60mm{\vfill}\hfill}%
    \hbox to \textwidth{%
-      {\large\bfseries HEFT~#2}%
+      {\large\bfseries%
+      HEFT~#2%
       \hfill%
-      {\large\bfseries BAND #1}%
+      BAND #1%
       \hfill%
-      {\large\bfseries #3~#4}%
+      \sw at monat{\value{sw at month}}~#4%
+      }%
    }%
    \vskip2mm%
    \hrule width \textwidth height 1\p@%
@@ -267,6 +276,22 @@
       }%
    \expandafter\endgroup\@tempd%
 }{}
+\newcounter{sw at loesungen@bis at monat}
+\newcounter{sw at loesungen@bis at jahr}
+\newcommand{\LoesungenBis}{%
+   \setcounter{sw at loesungen@bis at monat}{\value{sw at month}}%
+   \setcounter{sw at loesungen@bis at jahr}{\value{sw at year}}%
+   \addtocounter{sw at loesungen@bis at monat}{3}%
+   \ifthenelse{\value{sw at loesungen@bis at monat} > 12}%
+      {%
+         \addtocounter{sw at loesungen@bis at monat}{-12}%
+         \addtocounter{sw at loesungen@bis at jahr}{1}%
+         \sw at monat{\value{sw at loesungen@bis at monat}}\ \arabic{sw at loesungen@bis at jahr}%
+      }%
+      {%
+         \sw at monat{\value{sw at loesungen@bis at monat}}%
+      }%
+}%
 \newcommand{\sw at urd@abteilung}{%
     \@ifstar%
         \@sw at urd@abteilung at one%
@@ -323,8 +348,8 @@
 \newcommand{\@sw at lsg@abteilung}[4]{%
     \textbf{#1 Nr. #2-#3} (Bearbeiter = #4)%
 }
-\newenvironment{Loesungen}[2]{%
-    \begingroup%
+\newcommand{\sw at loesungen}[2]{%
+   \begingroup%
    \ttitel at skip%
    \centerline{\Large\bfseries L\"osungen der Urdrucke aus Heft #1, #2}%
    \titel at skip%
@@ -340,8 +365,8 @@
         \edef\@tempa{
             \write\sw at contents{%
             \@nearverbatim\@tempb{%
-                    {\@nearverbatim\@tempc}%
-                    {\@nearverbatim\@tempd}%
+                    {\@tempc}%
+                    {\@tempd}%
                 {\@nearverbatim\pageref{inhalt\@nameuse{the at inhalt}}}%
                 }%
             }%
@@ -349,6 +374,26 @@
     \expandafter\egroup\@tempa%
    \parskip.5ex plus 2ex%
    \catcode`/=\active%
+}
+\newcounter{sw at loesungen@aus at heft}
+\newcounter{sw at loesungen@aus at monat}
+\newcounter{sw at loesungen@aus at jahr}
+\newcommand{\sw at loesungen@star}{%
+   \setcounter{sw at loesungen@aus at heft}{\value{sw at issue}}%
+   \addtocounter{sw at loesungen@aus at heft}{-3}%
+   \setcounter{sw at loesungen@aus at jahr}{\value{sw at year}}%
+   \setcounter{sw at loesungen@aus at monat}{\value{sw at month}}%
+   \addtocounter{sw at loesungen@aus at monat}{-6}%
+   \ifthenelse{\value{sw at loesungen@aus at monat} < 1}%
+   {%
+      \addtocounter{sw at loesungen@aus at monat}{12}%
+      \addtocounter{sw at loesungen@aus at jahr}{-1}%
+   }{}%
+   \sw at loesungen{\arabic{sw at loesungen@aus at heft}}{\sw at monat{\value{sw at loesungen@aus at monat}} \arabic{sw at loesungen@aus at jahr}}%
+}
+
+\newenvironment{Loesungen}{%
+   \@ifstar{\sw at loesungen@star}{\sw at loesungen}%
 }{%
    \catcode`/=12%
     \endgroup%
@@ -971,6 +1016,10 @@
         \expandafter\l@@klist\the\aut at tk; \e at list%
     \egroup%
 }
+\def\do at dia@job{%
+   \@write at sol\ifvmode\noindent\fi\unhbox\dia at box%
+   \sw at problem%
+}
 \def\sw at problemAuthor#1; {%
     \bgroup%
     \def\@tempc{\problem}%
@@ -1099,6 +1148,8 @@
 \def\bsol{\catcode`/=\active\relax}
 \def\esol{\catcode`/=12\relax}
 \bsol
+\renewcommand{\cpd at begindiagram@hook}{\esol}
+\renewcommand{\cpd at enddiagram@hook}{\bsol}
 
 \renewcommand{\section}{\@startsection{section}{1}{\z@}{2ex}{.5ex}{\normalfont\large\bfseries}}
 \renewcommand{\subsection}{\@startsection{subsection}{2}{\z@}{1ex}{.3ex}{\normalfont\bfseries}}

Modified: trunk/Master/texmf-dist/tex/latex/schwalbe-chess/schwalbe.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/schwalbe-chess/schwalbe.sty	2020-01-02 22:11:57 UTC (rev 53304)
+++ trunk/Master/texmf-dist/tex/latex/schwalbe-chess/schwalbe.sty	2020-01-02 22:12:09 UTC (rev 53305)
@@ -34,12 +34,12 @@
 %%
 %%
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{schwalbe}[2017/01/31]
+\ProvidesPackage{schwalbe}[2019/12/28]
 \DeclareOption{10pt}{\PassOptionsToPackage{10pt}{diagram}}
 \DeclareOption{11pt}{\PassOptionsToPackage{11pt}{diagram}}
 \DeclareOption{12pt}{\PassOptionsToPackage{12pt}{diagram}}
 \ProcessOptions
-\RequirePackage{diagram}
+\RequirePackage{diagram}[2019/12/28]
 \newcommand{\rb}[1]{\raisebox{0.4ex}{#1}}
 \nocomputer
 \setboolean{piececounter}{true}
@@ -66,11 +66,6 @@
    \diagramx%
    \setboardwidth%
 }
-
-\def\do at dia@job{%
-   \@write at sol\ifvmode\noindent\fi\unhbox\dia at box%
-   \sw at problem%
-}
 \setboolean{showacademictitle}{false}
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \inner at frame\z@%



More information about the tex-live-commits mailing list