Это странно. Мне пришлось сделать несколько интересных обходных путей, чтобы заставить его функционировать хоть немного, но у нас есть еще один камень преткновения.
Я изо всех сил пытался создать отдельный документ, в котором бы использовался большой файл .ind (индекс, созданный с помощью makeindex из отдельных небольших файлов .idx), идея в том, что в конечном итоге у меня будет один документ, который указывает SUB -документы и номера страниц, где встречаются проиндексированные данные.
Для этого мне пришлось определить команду, которая собирает все записи индекса, как:
\newcommand{\myindexer}[3]
{\index{myindex}{#1 : #2.#3!\href{\doctitle.pdf}}}
Результат - индексные записи в файле myindex.idx как:
\indexentry{IndexedItemA : 55.iii!\href{Volume 1.pdf}{Volume 1.pdf}}{30}}
\indexentry{IndexedItemB : 23.vi!\href{Volume 3.pdf}{Volume 3.pdf}}{114}}
Тем не менее, существует проблема при попытке создать гиперссылку на целевой PDF. Чтобы открыть PDF-файл на определенной странице, необходимо использовать следующий формат (спасибо кому-то еще на этой доске за указание синтаксиса # page.xx в пакете hyperref):
\href{FILENAME#page.XX}{Link Text}
что означает, что хеш-метка должна быть включена в выходной поток \ newcommand при объявлении myindex, возможно с использованием экранированной хеш-метки # как:
\newcommand{\myindexer}[3]
{\index{myindex}{#1 : #2.#3!\href{\doctitle.pdf\#page.\thepage}}}
или согласно некоторому фрагменту, который я нашел где-то , используя двойную хеш-метку как:
\newcommand{\myindexer}[3]
{\index{myindex}{#1 : #2.#3!\href{\doctitle.pdf##page.\thepage}}}
Первая приводит к следующей ошибке при компиляции источника латекса для нескольких индексируемых документов:
! Illegal parameter number in definition of \@gtempa.
<to be read again>
\thepage
l.31 \myindex{IndexedItemA}{55}{iii}
Хотя последнее приводит к нежелательному обратному слешу в результирующем файле myindex.idx как:
\indexentry{IndexedItemA : 55.iii!\href {Volume 1.pdf\#page.33}{Volume 1}}{33}
, в результате чего целевой PDF-файл открывается неправильно.
Есть идеи, как заставить новую команду вывести хеш-метку для поддержки гиперссылок PDF-файлов таким образом?