【LaTeX】\secdef の意味
book.clsの中の \chapter
の定義
\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{plain}%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter}
の最後の行にある \secdef
の意味。
もし \foo
が
\def\foo{<tokens>\secdef\fooA\fooB}
のように定義されているとき、\foo
が呼ばれた場合には
<tokens>\fooA
が実行され、\foo*
が呼ばれた場合には
<tokens>\fooB
が実行される。
参考
追記(2018/09/20)
\foo なら \fooA, \foo* なら \fooB
と出力するマクロを書きたいなら\@ifstarを使って
\newcommand\foo{\@ifstar\fooA\fooB}
と書こう。
アットマークを使うので、プリアンブルに書くときは
\makeatletter ~~~ \makeatother
としよう。