2017-11-27 19 views
0

付録のセクション番号が間違っています。プロジェクト全体が以下にあります。 https://github.com/JerryOpenix/Debugging-With-GDBpdflatex:付録のセクション番号が間違っています

MWEは以下のとおりです。 付録Bのセクション番号は間違っています。

手動で付録Bのセクション番号を0に設定するように指示しないでください。

\documentclass[12pt,twoside,a4paper,openright]{book} 

\usepackage[subpreambles=false]{standalone} 
\usepackage[toc, page]{appendix} 

\begin{document} 

\pagenumbering{arabic} 

\appendix 

\renewcommand{\thechapter}{A\alph{chapter}} 
\chapter*{Appendix A Installing GDB} 
\addcontentsline{toc}{chapter}{Installing GDB} 

\section*{tools to build gdb} 
\#TODO 

\setcounter{section}{0} 

\section{call configuration script} 
\#TODO 

\renewcommand{\thechapter}{B\alph{chapter}} 
\chapter*{Appendix B GDB protocol} 
\addcontentsline{toc}{chapter}{GDB protocol} 

\section{Overview} 
\#TODO 

\cleardoublepage 
\end{document}` 

答えて

1

あなたのコード例では、やや不自然である(と私はGitHubのからプロジェクト全体をコンパイルするに飛び込むするつもりではなかったです)。ここには何が起こっているの要点があります:

あなたはすべての付録の章を表すために\chapter*を使用しています。 \chapterのスター付きバージョンは、章見出しにカウンタが設定されていないことを示しています。また、chapterカウンタがステップアップ(増加)しないことを意味します。 chapterカウンタをステップしないことによる結果は、下位レベルのセクション単位でカウンタがリセットされていないことになります。それで2番目の付録の最初のセクションは、最初の付録の最初のセクションから引き継がれています。

あなたのプリアンブルに以下を追加しようとすることができます:

\let\oldappendix\appendix% Store \appendix in \oldappendix 
\renewcommand{\appendix}{% Update \appendix to... 
    \oldappendix   % ...call the traditional \appendix 
    \let\oldchapter\chapter% Store \chapter in \oldchapter 
    \renewcommand{\chapter}{% Update \chapter to... 
    \setcounter{section}{0}% ...reset the section counter and... 
    \oldchapter% ...call the traditional \chapter macro 
    }% 
} 

上記のコードは、それは常に何をやって\appendixを更新するだけでなく、\chapterに更新が追加されます。このアップデートでは、\chapter*を使用した場合のsectionカウンタがリセットされます。 \chapterを使用する場合でも、それは問題ではありません。

関連する問題