IncTeX is an incremental version of TeX. It is derived from Common TeX 2.9 by Pat Monardo. IncTeX analyzes the document (LaTeX or plain TeX or or other type of style) and reformats the pages which have changed. There is some overhead and limit to its ability to know when it can skip reformatting a page. It checkpoints the state and input at page breaks so it can reformat individual pages. It finds the page where the first change occurs and restarts formatting. It parses the formatter state and skips reformatting when it can guarantee that the formatter has returned to a state on a later page that is equivalent to the previous time it was formatting. A document change that permanently changes the formatter state (like changing the sections) prevents this. IncTeX traces the entire set of include's in the input path. It is as sophisticated as "make" in understanding where and how to reposition itself in the input files. The .aux file is always read at the beginning of LaTeX documents, so anything that changes the aux file (like changing paper citations) has the unfortunate side effect of requiring formatting to restart at the first page. IncTeX usually reformats from page 1 the first TWO times it is run on a LaTeX file, because the .aux file has new contents on the second pass. IncTeX is run like normal TeX or LaTeX, with all of the same flags. Type "itex " or "ilatex ". "ilatex myarticle" runs IncTeX on a LaTeX file called myarticle.tex. IncTeX also has these special flags: -v : Reformat the whole document. -j N : Save checkpoints every N pages (jump N). This is to reduce storage use if you have a lot of pages. -q : Disable quiescence checking. IncTeX will not check the formatter state at the end of each page to see if reformatting can be skipped. This is to reduce overhead if you know you will have to reformat from the first change through the end. -i : Force incremental mode. IncTeX skips reformatting and restarts at the next page where there is a change. However, it tries to estimate whether reformatting the intervening pages would be faster than loading a checkpoint and decompressing it using page formatting and checkpointing timing. System load or pausing IncTeX with a debugger throws this logic off and causes it to reformat erroneously. This flag turns off this feature and it will always skip formatting and load a checkpoint. -b : Run in batch mode (turn off all incremental operation). IncTeX will run just like CommonTeX 2.9. (Your TEXFORMATS environment variable so it picks up the .fmt files for IncTeX on your system if they have not been put in the normal TeX directory) You should have a megabyte or so of free disk space to run IncTeX. The storage overhead for IncTeX consists of copies of the (writable) input files and formatter checkpointing information. If a file is a style file or read-only or write-only it does not bother to save it; inctex will just save the file timestamp so it knows if it is changed. Checkpoint sizes depend on the page complexity and the formatter state, and vary from 7K to 35K per page. These files are stored in a local subdirectory called INC. One technique you may want to use is to create a directory on a volume which has more free space, and make a symbolic link called INC to that directory. Since checkpoints are large, when you no longer want to use IncTeX on a document, you should delete the INC directory and free up the space. IncTeX was written as a master's thesis project. This version has been updated from the one which is described. Instead of saving each page as a separate dvi file, the new pages are put in one file and combined with the previous pages to make the new version. This cuts down the number of UNIX file opens and speeds it up. The thesis is available from the Publications Office, 571 Evans Hall, Univ. of California at Berkeley, Berkeley, CA 94720, USA, Tech Report #614, "IncTeX: An Incremental Document Processing System", by Michael A Harrison and Derluen Pan. The following information may help you if are getting strange formatting errors. When LaTeX is aborted, the .aux file can be left in a garbled or incomplete state which causes error messages to be printed and future formatting to fail or be incorrect. If this situation happens with IncTeX, you should delete the .aux file and reformat with the -v flag. Try this if execution of IncTeX failed (it core dumped) and you don't understand why future runs have strange errors.