1

It is not a serious issue, but I would like to know why this happens.

If I compile

\documentclass[ngerman]{scrartcl}
\usepackage[ngerman]{babel}
\title{Title}
\date{\today}
\usepackage{igo}
\begin{document}
\maketitle
\end{document}

the output looks like an English version, i.e. the format of the date is English. Without using the igo-package, everything is working properly. I looked into the sty-file and also in the used repeat.tex file but I can't find the reason for this.

Ingmar
  • 6,690
  • 5
  • 26
  • 47
Ulrich
  • 917
  • The igo package does not appear to be included in the TeXLive distrubution. Is it available online? If so, where? – Mico Jul 25 '22 at 13:21
  • 2
    @Mico Its license is deemed “nonfree”, so it cannot be in TeX Live. But it's on CTAN and included in MiKTeX. – egreg Jul 25 '22 at 13:21
  • here the link to the package: https://ctan.org/pkg/igo – Ulrich Jul 25 '22 at 13:27
  • There are a couple of \end occurred when \ifx on was incomplete messages related to the date macro when igo is loaded, I suspect these are responsible. I'm not sure what the problem is exactly or how it can be solved - the package was last updated 15 years ago so it is not surprising that it does not work perfectly with a recent version of LaTeX. – Marijn Jul 25 '22 at 13:41
  • @Marijn, ok. Then I will add the date manually. – Ulrich Jul 25 '22 at 13:56
  • 2
    the package loads repeat.tex which redefines \repeat and breaks so various loops including the babel loop. It also redefines font size commands. I would avoid to use it. – Ulrike Fischer Jul 25 '22 at 14:11
  • @Ulrike The repeat.tex file is necessary for the system, so one cannot avoid to use it. I think, the easiest way is to entry the date manually. The problem with the fontsize can also be solved by adding, e.g. \large at the begin of the document. My knowledge of the TeX details to rewrite the repeat.tex macros is not good enough for doing this. – Ulrich Jul 25 '22 at 14:49
  • 1
    you can avoid to use the igo package. Or you can change it to use \Repeat instead of \repeat and reinstate the original \repeat along this line https://tex.stackexchange.com/a/62381/2388. In any case I would not use igo as it is. – Ulrike Fischer Jul 25 '22 at 15:35

1 Answers1

4

Because repeat.tex redefines \repeat which the LaTeX kernel uses in the \loop...\repeat construction and, in order to work as described in plain.tex, it is mandatory that the meaning of \repeat is the same as \fi.

You can modify igo.sty to avoid the problem.

After \input{repeat.tex} add

\let\REPEAT\repeat
\let\repeat\fi

and change all occurrences of \repeat in the code of igo.sty with \REPEAT.

It is also better if you change all the code in the Define size of stones section with

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Define size of stones in text (Nikolai Nemov, from size10.clo)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\AddToHook{cmd/normalsize/after}{\def\stonesize{\igo@fonts{9}}} \AddToHook{cmd/small/after}{\def\stonesize{\igo@fonts{8}}} \AddToHook{cmd/footnotesize/after}{\def\stonesize{\igo@fonts{7}}} \AddToHook{cmd/scriptsize/after}{\def\stonesize{\igo@fonts{6}}} \AddToHook{cmd/tiny/after}{\def\stonesize{\igo@fonts{5}}} \AddToHook{cmd/large/after}{\def\stonesize{\igo@fonts{10}}} \AddToHook{cmd/Large/after}{\def\stonesize{\igo@fonts{11}}} \AddToHook{cmd/LARGE/after}{\def\stonesize{\igo@fonts{12}}} \AddToHook{cmd/huge/after}{\def\stonesize{\igo@fonts{15}}} \AddToHook{cmd/Huge/after}{\def\stonesize{\igo@fonts{20}}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

It's good igo.sty is not in TeX Live…

egreg
  • 1,121,712