2013年6月26日水曜日

jsarticle.clsでappendixの数式番号が変

LaTeXの話です.仕様しているのはMacTeX2013です.
普段はjsbook.clsを使っているので気づかなかったのですが,久々に昔書いた原稿をタイプセットしてみると,appendixの数式番号がおかしいことに気づきました.どうやらjsarticle.clsを使う生じる症状のようです.

具体的には,appendixでの数式番号を(A.1)の形で出力してほしいのですが,これが(付録 A.1)のようになります.これはかなりウザいです.解決方法はTeX Q&Aの4396943989のやり取りにありました.

\makeatletter
%%
%% \appendix 定義を修正
%% \thesection に \presectionname(\appendixname) を追加するのではなく
%% 以降の \section に \presectionname(\appendixname) を追加してみた
%%
%% 元と違うところ
%%   (1) 目次で「付録A」とならず「A」となる
%%   (2) \label \ref の参照で「付録」が出なくなる
%%
\renewcommand{\appendix}{\par
  \setcounter{section}{0}%
  \setcounter{subsection}{0}%
  \gdef\presectionname{\appendixname}%
%  \gdef\presectionname{}%
  \gdef\postsectionname{}%
%  \gdef\thesection{\presectionname\@Alph\c@section\postsectionname}%
  \gdef\thesection{\@Alph\c@section}%
%  \gdef\thesubsection{\@Alph\c@section.\@arabic\c@subsection}%}
  \gdef\thesubsection{\thesection.\@arabic\c@subsection}%}
% 以下,追加
  \if@twocolumn
    \renewcommand{\section}{%
      \@startsection{section}{1}{\z@}%
      {0.6\Cvs}{0.4\Cvs}%
%      {\normalfont\large\headfont\raggedright}}
      {\normalfont\large\headfont\raggedright\presectionname}}
%
  \else
    \renewcommand{\section}{%
      \if@slide\clearpage\fi
      \@startsection{section}{1}{\z@}%
      {\Cvs \@plus.5\Cdp \@minus.2\Cdp}% 前アキ
      {.5\Cvs \@plus.3\Cdp}% 後アキ
%      {\normalfont\Large\headfont\raggedright}}
      {\normalfont\Large\headfont\raggedright\presectionname}}
  \fi
}
\makeatother
をプリアンブルに書いておけばよいようです.