付録名は大文字ですが、付録の目次では小文字です

付録名は大文字ですが、付録の目次では小文字です

私は付録のある論文を書いています。付録の目次で参照されています。ただし、次の要件があります:

  • 付録が実際にある場所には付録名を大文字で記載する
  • 付録の目次では小文字で表記する。

私は付録を次のように宣言します:

\Annexe{Échantillons Utilisés}

これにより、目次の小文字の要件は問題ありませんが、付録のタイトルでは大文字で表示されません。

ここ使用するテンプレートです。さらに、ここにメインページリンクが壊れた場合にテンプレートを取得できます。

.sty「付録の見出し」のファイルを調べようかと考えていました\MakeUpperCaseが、どこに書き留めてよいかわかりません。これは実行可能な解決策でしょうか? どこにそれを入力すればよいでしょうか (または、もっと興味深い解決策を知っている方がいたら教えてください)?

ありがとう!

編集 :こここれは、Overleaf プレイグラウンドでの最小限の (動作する) 例の試みです。提供されている .sty ファイルを確認して試すことができます。必要に応じて、テンプレート ファイル全体を含むフォルダーもあります。

私の MWE にはバグがいっぱいですが (ため息)、付録の目次と付録の見出しが同じ書式 (大文字/小文字) を共有していることがわかります。

答え1

TeX.SX へようこそ! もう少しコードがあると便利ですが、付録の名前が大文字でないという問題だけであれば、ドキュメントが記事または章で、レポート形式を選択した場合は、次のように、それを抑制セクションとして宣言するだけです\chapter*{Appendix}。その後、次のように名前を再定義します。\addcontentsline{toc}{chapter}{appendix} ここに、私の論文レイアウトからの概略図を示します。

\documentclass[12pt]{report}
\begin{document}
  \chapter*{Abstract}
  \newpage
  \tableofcontents
  \newpage
  \chapter{Chapter 1}
  \newpage
  \chapter*{Appendix}                        %Suppress the capitalised name  
  \addcontentsline{toc}{chapter}{appendix}   %Manually add the non-capitalised one
  \section{Risk Assessment}
  \section{Proofs}
\end{document}

付録は目次では次のように表示されます。 ここに画像の説明を入力してください

答え2

私も同様の問題を抱えていましたが、次のように試すことができます。最初の行でタイトルを追加し (したがって、あなたの場合は大文字にする必要があります)、2 行目で目次に追加します (したがって、小文字で入力します)。

\chapter*{Your Uppercase Title}
\addcontentsline{toc}{chapter}{your lowercase title}

編集:\appendix付録を始める前に、前の章からの番号付けを続けるのではなく、「A.」、「B.」などの番号を付けることを忘れないでください。したがって、上記の完全なコードは次のようになります。

\appendix
\chapter*{Your Uppercase Title}
\addcontentsline{toc}{chapter}{your lowercase title}

答え3

.sty回答ありがとうございます。確かに問題は解決しましたが、部分的にしか解決できませんでした。最終的には、テンプレートのファイルに含まれるすべてのルールと相互作用しました。

要約すると、goto の答えは次のようになります。

% eventually \appendix here 
\chapter*{THE CHAPTER}
\addcontentsline{toc}{chapter}{The chapter}

しかし、誰かが使用するテンプレートの\commandsで定義されているものと競合する可能性があります。私の場合は、スタイル/間隔などが定義されています。(ただし、回答のおかげで、プロセス全体を追跡できました。本当にありがとうございます!).sty\Annexe{The chapter}.sty

.styしたがって、適用するスタイルを取得して提案された回答に対してそれを実行するか、直接ハッキングしてその問題を解決する場所と方法を見つける必要があります\Annexe .sty

以下に、他の人が学校テンプレートを診断するのに役立つように、プロセスを要約します。 :)

まず、\newcommand\annexe学校で定義されている : ここで の解釈を探します\Annexe( の場合は\Appendixを検索します\newcommand\appendix)。

私の場合、\@annexeそのコマンドのどこかの時点で呼び出されます。\@annexeは、入力として「The chapter」を受け取る関数です。全文は次のとおりです。

\def\@annexe[#1]#2{\ifnum \c@secnumdepth >\m@ne
                       \if@mainmatter
                         \refstepcounter{chapter}%
                         \typeout{\@chapapp\space\thechapter.}%
                         \if@english
                           \addcontentsline{app}{annexe}%
                               {\protect\numberline{Appendix\nobreakspace\thechapter}#1}%
                         \else
                             \addcontentsline{app}{annexe}%
                               {\protect\numberline{Annexe\nobreakspace\thechapter}#1}%
                         \fi  
                       \else
                         \addcontentsline{app}{annexe}{#1}%
                       \fi
                    \else
                      \addcontentsline{app}{annexe}{#1}%
                    \fi
                    \chaptermark{#1}%
                    \if@twocolumn
                      \@topnewpage[\@makeappendixhead{#2}]%
                    \else
                      \@makeappendixhead{#2}%
                      \@afterheading
                    \fi}

ご覧のとおり、これは混乱しており、\chapter*{}解決策が意図したとおりに機能しなかった理由を説明しています。ここではコマンド\addcontentsline{}も確認できます。問題の鍵となるのは、\@makeappendixhead{#2}}使用されたコマンドです\MakeUppercase{}。ここでは、目的のコマンドを使用します。

\def\@makeappendixhead#1{%
  {\parindent \z@ \raggedright \normalfont
    \centering
    \ifnum \c@secnumdepth >\m@ne
      \if@mainmatter
        \if@english
            \normalsize\bfseries APPENDIX\space\thechapter
        \else       
            \normalsize\bfseries ANNEXE\space\thechapter
        \fi
        %\par\nobreak
        %\vskip 20\p@
        \space\space\space\space
      \fi
    \fi
    \interlinepenalty\@M
    \normalsize \bfseries {\MakeUppercase{#1}}\par\nobreak 
    \vskip 40\p@
  }}

そして出来上がり! :)

そのコンテキストで、makeuppercase をどのように使用すればよいのか、私には完全には理解できていません (double は{{}}怪しいように思えます) が、何度か試行錯誤した結果、最終的にはうまくいきました。

関連情報