这是一个代码makeindex
reledmac,脚注A 中的 bibleref 条目和索引中的行号
由于我有一个非英语文本,我尝试使用xindy
MNWE:
\documentclass[twoside,14pt,onecolumn,openright ,a4paper]{memoir}
\usepackage{lipsum}
\usepackage{fontspec}
\usepackage[english]{babel}
\usepackage{xunicode}
\usepackage[nonewpage,xindy]{indextools}
\usepackage[series={A,B,C,D,E},xindy+hyperref]{reledmac} \usepackage[hyperindex=false]{hyperref}
\usepackage{perpage}
\MakePerPage{footnoteA}
\renewcommand*{\thefootnoteA}{(\roman{footnoteA})}
\setmainfont{Sylfaen}
\fnpos{critical-familiar}
\linenummargin{outer}
\lineation{page}
\sidenotemargin{inner}
\usepackage{bibleref}
\Xparindent
\Xafterrule[A]{0pt} % n
\Xbhooknote[A]{\vskip 0pt\noindent}
\Xinplaceoflemmaseparator{0pt}
\Xlemmadisablefontselection{}
\Xarrangement{paragraph}
\arrangementX{paragraph}
\Xlemmafont{}
\renewcommand\footnoteruleA{ %
\kern-3pt \hrule width 5.5cm \kern 2.6pt
}
\renewcommand\Afootnoterule{ %
\kern-3pt \hrule width 3.5cm \kern 2.6pt
}
\setlength{\linenumsep}{16pt}
\setlength{\parindent}{0pt}
\setlength{\parskip}{0pt}
\MakePerPage{footnote@typeset}
\MakePerPage{footnoteA@typeset}
\MakePerPage{footnoteB@typeset}
\AtEveryPend{\par\medskip}
\usepackage[usenames, dvipsnames]{color}
\newcounter{asidenote}
\newcommand{\mysidenote}[1]{%
\refstepcounter{asidenote}\textsuperscript{\alph{asidenote}}%
\ledsidenote{\textsuperscript{\alph{asidenote}}\scriptsize#1}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\rightnoteupfalse
\leftnoteupfalse
\makeindex
\makeindex[title=Bible index,name=bible]
\renewcommand{\biblerefindex}{\edindex[bible]}
\begin{document}
\chapter{Test chapter}
\beginnumbering
\pstart
\lipsum[1]
An old\mysidenote{\ibibleverse{Gn}(1:1-10)} testament reference %\footnoteA{\ibibleverse{Gn}(1:1-10)}.\\
An old testament reference \footnoteA{\ibibleverse{Gn}(3:1-10)}.\\
An old testament reference \footnoteA{\ibibleverse{Gn}(4:1-10)}.\\
An old testament reference \footnoteA{\ibibleverse{Ex}(1:1-10)}.\\
An old testament reference \footnoteA{\edindex[bible]{Lv!1:1-10}}.
\pend
\endnumbering
\backmatter
\printindex[bible]
\end{document}
运行命令:
xindy -I xelatex -M texindy -M reledmac.xdy -o bible.ind bible.idx
给出:
WARNING: unknown cross-reference-class `ledinnote[$&2]'! (ignored)
索引页是空的。所以我需要写入 xdy 文件。怎么做?另一个小问题是如何在索引条目中使用pagenumber^{line number}
(行号作为上标)而不是默认值?pagenumber(linenumber)
答案1
嗯,也许手册上的内容不清楚,但按照以下步骤可以得到您需要的内容。
该
xindy+hyperref
选项不会替换xindy
选项。因此您需要替换\usepackage[series={A,B,C,D,E},xindy+hyperref]{reledmac} 由 \usepackage[series={A,B,C,D,E},xindy,xindy+hyperref]{reledmac}
reledmac 手册文件夹
reledmac.xdy
中有一个提供的文件:examples
http://www.pirbot.com/mirrors/ctan/macros/latex/contrib/reledmac/examples/reledmac.xdy。你只需要将它与你的 .tex 文件一起重新复制即可打开它,你会发现
(markup-locref-list :open " (":sep ", " :close ")" :depth 1 :class "eledmac") 只需将它们更改为
(markup-locref-list :open "\textsuperscript{" :sep ", " :close "}" :depth 1 :class "eledmac") 获取上标中的行号
- 在文件末尾,还需要取消注释一些行才能使用 hyperref。