0

I have a large book (1052 pages) it's got a lot of pictures and even more endnotes (2037 to be exact). We've recently switched to a system where we have a database that all of the reference info is stored and a function that generates a .tex file with a \newcommand{} containing all of the reference info formatted properly. This has been working great for all of our other books, but when we switched to this method on the big book we keep getting this error when processing.

So the question is, could my method of making a file with the \newcommands for all references be causing it to throw the memory error? This seems unlikely to me, but it's the only thing that's changed since it worked last.

I'm running vtex, and the examples on how to up the memory limit for MikTex, TeXlive, etc. aren't working for me in vtex.

Circle B
  • 123
  • you have not given much of a clue. the error message will say which component was exceeded and what its current value is. Most of them can be increased without recompilation. Also it is not at all clear what your \newcommand look like or how many you have. – David Carlisle Jun 24 '20 at 22:02
  • 5
    Does this answer your question? TeX capacity exceeded (save size) – TobiBS Jun 24 '20 at 22:14
  • @DavidCarlisle the component is [main memory size=524285], here's an example command: \newcommand{\hmdbrefCIAAxHIHH}{\refiddisplay{CIAA-HIHH}De Landa, \textit{War in the Age of Intelligent Machines}, pp. 29-30}, I have 2037 of them. – Circle B Jun 24 '20 at 22:23
  • @TobiBS I'll read over that and see if it helps! – Circle B Jun 24 '20 at 22:23
  • if you are using texlive look at the section of texmf.cnf that starts % Memory. Must be less than 8,000,000 total. if you are using miktex it has equivalent settings but I don't know the details. – David Carlisle Jun 24 '20 at 22:26
  • why the \newcommand they take up a fair amount of memory do you only use them once each? – David Carlisle Jun 24 '20 at 22:27
  • @DavidCarlisle I'm only using the commands once, the reason was so that I could just generate the text from the database and not have to edit them directly in the text. There may be a better way that doesn't use so much memory. We're using vtex, and I can't find anything on how to change the main_memory. – Circle B Jun 24 '20 at 22:47
  • i have no idea about vtex, sorry. but if the use is as I guess why not the usual latex format \bibitem[CIAA-HIHH]De Landa, \textit{War in the Age of Intelligent Machines}, pp. 29-30} why do you need to define a command? – David Carlisle Jun 24 '20 at 23:07
  • a default texlive pdftex dies with! TeX capacity exceeded, sorry [main memory size=5000000]. so roughly ten times the size of the vtex you are using. – David Carlisle Jun 24 '20 at 23:21
  • @DavidCarlisle vtex has a very small number of packages that it works with...I'm not sure if thebibliography is one—I'll definitely look into it! I'm still trying to find out how to increase the memory, it seems quite odd why it would be so low. – Circle B Jun 24 '20 at 23:27
  • 1
    @CircleB Well why would it be so low? hint: tex is quite old already and memory back in the day was sparse. – der bender Jun 24 '20 at 23:34
  • the code I suggested is not from a package it is a basic latex command defined in the format – David Carlisle Jun 25 '20 at 06:31
  • The other alternative is to use a more standard tex implementation, I have only seen one or two questions here on vtex in recent decades is there some particular feature that makes you use vtex? – David Carlisle Jun 25 '20 at 08:12
  • @DavidCarlisle I came on after the decision had been made to use vtex... Originally the main reason was that the hyphenation dictionary limit was too low in MikTex to accommodate our hyphenation dictionary. Vtex allowed us to dynamically build a dictionary for each book, on-the-fly. The other thing was we needed a way to make some paragraphs have a shaded block behind the entire paragraph. I'm sure that by now there's way to do both of those with more modern installs, but we've got a huge library of macros built for vtex. :-\ – Circle B Jun 25 '20 at 13:35
  • well I have no idea if you can build a vtex with larger main mem and to be honest you are not that likely to find anyone on a general forum like this with any knowledge of it either, you'd be better to ask the maintainers. That said you can probably not use those newcommand and so reduce the memory usage, but hard to say as you have only posted fragments. – David Carlisle Jun 25 '20 at 14:14

0 Answers0