\addappheadtotoc の「付録」を polyglossia で他の言語に翻訳する

\addappheadtotoc の「付録」を polyglossia で他の言語に翻訳する

「付録」をイタリア語に翻訳するにはどうすればいいでしょうか?

\documentclass[oneside]{book}
\usepackage{appendix}
\usepackage{polyglossia}
\setmainlanguage{italian}

\begin{document}
\tableofcontents
\chapter{My first chapter}
dummy text
\chapter{My second chapter}
dummy text

\appendix
\addappheadtotoc
\chapter{my appendix}
\end{document}

また、「付録」のページ番号が 4 ではなく 3 なのはなぜですか? 目次から「付録」に表示されているページ番号を削除することは可能ですか?

答え1

パッケージappendixにはローカライズされた文字列が定義されていないため、以下を追加する必要があります。

\renewcommand{\appendixtocname}{<Appendices>}

適切な言語セットに翻訳します。イタリア語の場合は

\addto\captionsitalian{%
   \renewcommand{\appendixtocname}{Appendici}%
   \renewcommand{\appendixpagename}{Appendici}%
}

babel(との両方で同じpolyglossia)。ただし、これではページ番号の問題は解決されません。

実際に、この場合はパッケージから取り出すことができますappendix

ただやるだけ

\makeatletter
\g@addto@macro\appendix{%
  \cleardoublepage
  \addtocontents{toc}{\protect\contentsline{chapter}{Appendici}{}{}}%
}
\makeatother

あなたの序文に。

完全な例

\documentclass[oneside]{book}
\usepackage{polyglossia}
\setmainlanguage{italian}

%\usepackage{hyperref} % use it or not as you please

\makeatletter
\g@addto@macro\appendix{%
  \cleardoublepage
  \addtocontents{toc}{\protect\contentsline{chapter}{Appendici}{}{}}%
}
\makeatother

\begin{document}           
\tableofcontents
\chapter{My first chapter}
dummy text
\chapter{My second chapter}
dummy text

\appendix
\chapter{my appendix}
\end{document}

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

が使用される場合のより良いバージョンは次のようになりますhyperref

\documentclass[oneside]{book}
\usepackage{polyglossia}
\setmainlanguage{italian}

\usepackage{hyperref}                              

\makeatletter
\g@addto@macro\appendix{%
  \cleardoublepage
  \hypertarget{appendixstart}{}%
  \addtocontents{toc}{
    \protect\contentsline{chapter}{\protect\hyperlink{appendixstart}{Appendici}}{}{}%
  }%
}
\makeatother

\begin{document}
\tableofcontents
\chapter{My first chapter}
dummy text
\chapter{My second chapter}
dummy text

\appendix
\chapter{my appendix}
\end{document}

これにより、目次の「付録」も付録の最初のページへのリンクに変わります。

関連情報