Apéndices(附录西班牙语口音)

Apéndices(附录西班牙语口音)

亲爱的朋友们:附录和附录有问题。

我有一份scrbook文件,我使用附录包,

\usepackage[title, titletoc]{appendix} 

因为我喜欢“Apéndice”这个词toc

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

但是,当我使用 进行编译时,在(可能在之前)latex中出现错误。原因是在 中有一行这样的代码:file.tocfile.auxfile.aux

\@writefile{toc}{\contentsline {chapter}{Ap\IeC {\'e}ndice \numberline {A}Sobre el \LaTeX  }{27}{ApÈndice.1.Alph1}}

第二次编译时,字符“È”会产生错误。如果我使用 进行编译,lualatex则不会出现任何错误。

我曾尝试修改\indexname\@chapapp但找不到任何解决方案。


是的,这是一个解决方案。我将使用 MWE 来澄清这个问题。在我看来,这个问题是由 UTF-8 编码和inputenc包装引起的,正如以下代码所示:

\documentclass[paper=a4,10pt, twoside]{scrbook}%

\usepackage{etoolbox}

\usepackage{tgheros}    % (Una versión libre de Helvetica)
\renewcommand{\sfdefault}{qhv} %qhv

%:Fuente para todo lo demás (Una versión libre de Times)
\renewcommand{\rmdefault}{qtm}
\usepackage{textcomp}
\normalfont

\usepackage[T1]{fontenc}        
\usepackage[utf8]{inputenc} %para LaTex 

%:Paquetes relacionados con el idioma y codificación
\usepackage[english, spanish, es-nosectiondot, es-noindentfirst, es-nolists, activeacute]{babel} 
\spanishdecimal{.}

%:Para poner las referencias y los nombres de figuras y tablas en castellano
\addto\captionsspanish
{%
\def\figurename{Figura}%
\def\tablename{Tabla}%
\def\listfigurename{Índice de Figuras}
\def\listtablename{Índice de Tablas}
\def\contentsname{Índice}%
\def\chaptername{Capítulo}
\def\Agradecimientos{Agradecimientos}
\def\Prefacename{Prefacio}%
\def\refname{Referencias}%
\def\abstractname{Resumen}%
\def\bibname{{Bibliografía}}
\def\appendixname{Apéndice}
\def\miapendice{\appendixname}
\def\glossaryname{Glosario}%
\def\indexname{{Índice Alfabético}}
}

%:Para definir APÉNDICES
\usepackage[title, titletoc]{appendix}

\usepackage{hyperref} 

\begin{document}

\cleardoublepage
\phantomsection
\tableofcontents

%:Empieza el contenido del libro
\mainmatter

\chapter{Primer capítulo}
\section{Primera sección, primer capítulo}

\chapter{Segundo capítulo}
\section{Primera sección, segundo capítulo}

\begin{appendices}

\chapter{Primer apéndice}
\section{Primera sección, primer apéndice}

\chapter{Segundo apéndice}
\section{Primera sección, segundo apéndice}

\end{appendices}

\end{document}

如果您进行编译,您会收到以下错误消息:

软件包 inputenc 错误:Unicode 字符 \u8:énd 未设置为用于 La-TeX请参阅 inputenc 软件包文档以获取解释。您的命令已被忽略。键入 I 以将其替换为另一个命令,或继续执行而不使用它。ice.alph1.Alph11ice.alph1.Alph20P

但提出的解决方案很完美。谢谢

答案1

这看起来非常类似于如何使附录和 hyperref 包与西里尔字母(非 ASCII)字符一起工作?而这个答案的一部分确实应该会让你开心起来。

加载后添加以下内容(仅在使用appendix时才需要)hyperref

\usepackage{etoolbox}
\makeatletter
\appto{\appendices}{\def\Hy@chapapp{Appendix}}
\makeatother

由于某些原因,hyperref定义\Hy@chapapp\appendixname,而 又变成 (用西班牙语babelappendix),\spanishappendixname又变成Ap\'{e}ndice。但是, 似乎\Hy@chapapp仅用于构建超链接的锚点名称,因此使用什么字符串并不重要,只要它是唯一的即可。由于 的扩展\Hy@chapapp受制于完全扩展,因此最好仅由字符组成。

这是一个最小文档

\documentclass{scrbook}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}
\usepackage[title, titletoc]{appendix}

\usepackage{etoolbox} % we load it for the workaround
\usepackage{hyperref}

% workaround
\makeatletter
\appto{\appendices}{\def\Hy@chapapp{Appendix}}
\makeatother

\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\begin{appendices}
\chapter{Sobre el \LaTeX}
\end{appendices}
\end{document}

相关内容