如何将自定义字母组添加到索引中,例如希腊字母或括号?

如何将自定义字母组添加到索引中,例如希腊字母或括号?

我有一个使用以下方法制作的符号索引makeindex

\documentclass{article}

\usepackage{makeidx}
\makeindex

\begin{document}
Text

\index{sin@$\sin$}    % just some examples of index entries
\index{cos@$\cos$}
\index{tan@$\tan$}

\index{greek.a@$\alpha$}    % symbols with greek letters
\index{greek.b@$\beta_{x,y}$}

\index{(@$(a)_n$}    % an entry with a bracket

\printindex

\end{document}

我希望索引中每个希腊字母都有一个字母组(细分)。(我知道我必须指定另一个键,而且greek.a这行不通。)但不仅仅是希腊字母。我还想组织符号标题下的条目,例如收集那些涉及圆括号的条目()

问题:如何将自定义字母组添加到索引中?(不需要使用makeindex。)

答案1

这个答案是针对 MikTeX 的,我不知道 TeXLive。可以用 来完成xindy。我的.xdy文件开头是:

(define-letter-group "$\alpha$" :after "default" :before "A" :prefixes ("\235\313\227\227\256\200\264\310\244\200"))
(define-letter-group "$\beta$" :after "$\alpha$" :before "A" :prefixes ("\235\313\227\227\256\204\227\332\200"))

这些数字是“greekalpha”和“greekbeta”的八进制代码(您可以选择任何您认为有意义的字符串),我在 Emacs 中输入的不是字符串,而是单个字节,使用M-x hexl-mode C-M-o 235等。您不能从另一个文件复制它们,但您可以在同一个文件中以正常模式复制(或查找和替换)它们。这些数字本身是我从 获得的...\xindy\modules\lang\english\utf8.xdy。如果您遇到问题,这个答案可能会有帮助。

然后我通过定义包装了所有内容,\newcommand\greekindex[1]{\index{greek#1}}以便我可以使用

\greekindex{alpha@$\alpha$}
\greekindex{beta@$\beta_{x,y}$}

请注意,我使用

xindy -C utf8 -L english -M texindy -M mystylefile myfile.idx

我还使用了包bm和我写的标题\bm\alpha等:只需$\alpha$.xdy文件中更改为$\bm\alpha$

相关内容