如何在 xskak \printchessgame 中打印 NAG?

如何在 xskak \printchessgame 中打印 NAG?

如果游戏包含 NAG,\mainline则打印它们。但如果游戏被导出,然后使用 打印\printchessgame,NAG 就会消失。如何打印导出后再导入的游戏的 NAG?

\documentclass{book}
\usepackage{xskak}

\begin{document}
\newchessgame[white=none,black=none,id=export]
  \mainline{1. d4 Nf6 $1}
  \\
  \xskakexportgames[file=test, games={export}]
  \input{test.xsk}
  \printchessgame
\end{document}

输出:

输出:

答案1

已经过去太久了,我记不清我在那里做了什么,也记不清我是否是故意这么做的,但我想我后来实现了 NAG 支持,所以基本上现在有两个问题:导出文件缺少\makeatletter/\makeatother并且\printchessgames没有使用它。

你可以使用以下方法解决,但请同时打开一个问题https://github.com/u-fischer/xskak/issues

\documentclass{book}
\usepackage{xskak}

\begin{document}
\newchessgame[white=none,black=none,id=export]
  \mainline{1. d4 Nf6 $1 2. Nf3 c5?}
  \xskakexportgames[file=test, games={export,export}]
    
\makeatletter
\input{test.xsk}
\gdef\xskak@do@printmove{\xskakget{san}\xskakget{comments}\xskakget{nag}}
\makeatother    
\printchessgame
\end{document}

在此处输入图片描述

相关内容