Ticket #26458 (closed request: fixed)
texlive-bin-extra: where is xindy?
| Reported by: | akim.demaille@… | Owned by: | dports@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 1.9.1 |
| Keywords: | Cc: | ||
| Port: | xindy |
Description
Hi,
Thanks for all the efforts! Xindy is producing *much* better indexes than texindex or makeindex. This package seems to provide its support files, but not the executable itself.
Well, actually, there is a Perl script here:
/opt/local/share/texmf-texlive/scripts/xindy/texindy.pl
But it does not work
xindy.pl: Cannot locate xindy library directory at /opt/local/share/texmf-texlive/scripts/xindy/xindy.pl line 327. BEGIN failed--compilation aborted at /opt/local/share/texmf-texlive/scripts/xindy/xindy.pl line 347.
Thanks in advance!
Change History
comment:1 Changed 3 years ago by dports@…
- Status changed from new to assigned
- Owner changed from macports-tickets@… to dports@…
- Cc dports@… removed
comment:2 Changed 3 years ago by dports@…
I removed the xindy files from texlive-bin-extra when updating the ports to texlive 2010. The plan is to make a separate port for xindy but that hasn't happened yet.
comment:3 Changed 3 years ago by dports@…
- Type changed from defect to request
- Port changed from texlive-bin-extra to xindy
comment:4 Changed 3 years ago by dports@…
- Status changed from assigned to closed
- Resolution set to fixed
I just created a portfile for xindy and committed it in r73542. Let me know if you run into any problems with it; I haven't tested it extensively.
comment:5 follow-up: ↓ 6 Changed 3 years ago by akim.demaille@…
Thanks for your work! The installation went perfectly smoothly.
I gave it a quick shot, and it failed on my (large and rich) document. I have to track down to see what's the problem and if it's in my document, or xindy. It works with stock makeindex.
Reading indexstyle... Loading module "/var/folders/qn/qnQcq104GhSx0tghyVh3Gk+++TM/-Tmp-/W4Yo0BLx3X"... Loading module "lang/general/latin9-lang.xdy"... Loading module "lang/general/latin9.xdy"... Finished loading module "lang/general/latin9.xdy". Finished loading module "lang/general/latin9-lang.xdy". Loading module "tex/inputenc/latin.xdy"... Finished loading module "tex/inputenc/latin.xdy". Loading module "texindy.xdy"... Loading module "numeric-sort.xdy"... Finished loading module "numeric-sort.xdy". Loading module "latex.xdy"... Loading module "tex.xdy"... Finished loading module "tex.xdy". Finished loading module "latex.xdy". Loading module "latex-loc-fmts.xdy"... Finished loading module "latex-loc-fmts.xdy". Loading module "makeindex.xdy"... Finished loading module "makeindex.xdy". Loading module "latin-lettergroups.xdy"... Finished loading module "latin-lettergroups.xdy". Finished loading module "texindy.xdy". Loading module "page-ranges.xdy"... Finished loading module "page-ranges.xdy". Loading module "word-order.xdy"... Finished loading module "word-order.xdy". Finished loading module "/var/folders/qn/qnQcq104GhSx0tghyVh3Gk+++TM/-Tmp-/W4Yo0BLx3X". Finished reading indexstyle. Finalizing indexstyle... (done) Reading raw-index "/var/folders/qn/qnQcq104GhSx0tghyVh3Gk+++TM/-Tmp-/zm07xZ_Gxj"... WARNING: unknown cross-reference-class `hyperindexformat'! (ignored) ERROR: CHAR: index 0 should be less than the length of the string ../../../doc/document-aux/bin/texi2dvi: texindy failed gmake[1]: *** [urbi-sdk.pdf] Error 1
comment:6 in reply to: ↑ 5 ; follow-up: ↓ 7 Changed 3 years ago by dports@…
Replying to akim.demaille@…:
WARNING: unknown cross-reference-class `hyperindexformat'! (ignored)
This seems to be an incompatibility between xindy and the latest hyperref (in TL2010): http://comments.gmane.org/gmane.comp.text.xindy.general/698
ERROR: CHAR: index 0 should be less than the length of the string ../../../doc/document-aux/bin/texi2dvi: texindy failed
Not sure whether this is caused by the earlier warning, or a separate issue...
comment:7 in reply to: ↑ 6 Changed 2 years ago by akim.demaille@…
Replying to dports@…:
Replying to akim.demaille@…:
WARNING: unknown cross-reference-class `hyperindexformat'! (ignored)This seems to be an incompatibility between xindy and the latest hyperref (in TL2010): http://comments.gmane.org/gmane.comp.text.xindy.general/698
ERROR: CHAR: index 0 should be less than the length of the string ../../../doc/document-aux/bin/texi2dvi: texindy failedNot sure whether this is caused by the earlier warning, or a separate issue...
Well, I finally took some time to track this down. It is indeed, unrelated. Cutting down my idx file, the culprit is:
\indexentry {!=@\lstinline []{!=}|hyperpage}{288}
So xindy does not like ! in entries that do not start with something. I can understand that, since it can be used as a separator of sub-index entries (see http://en.wikibooks.org/wiki/LaTeX/Indexing for instance). I had never noticed I had a problem there, since makeindex did not complain, but did not issue the index entry, indeed.
To summarize:
- this is clearly a bug in xindy which forgets to check that the string before ! is not empty
- this is clearly a bug in my document and I need to find a means for makeindex/xindy to accept this != entry.
I meant to answer here, since Google makes it the best match for ERROR: CHAR: index 0 should be less than the length of the string :)


We don't currently build xindy because it has some heavy dependencies (clisp). We should either make it an optional variant on texlive-bin, or put it in a separate port. In either case, texlive-bin-extra shouldn't install the support files without the executable.
I'll see about doing this as part of the TL 2010 update (which should be happening soon).