I'm currently trying to compile my thesis using LaTeX and have run up against the old ! No room for a new \write .
problem. After some googling it seems the only way to actually resolve this problem is to restructure your document to minimise the number of writes being consumed.
To that end I've been looking through the .log
to find where they are all being consumed. Here's the results grepped down to those lines containing write
.
\write18 enabled.
(/usr/local/texlive/2010/texmf-dist/tex/latex/rvwrite/rvwrite.sty
Package: rvwrite 2010/08/25 1.2 enhanced write registers (CVR)
Package rvwrite Warning: ****************************************
(rvwrite) Package rvwrite v,1.2 loaded
(rvwrite) [enhanced write registers (CVR)]
(rvwrite) ****************************************.
\rvtwrite=\write3
\openout3 = `thesis-write.tex'.
\@glossaryfile=\write4
\@outemp=\write5
\verbatim@out=\write6
runsystem(echo 'write18-test-20114121256'>"thesis.w18")...executed.
\w@pgf@writea=\write7
\tikzexternal@outfile=\write8
\glswrite=\write9
\glo@main@file=\write10
\FV@OutFile=\write11
\@outlinefile=\write12
\tikzexternal@dep@file=\write13
\tikzexternal@outmakefile=\write14
\tf@tdo=\write15
Where have \write0
, \write1
& \write2
gone? Is the use of these somehow restricted?
I'm using standard packages: algorithm2e
, listings
, glossaries
, pgf
/tikz
, emp
. Some of these appear quite greedy with the resources. glossaries
has claimed \write4
, \write9
, and \write10
. verbatim
and fancyvrb
are loaded by other packages and they claim \write6
and \write11
respectively. The worst culprit seems to be PGF/TikZ taking four writes.
My compilation breaks when LaTeX is trying to construct the Table of Contents listings. I want to make a ToC, a list of Figures, Tables, Listings, and Algorithms. At present there are no where near enough writes to do this. Does anyone have any advice about how I can control the rampant \write
consumption of these packages?
How do people actually make sizable documents using LaTeX with such restrictions? Am I being unreasonable assuming I'll be able to have a 7 chapter document with a ToC, 4 listofs, index, glossary, and bibliography? Or is that beyond the resource limits of LaTeX?
rvwrite
? Its goal is to allow for more writing streams if other packages use it Otherwise, it just uses some streams for no benefit.