imakeidx 希腊文

imakeidx 希腊文

问题:使用 imakeidx 为希腊语编制索引时,结果的字母顺序不正确。我也尝试使用 xindy-package,但没有成功。希腊语的正确字母顺序是

藝術本身

但正如您在下面的最小示例中看到的,索引的字母顺序不正确(编译后)。如能得到任何帮助,我们将不胜感激!

\documentclass[10pt]{article}
\usepackage[english, greek]{babel}
\usepackage[iso-8859-7]{inputenc}
\usepackage{gfsbodoni}
 \usepackage{imakeidx}

 \makeindex[program=makeindex,columns=2,title=Ευρετήριο όρων,   
  intoc=true,options={-s index_style.ist}]

 \usepackage{hyperref}

  \begin{document}
   Α\index{α}
   Β\index{β}
   Γ\index{γ}
   Δ\index{δ}
   Ε\index{ε}
   Ζ\index{ζ}
   Η\index{η}
   Θ\index{θ}
   Ι\index{ι}
   Κ\index{κ}
   Λ\index{λ}
   Μ\index{μ}
   Ν\index{ν}
   Ξ\index{ξ}
   Ο\index{ο}
   Π\index{π}
   Ρ\index{ρ}
   Σ\index{σ}
   Τ\index{τ}
   Υ\index{υ}
   Φ\index{φ}
   Χ\index{χ}
   Ψ\index{ψ}
   Ω\index{ω}

   \printindex

   \end{document}

...和 ​​index_style.ist

headings_flag 1
heading_prefix "{\\large\\sffamily\\bfseries "
heading_suffix "}\\nopagebreak\n"
delim_0 " \\dotfill "
delim_1 " \\dotfill "
delim_2 " \\dotfill "

答案1

MakeIndex 不能处理 ASCII 以外的字母。

使用 运行-shell-escape。我不确定 Xindy 是否支持 iso-8859-7。

\documentclass[10pt]{article}
\usepackage[english, greek]{babel}
\usepackage[utf8]{inputenc}
\usepackage{gfsbodoni}
\usepackage[xindy]{imakeidx}
\usepackage[unicode]{hyperref}

\makeindex[columns=4,title=Ευρετήριο όρων,intoc=true,options=-L greek -C utf8]

\AtBeginDocument{%
  \let\imakeidxindex\index
  \renewcommand{\index}[2][]{%
    \if\relax\detokenize{#1}\relax
      \imakeidxindex{\detokenize{#2}}%
    \else
      \imakeidxindex[#1]{\detokenize{#2}}%
    \fi
  }%
}

\begin{document}

Α\index{α}
Β\index{β}
Γ\index{γ}
Δ\index{δ}
Ε\index{ε}
Ζ\index{ζ}
Η\index{η}
Θ\index{θ}
Ι\index{ι}
Κ\index{κ}
Λ\index{λ}
Μ\index{μ}
Ν\index{ν}
Ξ\index{ξ}
Ο\index{ο}
Π\index{π}
Ρ\index{ρ}
Σ\index{σ}
Τ\index{τ}
Υ\index{υ}
Φ\index{φ}
Χ\index{χ}
Ψ\index{ψ}
Ω\index{ω}

\printindex

\end{document}

我使用了四列只是为了使图像更短。

在此处输入图片描述

相关内容