paragraphの脚注の挙動が、sectionなどの他のものと異なる
Opened this issue · 4 comments
お世話になります。
TeX Live 2024の最新の環境(LuaLaTeX+jlreq)で、下記のコードで\paragraphの脚注番号がひとつズレます。
そもそも見出しに脚注を入れようとするからいけないのかもしれないのですが、\sectionや\subsectionでは正常なので気になります。
\documentclass[]{jlreq}
\begin{document}
地の文です。ここに脚注が入ります\footnote{脚注1}
\section[セクションに脚注をつけます]{脚注2\footnotemark}
\footnotetext{脚注2}
\subsection[サブセクションに脚注をつけます]{脚注3\footnotemark}
\footnotetext{脚注3}
\subsubsection[サブサブセクションに脚注をつけます]{脚注4\footnotemark}
\footnotetext{脚注4}
\paragraph[パラグラフに脚注をつけます]{脚注5\footnotemark}
\footnotetext{脚注5ですが、この脚注に自動で振られる数字が4になります。}
\end{document}
標準クラスファイルでも同じですので,これはそういうものだと思ってもらうのがよいかと思います.
そもそも見出しに脚注を入れようとするからいけないのかもしれないのですが、
おそらく\footnotemark
はfragileだと思うのでこういう動く引数の中には入れないというのはそうだと思います.
とりあえず,こうすると期待される結果になりそうです.いかがでしょうか.
\documentclass[]{jlreq}
\begin{document}
地の文です。ここに脚注が入ります\footnote{脚注1}
\section[セクションに脚注をつけます]{脚注2\footnotemark}
\footnotetext{脚注2}
\subsection[サブセクションに脚注をつけます]{脚注3\footnotemark}
\footnotetext{脚注3}
\subsubsection[サブサブセクションに脚注をつけます]{脚注4\footnotemark}
\footnotetext{脚注4}
\paragraph[パラグラフに脚注をつけます]{脚注5\footnote{脚注5ですが、この脚注に自動で振られる数字はちゃんと5になります?}}
\end{document}
ありがとうございました。\paragraphは他と挙動が違う仕様なのですね。
ご意見を参考に、下記のテストをして納得しました。
\paragraphでは\footnoteを使うようにします。
\documentclass[]{jlreq}
\begin{document}
セクション
\section[]{副題なしでfootnotemarkで入れる\footnotemark}
\footnotetext{セクション:副題なしでfootnotemarkで入れる}
\section[]{副題ありでfootnotemarkで入れる\footnotemark}[副題]
\footnotetext{セクション:副題ありでfootnotemarkで入れる}
\section[]{副題ありでfootnotemarkで入れる\footnotemark}[副題]
\footnotetext{セクション:副題ありでfootnotemarkで入れる}
\section[]{副題ありでfootnotemarkで入れる}[副題\footnotemark]
\footnotetext{セクション:副題ありでfootnotemarkで入れる}
パラグラフ
\paragraph[]{副題なしでfootnotemarkで入れる\footnotemark}
\footnotetext{パラグラフ:副題なしでfootnotemarkで入れる【ここだけ数字がずれる】}
\paragraph[]{副題ありでfootnotemarkで入れる\footnotemark}[副題]
\footnotetext{パラグラフ:副題ありでfootnotemarkで入れる}
\paragraph[]{副題ありでfootnotemarkで入れる}[副題\footnotemark]
\footnotetext{パラグラフ:副題ありでfootnotemarkで入れる}
\paragraph[]{副題なしでfootnoteで入れる\footnote{パラグラフ:副題なしでfootnoteで入れる}}
\paragraph[]{副題ありでfootnoteで入れる\footnote{パラグラフ:副題ありでfootnoteで入れる}}[副題]
\paragraph[]{副題ありでfootnoteで入れる\footnote{パラグラフ:副題ありでfootnoteで入れる1}}[副題\footnote{パラグラフ:副題ありでfootnoteで入れる2}\footnote{パラグラフ:副題ありでfootnoteで入れる3}]
\end{document}
まず、これはLaTeX kernelにおける脚注仕様と言ってもよいと思います。
articleクラスの\paragraph
は、\section
, \subsection
, \subsubsection
と異なり、見出し直後を改行せずにそのまま出しています。
このとき、以下のように\paragraph
直後に続く“段落本文”を始めたうえで\footnotetext
を入れると、脚注も正しく採番されます。
\documentclass{article}
\begin{document}
\section{xyz}
\paragraph[a]{a\footnotemark}
a\footnotetext{a}
\paragraph[b]{b\footnotemark}
a\footnotetext{b}
\paragraph[c]{c\footnotemark}
a\footnotetext{c}
\end{document}
そこで、articleクラスの\paragraph
の定義を以下のように「ココ」を変更してみます。
つまり、\section
, \subsection
, \subsubsection
と同じように、見出し直後を改行します。
\documentclass{article}
\makeatletter
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
{3.25ex \@plus1ex \@minus.2ex}%
{1.5ex \@plus .2ex}%{-1em}%←ココ
{\normalfont\normalsize\bfseries}}
\makeatother
\begin{document}
\section{xyz}
\paragraph[a]{a\footnotemark}
\footnotetext{a}
\paragraph[b]{b\footnotemark}
\footnotetext{b}
\paragraph[c]{c\footnotemark}
\footnotetext{c}
\end{document}
すると、これでも問題なく、脚注本文で採番されます。