I'm using xindy for my index. And I would like to have cross-references inside. But when I do so, the page number associate to the entry with a cross-reference disappear.

Here is a MWE:



\def\xindyopt{ -I latex -M style_index1 -L english -C utf8}
\makeindex[program=truexindy, options=\xindyopt, intoc]                     

toto    \index{toto}  \newpage 
toti \index{toti|seealso{toto}} \newpage
ta\index{ta|see{toto, toti}} \newpage



and here is my index style file, sytle_index1 :

(define-location-class "arabic-page-numbers" ("arabic-numbers")             
                    :min-range-length 2)                            

(define-attributes (("definition" "usage" "default" "hyperpage")))

(define-crossref-class "see")
(markup-crossref-list :class "see" :open "\seelinkk{" :sep "; " :close "}{}")

(define-crossref-class "seealso")
(markup-crossref-layer-list :sep ", ")
(markup-crossref-list :class "seealso" :open "\seealsolinkk{" :sep "; " :close "}{}")

(define-crossref-class "hyperindexformat")
(markup-crossref-list :class "hyperindexformat" :open
       "\hyperindexformat{" :sep "; " :close "}{}")

(define-location-class-order (

(markup-index :open  "~n\begin{theindex}
    :close "~n~n\end{theindex}~n"

(markup-indexentry :open "~n \item "            :depth 0)
(markup-indexentry :open "~n    \subitem "      :depth 1)
(markup-indexentry :open "~n      \subsubitem " :depth 2)

(markup-locref-list :sep ", ")
(markup-locclass-list :open "\dotfill " :close "" ) ;; :sep ", "

(markup-locref :open "\hyperpage{" :close "}")
(markup-locref :open "\hyperpage{" :close "}" :attr "hyperpage")   

(markup-keyword-list :open "\targetindexentryy{" :close "}" )

1 Answer 1


I found the solution to my problem.

I have to add another entry without cross-ref. Thus we should have in the .tex file:

 toti \index{toti|seealso{toto}} \index{toti} \newpage

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .