summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/schwalbe-chess
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-06-23 20:54:57 +0000
committerKarl Berry <karl@freefriends.org>2022-06-23 20:54:57 +0000
commitd5dbb419bfc9c813884f68f26f223b2be0dd307e (patch)
treee96e21b644164ba5492a2a1da60798f03db99a2f /Master/texmf-dist/source/latex/schwalbe-chess
parent98a8cf07f9f44a4cac1d296b1dd75e3878530ccc (diff)
schwalbe-chess (23jun22)
git-svn-id: svn://tug.org/texlive/trunk@63702 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/schwalbe-chess')
-rw-r--r--Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx229
-rw-r--r--Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.ins1
2 files changed, 152 insertions, 78 deletions
diff --git a/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx b/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx
index 62dbe69dccb..15b4b459fc3 100644
--- a/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx
+++ b/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.dtx
@@ -13,9 +13,9 @@
%%
%%
% \fi
-% \def\fileversion{v2.9}
-% \def\docdate{2022/05/28}
-% \CheckSum{2247}
+% \def\fileversion{v2.12}
+% \def\docdate{2022/06/16}
+% \CheckSum{2266}
% \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
@@ -59,6 +59,17 @@
% Loesungen environment.}
% \changes{v2.9}{28 May 2022}{Added code to simplify measuring size of
% articles.}
+% \changes{v2.10}{02 June 2022}{Added missing dots (.) in commands
+% cpd@Loesung and cpd@Loesung@star.\\
+% Added commands win and loose.\\
+% Volume is provided as arabic number in 'Heft' command now.\\
+% Fixed issue with Ruler as 'AddToHook' command is not available in
+% old \LaTeX{} installations.}
+% \changes{v2.11}{13 June 2022}{Changed to depend on diagram.sty from
+% 13 June 2022.}
+% \changes{v2.12}{19 June 2022}{Moved ruler code to separate style
+% file swruler.sty.\\
+% Added class option 'ruler' to activate displaying the ruler.}
%
% \DoNotIndex{\@arabic,\def,\@idxitem,\@ifnextchar,\@ifstar,
% \@ne,\@ptsize,\ ,\advance,\AtEndOfPackage,\begin,\begingroup,
@@ -108,7 +119,9 @@
% Parameter in der angegebenen Reihenfolge:
%
% \begin{enumerate}
-% \item der Band, zu dem das Heft gehört
+% \item der Band, zu dem das Heft gehört (als arabische Zahl)\footnote{In den
+% vorherigen Fassungen der schwalbe.cls wurde hier die römische
+% Darstellung der Zahl angegeben.}
% \item die Nummer des Heftes
% \item der Monat des Erscheinens als Zahl
% \item das Jahr des Erscheinens
@@ -119,7 +132,7 @@
% der Seitenummmer 361 beginnt wird demzufolge folgendermassen
% eingeleitet:
%
-% \verb+\Heft{XXXIV}{299}{12}{2019}{361}+
+% \verb+\Heft{34}{299}{12}{2019}{361}+
%
% \DescribeEnv{Editorial}
% Die \verb+Editorial+ Umgebung benötigt einen Parameter, der
@@ -331,7 +344,7 @@
%
% \DescribeEnv{Loeserliste}
% Nach dem einleitenden \verb+\begin{Loeserliste}+ ist als
-% Parameter das Jahr anzugeben, auf dass sich die Löserliste
+% Parameter das Jahr anzugeben, auf das sich die Löserliste
% bezieht.
%
% \DescribeEnv{Turnierausschreibung}
@@ -371,6 +384,11 @@
% zwischen den Gliedern der Abkürzung wählen. Daher definiert
% der Style Befehle für einige Häufig vorkommende Abkürzungen:
%
+% \DescribeMacro{\win}
+% \DescribeMacro{\loose}
+% Für die Notation von Studienlösungen gibt es die Befehle \verb+\win+
+% und \verb+\loose+.
+%
% \medskip
% \begin{tabular}{|l|l|l|}
% \hline
@@ -429,12 +447,35 @@
% \DescribeMacro{\mal}
% Als Kurzschreibweise für das $\times$ Symbol ist der Befehl \verb+\mal+ definiert.
%
+% \DescribeMacro{\ShowRuler}
+% Um den Umfang der einzelnen Artikel einfacher Abschätzen zu können,
+% kann man mittels \verb+\ShowRuler+ ein Lineal auf jeder Seite
+% anzeigen lassen.
+% Der Befehl erwartet als Parameter den \textbf{x}- und
+% \textbf{y}-Abstand zum Seitenursprung. Die Angaben müssen als
+% vielfaches von \textbf{1pt} angegeben werden.
+%
+% In der \textbf{schwalbe-class} kann das Lineal durch die Option
+% \textbf{ruler} aktiviert werden:
+%
+% \begin{verbatim}
+% \documentclass[ruler]{schwalbe}
+% \end{verbatim}
+%
+% Mit aktivierter \textbf{ruler}-Option kann das Anzeigen des Lineals
+% durch Anlegen einer Datei \verb+__finalpdf__.tex+ deaktiviert
+% werden. Das habe ich in dem Prozess, der die Schwalbe-Hefte baut,
+% automatisiert.
+%
+% Der Code zur Erzeugung des Lineals ist eine eigene Style-Datei
+% \verb+swruler.sty+ ausgelagert, so dass man das Lineal ohne
+% \textbf{schwalbe-class} verwenden kann.
+%
% \DescribeEnv{MeasureMode}
% \DescribeMacro{\MeasureNewpage}
-% Um den Umfang der einzelnen Artikel einfacher Abschätzen zu können,
-% füge ich vor jedem Artikel den Befehl \verb+\MeasureNewpage+ ein,
-% der ein \verb+\newpage+ durchführt, wenn der Boolean
-% \verb+MeasureMode+ gleich \verb+true+ ist.
+% Außerdem füge ich vor jedem Artikel den Befehl
+% \verb+\MeasureNewpage+ ein, der ein \verb+\newpage+ durchführt, wenn
+% der Boolean \verb+MeasureMode+ gleich \verb+true+ ist.
%
% \StopEventually{\PrintIndex\PrintChanges}
%
@@ -470,9 +511,15 @@
% \begin{macrocode}
%<*class>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{schwalbe}[2022/05/28]
+\ProvidesClass{schwalbe}[2022/06/23]
+\DeclareOption{ruler}{%
+ \AtBeginDocument{\IfFileExists{__finalpdf__.tex}{}{%
+ \ShowRuler{32mm / 1pt}{-44mm / 1pt}}}
+}%
+\ProcessOptions\relax%
\LoadClass[11pt,a4paper]{article}
-\RequirePackage[12pt]{schwalbe}[2019/12/28]
+\RequirePackage[12pt]{schwalbe}[2022/06/23]
+\RequirePackage{swruler}[2022/06/19]
\RequirePackage{cpdparse}[2020/12/27]
\RequirePackage[T2A,T1]{fontenc}% fsRUS 140121
\RequirePackage[koi8-r,utf8]{inputenc}% fsRUS 140121
@@ -533,6 +580,8 @@
\def\zB{z.\,B.\ignorespaces}
\def\su{s.\,u.\ignorespaces}
\def\ep{e.\,p.\ignorespaces}
+\def\win{$\pm$}
+\def\loose{$\mp$}
\def\seedia{s.\,Diagr.}
%
%-----------------------------------------------------------
@@ -590,11 +639,13 @@
% Band, Heftnummer, Monat, Jahr und erste Seitennummer des Heftes
% spezifiziert.
% \begin{macrocode}
+\newcounter{sw@volume}%
\newcounter{sw@issue}%
\newcounter{sw@month}%
\newcounter{sw@year}%
\newcommand{\Heft}[5]{%
\def\heft@band{#1}%
+ \setcounter{sw@volume}{#1}%
\setcounter{sw@issue}{#2}%
\setcounter{sw@month}{#3}%
\setcounter{sw@year}{#4}%
@@ -604,7 +655,7 @@
{\large\bfseries%
HEFT~#2%
\hfill%
- BAND #1%
+ BAND \Roman{sw@volume}%
\hfill%
\sw@monat{\value{sw@month}}~#4%
}%
@@ -693,9 +744,9 @@
, S.~\the\pages@tk%
\fi%
\else%
- \if@special\relax%
+ \ifthenelse{\boolean{@cpd@numbering@local}}{}{%
\thediag%
- \fi
+ }%
\fi\fi%
\egroup%
}
@@ -980,7 +1031,7 @@
\AtEndDocument{\immediate\closeout\@cpdfile@loeserkuerzel}
\newcommand{\x@cpd@saveloeser}[2]{%
- \immediate\write\@cpdfile@loeserkuerzel{\unexpanded{#1:#2}}
+ \immediate\write\@cpdfile@loeserkuerzel{\unexpanded{#1:#2}}%
}
\newcommand{\y@cpd@saveloeser}[2]{%
\x@cpd@saveloeser{#1}{#2}%
@@ -1040,11 +1091,11 @@
}
\newcommand{\showsol}{}
\newcommand{\cpd@Loesung}[3]{%
- \textbf{#1}\ \sw@loesung@authors{#2}%
+ \textbf{#1}\ \sw@loesung@authors{#2}.\ %
\renewcommand{\showsol}{#3}%
}
\newcommand{\cpd@Loesung@star}[3]{%
- \textbf{#1}\ \sw@loesung@authors{#2}\ #3%
+ \textbf{#1}\ \sw@loesung@authors{#2}.\ #3.%
\renewcommand{\showsol}{}%
}
\newcommand{\Loesung}{%
@@ -1954,48 +2005,7 @@
\newcommand{\mal}{\mbox{\ifmmode\times\else$\times$\fi}}
% \end{macrocode}
%
-% Das Makro \verb+\Ruler+ erzeugt ein Lineal mit einer $1/20$
-% Einteilung der Seitenhöhe.
-%
-% \begin{macrocode}
-\newcommand{\Ruler}{%
-\makebox{%
-\setlength{\unitlength}{13mm}
-\begin{picture}(1,20)
-\put(0.4,-20){\line(0,1){20}}
-
-\multiput(0.4,-20)(0,2){11}{\line(1,0){0.4}}
-\multiput(0.4,-19)(0,2){10}{\line(1,0){0.2}}
-\put(0,-20){10}
-\put(0,-18){9}
-\put(0,-16){8}
-\put(0,-14){7}
-\put(0,-12){6}
-\put(0,-10){5}
-\put(0,-8){4}
-\put(0,-6){3}
-\put(0,-4){2}
-\put(0,-2){1}
-\end{picture}
-}}% Ruler
-% \end{macrocode}
-%
-% Das Makro \verb+\ShowRuler+ sorgt dafür, dass das mittels
-% \verb+\Ruler+ erzeugte Lineal auf jeder Seite angezeigt wird.
-%
-% \begin{macrocode}
-\newcommand{\ShowRuler}{%
-\AddToHook{shipout/background}{\put(32mm,-46mm){\Ruler}}%
-}%
-% \end{macrocode}
-%
-% Wenn beim Übersetzen der \LaTeX-Datei in aktuellen Verzeichnis keine
-% \verb+__finalpdf__.tex+ existiert, wird die Anzeige des
-% Lineals mittels \verb+\ShowRuler+ aktiviert. Durch Anlegen der Datei
-% kann das Einblenden des Lineals deaktiviert werden.
-%
% \begin{macrocode}
-\AtBeginDocument{\IfFileExists{__finalpdf__.tex}{}{\ShowRuler}}
\newboolean{MeasureMode}
\setboolean{MeasureMode}{false}
@@ -2012,7 +2022,7 @@
% \begin{macrocode}
%<*style>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{schwalbe}[2019/12/28]
+\ProvidesPackage{schwalbe}[2022/06/23]
% \end{macrocode}
%
% Der \textit{Schwalbe-Style} ist eine Erweiterung des
@@ -2027,7 +2037,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\RequirePackage{diagram}[2020/02/09]
+\RequirePackage{diagram}[2022/06/19]
%
%
% Wir definieren das Diagrammlayout ein wenig um.
@@ -2095,11 +2105,9 @@
\def\@dia@number{}% Die Diagrammnummer wird bei den Autoren gesetzt!
%
\def\@dia@numberx{%
- \if@special%
- \thediag%
- \else\ifdi@no%
- \thediag%
- \fi\fi%
+ \ifthenelse{\boolean{@cpd@numbering@local}}{%
+ {\authorfont\thediag}%
+ }{}%
}
%
\def\@dia@authors{%
@@ -2111,8 +2119,10 @@
\let\@action=\@dia@writename% Parse the list of authors
\@parseTokenlist\aut@tk;%
\else%
- \above@newline
- {\authorfont\@dia@numberx}%
+ \ifthenelse{\boolean{@cpd@numbering@local}}{%
+ \above@newline%
+ \@dia@numberx%
+ }{}%
\fi%
}
%
@@ -2156,20 +2166,83 @@
\newlength{\double@boardwidth}%
\def\doublediagram#1{%
- \def\dia@above{\if@special\else%
- \setlength{\helplength}{\textwidth}%
- \addtolength{\helplength}{-3\board@width}%
- \setlength{\boardskip}{.5\helplength}%
- \setlength{\double@boardwidth}{2\board@width}%
- \addtolength{\double@boardwidth}{\boardskip}%
- \begin{minipage}[b]{\double@boardwidth}%
- #1%
- \end{minipage}%
- \fi}%
+ \def\dia@above{%
+ \ifthenelse{@cpd@numbering@local}{}{%
+ % \if@special\else%
+ \setlength{\helplength}{\textwidth}%
+ \addtolength{\helplength}{-3\board@width}%
+ \setlength{\boardskip}{.5\helplength}%
+ \setlength{\double@boardwidth}{2\board@width}%
+ \addtolength{\double@boardwidth}{\boardskip}%
+ \begin{minipage}[b]{\double@boardwidth}%
+ #1%
+ \end{minipage}%
+ % \fi
+ }%
+ }%
}
%</style>
% \end{macrocode}
%
+% \section{Die Implementierung des \textbf{swruler.sty}}
+%
+% \begin{macrocode}
+%<*rulerstyle>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{swruler}[2022/06/19]
+\RequirePackage{calc}
+% \end{macrocode}
+%
+% Das Makro \verb+\Ruler+ erzeugt ein Lineal mit einer $1/20$
+% Einteilung der Seitenhöhe.
+%
+% \begin{macrocode}
+\newcommand{\Ruler}{%
+\makebox{%
+\setlength{\unitlength}{\textheight / 20}
+\begin{picture}(1,20)
+\put(0.4,-20){\line(0,1){20}}
+\multiput(0.4,-20)(0,2){11}{\line(1,0){0.4}}
+\multiput(0.4,-19)(0,2){10}{\line(1,0){0.2}}
+\put(0,-20){10}
+\put(0,-18){9}
+\put(0,-16){8}
+\put(0,-14){7}
+\put(0,-12){6}
+\put(0,-10){5}
+\put(0,-8){4}
+\put(0,-6){3}
+\put(0,-4){2}
+\put(0,-2){1}
+\end{picture}
+}}% Ruler
+% \end{macrocode}
+%
+%
+% Das Makro \verb+\ShowRuler+ sorgt dafür, dass das mittels
+% \verb+\Ruler+ erzeugte Lineal auf jeder Seite angezeigt wird.
+% Da in älteren \LaTeX-Versionen das Kommando \verb+\AddToHook+ noch
+% nicht existiert, wird in diesem Fall eine Warnung ausgegeben. Ein
+% Lineal kann dann nicht angezeigt werden.
+%
+% \begin{macrocode}
+\providecommand{\AddToHook}[2]{%
+\message{^^JWARNING: Your LaTeX is too old to activate a Ruler on each page.^^J}%
+}%
+\newcommand{\ShowRuler}[2]{%
+\AddToHook{shipout/background}{\put(#1,#2){\Ruler}}%
+}%
+% \end{macrocode}
+%
+% Wenn beim Übersetzen der \LaTeX-Datei in aktuellen Verzeichnis keine
+% \verb+__finalpdf__.tex+ existiert, wird die Anzeige des
+% Lineals mittels \verb+\ShowRuler+ aktiviert. Durch Anlegen der Datei
+% kann das Einblenden des Lineals deaktiviert werden.
+%
+% \begin{macrocode}
+%</rulerstyle>
+% \end{macrocode}
+%
% \Finale
diff --git a/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.ins b/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.ins
index bbea30d9b04..a7641a3c451 100644
--- a/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.ins
+++ b/Master/texmf-dist/source/latex/schwalbe-chess/schwalbe.ins
@@ -3,5 +3,6 @@
\generate{%
\file{schwalbe.sty}{\from{schwalbe.dtx}{style}}%
\file{schwalbe.cls}{\from{schwalbe.dtx}{class}}%
+ \file{swruler.sty}{\from{schwalbe.dtx}{rulerstyle}}%
}
\endbatchfile