Imakeidx 在 LuaLaTeX 上失败

Imakeidx 在 LuaLaTeX 上失败

由于这个原因,我不得不从 切换makeindeximakeidx口音相关问题,但我收到错误Missing \begin{document}。我在 TeXnicCenter 中运行lualatex-dev.exe,的参数makeindex.exe"%tm.idx" -t "%tm.ilg" -o "%tm.ind",所有内容都是截至今天更新的。请参阅下面的示例:

\documentclass{article}
\usepackage[hungarian]{babel}
\usepackage{imakeidx} % Putting here xindy as an option doesn't seem to matter.
\usepackage[round]{natbib}
\makeindex[program=texindy,options=-l hungarian -c utf8] % I don't know if encoding option is necessary.
\begin{document}
\frenchspacing

Egy hegylánc közepén keresztültörve tetejéről talapjáig, négymértföldnyi messzeségben;
kétoldalt hatszáz lábtól háromezerig emelkedő magas, egyenes sziklafalak, közepett az
óvilág óriás folyama, az Ister: a Duna. A ránehezülő víztömeg törte-e magának e kaput,
vagy a föld alatti tűz repeszté kétfelé a hegyláncot? Neptun alkotta-e ezt, vagy Volcán?
Vagy ketten együtt? A mű Istené! Ahhoz hasonlót még a mai istenutánzó kor vaskezű emberei
sem bírnak alkotni.

\printindex
\end{document}

答案1

natbib在 之前加载imakeidx,但也改变了 的调用\makeindex,因为-l-c是错误的,应该分别是-L-C

使用lualatex-dev -shell-escape来自动生成索引。否则,运行texindy而不是makeindex

\documentclass{article}
\usepackage[hungarian]{babel}
\usepackage[round]{natbib}
\usepackage{imakeidx} % Putting here xindy as an option doesn't seem to matter.
\makeindex[program=texindy,options=-L hungarian -C utf8]
\begin{document}
\frenchspacing

Egy hegylánc közepén keresztültörve tetejéről talapjáig, négymértföldnyi messzeségben;
kétoldalt hatszáz lábtól háromezerig emelkedő magas, egyenes sziklafalak, közepett az
óvilág óriás folyama, az Ister: a Duna. A ránehezülő víztömeg törte-e magának e kaput,
vagy a föld alatti tűz repeszté kétfelé a hegyláncot? Neptun alkotta-e ezt, vagy Volcán?
Vagy ketten együtt? A mű Istené! Ahhoz hasonlót még a mai istenutánzó kor vaskezű emberei
sem bírnak alkotni.

\index{együtt} \index{kétfelé}

\printindex
\end{document}

在此处输入图片描述

如果不启用,-shell-escape则会收到警告

Package imakeidx Warning: Remember to run lualatex again after calling
(imakeidx)                `texindy -L hungarian -C utf8 magyaridx.idx'.

它会告诉你该做什么。

相关内容