我正在使用该skak
包来撰写和评论一场象棋比赛。
当您使用命令\variation
分析改变移动 15 的可能后果时会出现问题MWE
。如果我取消注释注释行(第 16 和 17 行),此代码会产生错误,但我想输入此解释。
该命令\variation
之前已经使用过(在代码中),没有问题。
这是我的代码
\documentclass{minimal}
\usepackage{skak}
\begin{document}
\newgame
\noindent\mainline{1.e4 c6 2.d4 d5 3.Nd2 dxe4 4.Nxe4 Nd7 5.Ng5 Ngf6 6.Bc4 e6 7.Qe2 Nb6 8.Bb3 h6 9.N5f3 c5} (\variation{9...a5}) \mainline{10.Bf4 Bd6 11.Bg3 Qe7}
(it's also possible \variation{11...Qc7} and \variation{11...O-O})
\mainline{12.dxc5 Bxc5 13.Ne5 Bd7 14.Ngf3 Nh5}
(no \variation{14...O-O-O 15.Nxf7 Qxf7 16.Qe5}).\\
\begin{center}
\showboard
\end{center}
\styleC
\mainline{15.O-O-O Nxg3}
Change this move by \variation{15...O-O-O} allows
%\variation{16.Nxd7 Nxd7 17.Bc5!}
%and if \variation{17...Nxe5?!}, then \variation{18.Nxe5 Nf4 19.Qc4}, giving an advantage.
\mainline{16.hxg3 O-O-O}
\end{document}
正如我之前所说,如果我取消注释这些行,则会收到如下错误消息
[]
! mainline: 16 不是正确的移动数。...: 16 不是正确的移动数}
l.15 \variation{16.Nxd7 Nxd7 17.Bc5!}
该错误消息是由 \errmessage 命令生成的,因此我无法提供任何明确的帮助。
感谢您的帮助!
答案1
如果将 skak 更改为 xskak,它可以正常工作。
\listfiles
\documentclass{minimal}
\usepackage{xskak}
\begin{document}
\newgame
\noindent\mainline{1.e4 c6 2.d4 d5 3.Nd2 dxe4 4.Nxe4 Nd7 5.Ng5 Ngf6 6.Bc4 e6 7.Qe2 Nb6 8.Bb3 h6 9.N5f3 c5} (\variation{9...a5}) \mainline{10.Bf4 Bd6 11.Bg3 Qe7}
(it's also possible \variation{11...Qc7} and \variation{11...O-O})
\mainline{12.dxc5 Bxc5 13.Ne5 Bd7 14.Ngf3 Nh5}
(no \variation{14...O-O-O 15.Nxf7 Qxf7 16.Qe5}).\\
\begin{center}
\showboard
\end{center}
\styleC
\mainline{15.O-O-O Nxg3}
Change this move by \variation{15...O-O-O} allows \variation{16.Nxd7 Nxd7 17.Bc5!}
\mainline{16.hxg3 O-O-O}
%and if \variation{17...Nxe5?!}, then \variation{18.Nxe5 Nf4 19.Qc4}, giving an advantage.
\end{document}