Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Friends, I'm stuck with a design issue. I'm writing a songbook with thousands of songs (using the songs package). So far so good.

These days I decided to create indices for each song style/genre, e.g. rock, blues, pop and so forth. I came up with 22 styles/genres. By using the tocloft package, I managed to set all lists I wanted. But then:

No room for a new write

The tocloft package clearly states:

If you try and create too many new listings LaTeX will respond with the error message:

No room for a new write

If you get such a message the only recourse is to redesign your document. The tocloft package does not provide a simple means of specifying new Lists of Floats or float environments. For those, I recommend the ccaption package.

That was the first time I saw that error. Then I read the ccaption manual as well:

If you try and create too many new listings LaTeX will respond with the error message:

No room for a new write

If you get such a message the only recourse is to redesign your document.

So, I decided to dig a little.

After reading about the No room for a new write issue (we have great answers/references on this subject here!), I see I need to change my strategy. Unfortunately, I have no idea of what to do at first.

Is there a way of having so many lists in a document in an efficient way (at least, that LaTeX won't run out of registers)? I'm open to all suggestions. Other packages, hacks, new approaches.

(On a sidenote: I couldn't come up with a MWE in this case. If I'd include my code, the M would stand for maximum or monstruous.)

share|improve this question

1 Answer 1

up vote 5 down vote accepted

Sounds more like a job for an index package as for an list-of-x package. For example splitindex is able to generate multiple indexes with only one output stream.

SplitIndex consists of a LaTeX package, splitidx, and a small program, splitindex. The package may be used to produce one index or several indexes. Without splitindex (for example, using the index package), the number of indexes is limited by the number of TeX’s output streams. But using the program you may use even more than 16 indexes: splitidx outputs only a single file \jobname.idx and the program splits that file into several raw index files and calls your favorite index processor for each of the files.

share|improve this answer
    
i would rather say "application of a splitindex-type technique to a list-of package". –  wasteofspace Jun 30 '11 at 14:11
    
Thanks Martin! I did some minor modifications in the original document and now it works like a charm. –  Paulo Cereda Jun 30 '11 at 14:40

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.