On Wed, Feb 09, 2011 at 10:17:54PM +0100, Paul Isambert wrote:
> Le 09/02/2011 20:52, Michael Joyner a écrit :
> >We are trying to use XeIndex/XeSearch on what we consider to be
> >some medium/small documents and are getting the following error:
> >
> > ! TeX capacity exceeded, sorry [save size=80000].
> > \pdfstringdef ... \let \GenericError \@gobblefour
> > \let
> > \GenericWarning \@gob...
> > l.5671
> > Here is how much of TeX's memory you used:
> > 26308 strings out of 494522
> > 458137 string characters out of 503842
> > 738532 words of memory out of 3000000
> > 29310 multiletter control sequences out of 15000+200000
> > 9330 words of font info for 51 fonts, out of 3000000 for 9000
> > 670 hyphenation exceptions out of 8191
> > 40i,7n,43p,500b,80001s stack positions out of
> > 5000i,500n,10000p,200000b,80000s
> > Output written on 000002944.pdf (79 pages).
> >
> >
> >I have tried increasing the 'save size' above 80000, but it
> >doesn't seem to go any higher. :(
> >
> >This occurs when the package is loaded, regardless as to whether
> >we specify words to index or not.
> >
> >We tested with just XeSearch loading, and the same error occurred.
> >
> >We would really appreciate any advice on this.
>
> Without a minimal example, there isn't much I can do. But possible
> loops are described on page 5 of the doc. Are you sure you're not in
> such a case?
\documentclass{article}
\usepackage{xesearch}
\begin{document}
\tracingassigns=1
Hello World
\tracingassigns=0
\end{document}
The example shows that each word creates two command sequences,
example for "Hello":
{changing \Hello@cs@xs@words=undefined}
{into \Hello@cs@xs@words=\relax}
{changing \hello@ncs@xs@words=undefined}
{into \hello@ncs@xs@words=\relax}
I don't know the internals of xesearch.sty, but do you really need
the meaning \relax? Or it is just the usual side effect of TeX's
\csname?
In \xs@@F@Test you are using:
\expandafter\ifx\csname\xs@String @cs@xs@words\endcsname\relax
Perhaps you can replace it by \ifcsname ...\endcsname?
Yours sincerely
Heiko Oberdiek
--------------------------------------------------
Subscriptions, Archive, and List information, etc.:
http://tug.org/mailman/listinfo/xetex