jsbookでpartごとにchapterを初期化するときにリンクを正しく動かす対処法

問題の説明

まず問題が何かを説明すると, 次のような現象が起きていた.

具体的には次のようなコマンドを使っていた.

\newcommand*\initChapCounter{\setcounter{chapter}{0} \renewcommand\theHchapter{back.\arabic{chapter}}}

メモによるとここを参考にしたようだ.

解決法

次のツイートで教えて頂いた.

これをプリアンブルに設定した上で, 上で定義していた initChapCounter を削除したら各種リンクが正しく動くようになった. 以前もはまって今回また 2 週間くらいはまっていたので非常に助かった. ありがたいことこの上ない. これでコンテンツ制作・参照が本当にはかどる.

戒め

次のようなコメントを頂いた.

指摘を頂いたのは次の箇所だろう.

\renewcommand\theHchapter{back.\arabic{chapter}}}

ここで (謎の back. はさておき) \arabic{part} のような記述が必要なのだとかそういう意味だろう. よく調べもしないでコピペするのは駄目という太古からの教えを守らないとこういう悲劇が起きる. 人, これを知的怠惰という. ここに戒めとして記録しておく.

もっといえば「だろう」ではなくきちんと調べて検証するべきところだが, 再び知的怠惰さを発揮して調査をさぼる.