タイトルの脚注の小文字大文字 (amsart)

タイトルの脚注の小文字大文字 (amsart)

タイトルに脚注を追加しようとしていますamsart小文字で入力しても、常に大文字になってしまいます (数式モードでも同様)。

\documentclass{amsart}
\title{ text \footnote{ text }}
\begin{document}
\maketitle
\end{document}

脚注で小文字大文字を使用するにはどうすればよいでしょうか?

答え1

回避策は非常に簡単ですが、脚注マーカーは表示されません。

\documentclass{amsart}
\begin{document}

\newcommand\myfootnotetitle{\spaceskip=0pt \scshape I want this in Small Caps}
\title{Title\footnote{\protect\myfootnotetitle}}
\author{A. U. Thor}
\maketitle

\vspace*{\fill}
{\footnotesize\myfootnotetitle\par} % for checking

\end{document}

\title問題は 2 つあります。1 つは、不必要な拡張 ( の引数が に渡される)を防ぐこと\MakeUppercase、もう 1 つは、テキスト内の\spaceskipがゼロ以外の値に設定されることです。

ここに画像の説明を入力してください

脚注マーカーを追加するには、より深い手術が必要です。アスタリスクを脚注マークとして取得するための簡単な回避策は次のとおりです。

\documentclass{amsart}

\makeatletter
\newcommand{\definetitlefootnote}[1]{%
  \newcommand\addtitlefootnote{%
    \makebox[0pt][l]{$^{*}$}%
    \footnote{\protect\@titlefootnotetext}
  }%
  \newcommand\@titlefootnotetext{\spaceskip=\z@skip $^{*}$#1}%
}
\makeatother

% Just to make a short page for viewing the result
\setlength{\textheight}{6cm}
\calclayout

\begin{document}

\definetitlefootnote{\scshape I want this in Small Caps}
\title{Title\addtitlefootnote}
\author{A. U. Thor}
\maketitle

Some text with a footnote\footnote{Whatever}

\end{document}

ここに画像の説明を入力してください

答え2

脚注マーカーも保持する方法があります。定義を保存し、\footnotemarkコマンドを発行する直前に復元する必要があります。その後、正しいカウンター値を取得するためにいくつかの調整が必要です。

タイトルは次のとおりです。

タイトル

そして、ここには脚注があり、表示\thanksなどが妨げられていません。

脚注

\documentclass{amsart}

\makeatletter
\let\mymakefnmark\@makefnmark
\let\mythefnmark\@thefnmark

\newcommand{\restorefn}{\let\@makefnmark\mymakefnmark
\let\mythfnmakr\@thefnmark}
\makeatother

\begin{document}

\title{Title text\restorefn\footnotemark}
\author{A. N. Author}
\date{\today}
\thanks{Thanks}
\maketitle
\stepcounter{footnote}\footnotetext{\scshape Footnote.}

\end{document}

答え3

このソリューションでは、自動化が少し強化され、ユーザー インターフェイスはそのまま維持されるため、書き続けることができます\title[short text]{text\footnote{text}}

基本的な考え方は、内部マクロが\@adminfootnotes通常の脚注メカニズムを無効にすることを無効にすることです。

\xpatchcmd\@adminfootnotes{\let\@makefnmark\relax}{}{}{}

そして、\footnotemark-\footnotetextデュオを使用します。マークは、次のように構築され\title{...\fotenotemark}\footnotetext大文字化の影響を受けないように外側で宣言されます。後者は、次の簡単なパッチで実現されます\maketitle

\xapptocmd\maketitle{%
  \stepcounter{footnote}
  \ifx\@empty\titlefn\else
    \footnotetext{\scshape\titlefn}\fi}{}{}

\titlefn\footnote{...}は、 の再定義されたバージョンで収集される脚注テキストのストレージです\title(\footnoteここでは区切り文字として機能することに注意してください)。

\def\title@aux#1\footnote#2#3{%
  \global\let\shorttitle\@tempa
  \gdef\titlefn{#2}
  \ams@title{#1\ifx\@empty\titlefn\else\protect\footnotemark\fi}
  \ifx#3\footnote\expandafter\@gobble\else\expandafter#3\fi
}

この再定義では、もちろん、 も\footnotemark導入されます。

出力1_クロップ

出力2_クロップ

完全なコード

\documentclass{amsart}
\usepackage{xpatch}

\makeatletter
\xpatchcmd\@adminfootnotes{\let\@makefnmark\relax}{}{}{}
\xapptocmd\maketitle{%
  \stepcounter{footnote}
  \ifx\@empty\titlefn\else
    \footnotetext{\scshape\titlefn}\fi}{}{}
\let\ams@title\title
\def\title{\@dblarg\title@}
\def\title@[#1]#2{\gdef\@tempa{#1}\title@aux#2\footnote{}}
\def\title@aux#1\footnote#2#3{%
  \global\let\shorttitle\@tempa
  \gdef\titlefn{#2}
  \ams@title{#1\ifx\@empty\titlefn\else\protect\footnotemark\fi}
  \ifx#3\footnote\expandafter\@gobble\else\expandafter#3\fi
}
\makeatother

\title{text\footnote{text}}

\begin{document}
\maketitle
%for testing purposes
\vfill
\footnotesize\scshape\hskip3.5pt text
\end{document}

関連情報