如何添加俄语支持并将目录标题设置为英文?

如何添加俄语支持并将目录标题设置为英文?
\documentclass[a4paper, 12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[russian]{babel}
\usepackage[bookmarks]{hyperref}
\usepackage{a4wide}

\author{Name Surname}
\title{LaTex Demo Document}

\usepackage{graphicx}
\graphicspath{ {images/} }

\begin{document}
  \maketitle
  \tableofcontents

    \section{first section}
        тест

    \subsection{sub section}
        тест

\end{document}

... 生成支持西里尔字母并带有俄语标题的文档。

如何将目录标题设置为另一种语言(例如英语)并保存西里尔字母支持(没有 babel 包文档将不会被编译)?

答案1

解决办法。\let\oldcontentsname\contentsname \AtBeginDocument{\let\contentsname\oldcontentsname}在 babel 后面添加

\documentclass[a4paper, 12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[russian]{babel}
\usepackage[bookmarks]{hyperref}
\usepackage{a4wide}
\let\oldcontentsname\contentsname \AtBeginDocument{\let\contentsname\oldcontentsname}

\author{Name Surname}
\title{LaTex Demo Document}

\usepackage{graphicx}
\graphicspath{ {images/} }

\begin{document}
  \maketitle
  \tableofcontents

    \section{first section}
        тест

    \subsection{sub section}
        тест

\end{document}

更新

\documentclass[a4paper, 12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[russian]{babel}
\usepackage[bookmarks]{hyperref}
\usepackage{a4wide}


\author{Name Surname}
\title{LaTex Demo Document}

\usepackage{graphicx}
\graphicspath{ {images/} }

\begin{document}
%%% add from article.cls
\renewcommand\contentsname{Contents}
\renewcommand\listfigurename{List of Figures}
\renewcommand\listtablename{List of Tables}
\renewcommand\refname{References}
\renewcommand\indexname{Index}
\renewcommand\figurename{Figure}
\renewcommand\tablename{Table}
\renewcommand\partname{Part}
\renewcommand\appendixname{Appendix}
\renewcommand\abstractname{Abstract}
\def\today{\ifcase\month\or
  January\or February\or March\or April\or May\or June\or
  July\or August\or September\or October\or November\or December\fi
  \space\number\day, \number\year}
%%%%%

  \maketitle
  \tableofcontents

    \section{first section}
        тест

    \subsection{sub section}
        тест

\end{document}

答案2

一切都非常简单。babel语言列表中的最后一个语言是默认语言。并且在 latex 生成 toc 和其他内容时会使用最后指定的语言。

谢谢您的回复,@touhami。

相关内容