作为新手LaTeX
,我希望能够得到有关这个特殊问题的帮助。
不知何故xindy
无法识别我系统上的语言。我在 Windows 上,最近下载了MiKTeX 2.9
,使用TexMaker
,运行XeLaTeX
(尝试了带和不带--shell-escape
/--enable-write18
选项),我的所有.xdy
语言文件似乎都已到位,没有发出警告或错误,但无论我切换到哪种语言,排序都会出错。请注意,XeLaTeX
我无法使用inputenc
。
这是我的 MWE:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{polyglossia}
\setdefaultlanguage{croatian}
\setmainfont{Cambria}
\usepackage{imakeidx}
\makeindex[columns=1]
\begin{document}
avion\index{avion}
buka\index{buka}
cura\index{cura}
čarapa\index{čarapa}
dug\index{dug}
džem\index{džem}
nos\index{nos}
nježan\index{nježan}
\printindex
\end{document}
这是我得到的:
因此,重音字母位于“A”下方。当我关闭该xindy
选项时,我得到了以下信息:
这次它将重音字母放在了字母表的末尾。
在克罗地亚语中,“č” 是一个单独的字母,因此必须列在其自己的标题下,而“dž”和“nj”是复合字母,分别应位于“d”和“n”之后。
我想要得到的是这样的排序:
A
航空
乙
布卡
C
库拉
C
恰拉帕
德
挖
迪兹
德热姆
否
否
新泽西
涅赞
如果我使用捷克语或西班牙语(例如ñ),情况也一样 - 它们在索引中无法正确分组。有没有简单的解决方案?谢谢您的帮助。
答案1
您必须将语言选项传递给 Xindy。运行xelatex -shell-escape
\documentclass{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage[xindy]{imakeidx}
\setdefaultlanguage{croatian}
\makeindex[columns=1,options=-M texindy -L croatian -C utf8]
\begin{document}
avion\index{avion}
buka\index{buka}
cura\index{cura}
čarapa\index{čarapa}
dug\index{dug}
džem\index{džem}
nos\index{nos}
nježan\index{nježan}
\printindex
\end{document}