In addition to the .tex
and .dvi
or .pdf
files, TeX/LaTeX/ConTeXt produces and uses lots of other files. What do they do? Which ones are used to create the document and which ones are automatically created by the compiler. What files can I safely delete?
14 Answers
.fd
= Font definition; used in generating the output.
.bst
= BibTeX Style File (e.g., a certain journal's preferred Bibliography layout settings); used by BibTeX when generating the bibliography.
.aux
= LaTeX auxiliary file; created when LaTeX is run, these contain information LaTeX records which is then used by either BibTeX or LaTeX itself on later runs (e.g., about cross-references), and can contain other things as well. This file is created by running LaTeX but also used the next time LaTeX is run. It can be deleted, but then you may need to run multiple times in the future to regenerate it.
.bbl
= Bibliography; this is what is outputted by BibTeX for insertion into LaTeX the next time LaTeX is run.
.blg
= Bibliography (BibTeX) log -- just like .log
but for BibTeX; generated by BibTeX and can be safely deleted if there's no need to check it for errors.
.brf
= BackReference file for the backref package, I think. I'm not very familiar with these, but I suspect they're created by LaTeX when a file using that package is compiled.
.cls
= Documentclass (like article, or report - if you have them cluttering up your folders, you must use a lot of custom classes for individual journals or universities, etc.) This is obviously used to generate the output.
.dtx
= Documented source file; can be used to generate a LaTeX package or other file along with its associated documentation.
Of these, .aux
and .blg
can be safely deleted. Probably .bbl
too if you don't mind rerunning BibTeX and have access to the .bib
files needed. The rest should not be deleted but maybe moved somewhere more appropriate. In particular .fd
, .cls
, and .dtx
are better taking up space on a (personal) TeX tree, not in the folder of the document you're working on.
-
Thanks very much. Actually, I forgot another extension which is .lbl. Could you please edit your answer to tell me what it is?– RafidCommented Dec 26, 2010 at 16:50
-
2I'm afraid I don't know what a .lbl file is. Probably something specific to a package, like .brf, and the letters suggest something having to do with labels. What packages are you using for things like that? Almost all of these are plain text files, so you could open it and see what's inside.– frabjousCommented Dec 26, 2010 at 17:19
-
1Do we now know what package produces
lbl
files? Commented Oct 3, 2020 at 23:58
General
Manually created
.tex
: The document itself
Created by you.
Automatically created
.aux
: An auxiliary file that saves information for the creation of ToC, references, indices, bibliographies and other things like that. It is reread in the next compiling to create the ToC, references etc.
Created by(pdf/xe/lua)(la)tex
.toc
: An auxiliary file that stores the Table of Contents, read in on subsequent runs to create the actual ToC.
Created by(pdf)latex
,xe(la)tex
..lof
: An auxiliary file that stores the List of Figures, read in on subsequent runs to create the actual LoF.
Created by(pdf)latex
,xe(la)tex
..lot
: An auxiliary file that stores the List of Tables, read in on subsequent runs to create the actual LoT.
Created by(pdf)latex
,xe(la)tex
..log
: Stors all messages of the compilation, like errors and warnings. It’s used by most Editors / LaTeX IDEs to show the errors in you document.
Created by(pdf)latex
,xe(la)tex
..pdf
: The common output format for your document.
Created bypdflatex
,xelatex
,ps2pdf
,dvipdf
.
Bibliographies
Manually created
.bib
: The data base file containing your bibliography entries.
Created by you..bst
: BibTeX style file.
Determines how the bibliography looks (usually downloaded from somewhere)..bbx
: Abiblatex
bibliography style.
Created by users..cbx
: Abiblatex
cite style.
Created by users.
Automatically created
.bbl
: bibliography environment, generated by BibTeX.
This is what the call tobibtex
produces and what is included into your document by the\bibliography
command..blg
:bibtex
andbiber
log file.
Created bybibtex
/biber
..bcf
:biblatex
control file..run.xml
:biber
XML file.-blx.bib
:biblatex
control file.
beamer
special files
In addition to the standard .aux
, .log
, and .toc
files, a beamer
document will also create the following auxiliary files:
.nav
: contains the information needed for the navigation bar hyperlinks..vrb
: will contain the verbatim material whenfragile
(containing verbatim material) frames..snm
: will contain information that will be used by\pgfimage
to include actual slides when using thebeamerarticle
package..out
: contains information about the sectional units that will be used to write the outlines.
General Layout and Package files
Manually created
.cls
: Class files containing settings for you document and providing the basic macros for the mark up, e.g\section
.
Created by users orlatex
with anins
file..def
: Collection of a list of similar definitions, that would make asty
file long and unreadable. See What does the .def file do?, and When to use ".sty" extension and when to use ".def"..dtx
: Source file containing template files, like classes and styles and their documentation.
Created by users..ins
: installation file to extract template files out of adtx
file. Created by users..sty
: Style file containing macro definitions and other extensions for your document. Created by users orlatex
with anins
file.
Automatically created
-
2
-
1@JosephWright: Maybe it’s the wrong word, I’m no native speaker. Pleas change it if you find a better title :-)– TobiCommented May 14, 2012 at 7:27
Some further extension you might encounter depending on what packages you are using:
.soc
- package changes.fdb_latexmk
- compile tool latexmk.fls
- running latex with $ latex -recorder.spl
- documentclass elsarticle (Elsevier journals).auxlock
- tikzlibrary external.xwm
- package xwatermark.tdo
- package todonotes
I think you don't need to worry about files other than *.tex
, *.cls
and *.sty
.
*.tex
is the extension for input files in which you put your document content and format. You can have more than one input file for your project. But only one input file can contain\documentclass
call. The input file contains\documentclass
call is called as your main input file.*.cls
is the extension for documentclass containing layout settings and commands. There are many documentclass, such asarticle
,book
,minimal
,report
, etc. From within your main input file, you call this document class using the command\documentclass{book}
, for example. Calling\documentclass{book}
means you want to create a book project. In book project, you will have some settings such as chapter, section, subsection, subsubsection, frontmatter, mainmatter, backmatter, etc. Other documentclass also has different settings.*.sty
is the extension for package containing class-agnostic commands. There are many packages. Each provides different purposes and works indendepently. For example, if you want to draw Euclid diagram for your project, you can usepst-eucl.sty
. From within your main input file, you call this package by using\usepackage{pst-eucl}
.
As the rule of thumbs: You may accidently lose files other than your input files, image files, data files. If you lost *.cls
and *.sty
, download again from the internet. If you lost *.aux
, just compile again your input file.
-
4I don't understand why someone wouldn't need to worry about .bst or .fd files, etc. Deleting those could definitely cause problems.– frabjousCommented Dec 26, 2010 at 15:58
-
@frabjous. I don't say the other files are not important. :-) Commented Dec 26, 2010 at 16:02
-
4@frabjous: I would read "don't worry about them" as "leave them be: don't try to understand what's going on with them, for now, just treat them as part of the magic of TeX", certainly not as "they're not important; you may as well delete them"! Commented Dec 26, 2010 at 21:04
-
Fair enough! Just so long as it is clear, which it wasn't to me, and may not have been to others. (It is now, thank!.)– frabjousCommented Dec 26, 2010 at 22:06
-
ConTeXt MkIV related files:
User-Input Files
.tex
: For content and typesetting instructions..cld
: For ConTeXt Lua Documents.xml
: For XML data (related:.xhtml
)
Macro package files
.mkiv
: Code for MkIV.mkvi
: Code for MkIV written with named variables\def\macro#{val1}#{val2}
rather than\def\macro#1#2
, etc.).lua
: Lua code for MkIV.lfg
: Goodies for fonts (used for creating virtual fonts and changing parameters defined in fonts).mpiv
: Metapost code for MkIV
Automatically generated
.tuc
: Data stored for multiple passes, ToC, etc..log
: Log file
You can safely delete the .tuc
and .log
files. These can be automatically deleted if you run
context --purgeall
The following is a list of most of the common file extensions used for UNIX (La)TeX files and what they mean. They are in the order in which you are likely to come across them rather than alphabetic order.
.tex
: denotes a source file for any flavour of TeX..cls
: denotes a LaTeX 2e class file..clo
: denotes a LaTeX 2e class option file. usually options associated with a class are defined in a.cls
file, but occasionally they are defined in separate.clo
files..sty
: denotes a LaTeX (or AmS-TeX) package/style file. LaTeX 2.09 made no distinction between classes and packages ... all such files were style files - hence the suffix. LaTeX 2e has retained the suffix for what it now terms as packages..log
: denotes a log file for any flavour of TeX..aux
: denotes an auxiliary file. generated by running latex (or etex) on a source file. It typically contains information latex needs on a second pass to construct\refs
and\cites
and information that bibtex needs to construct a.bbl
file..toc
: denotes a table of contents file. generated by latex when the source file contains the line\tableofcontents
..lot
: denotes a list of tables file. generated by latex when the source file contains the line\listoftables
(Similar to a .toc file.).lof
: denotes a list of figures file. generated by latex when the source file contains the line\listoffigures
(Similar to a .toc file.).bib
: denotes a BibTeX source file. such files contain the database from which the.bbl
bibliography file is generated..bst
: denotes a BibTeX style file. the style in which bibtex presents the.bbl
bibliography file..bbl
: denotes a (La)TeX bibliography file. usually generated by bibtex..blg
: denotes a BibTeX log file..idx
: denotes a MakeIndex index source file. contains\indexentry
commands generated by a first pass of a TeX source file through a flavour of TeX..ist
: denotes a MakeIndex style file. needed only when the default manner in which makeindex processes an.idx
file needs to be over-ridden, e.g. when makeindex is used for generating a.gls
glossary file..ind
: denotes a (La)TeX index file. usually generated by makeindex..ilg
: denotes a MakeIndex log file..glo
: denotes a MakeIndex glossary source file. contains\glossaryentry
commands generated by a first pass of a TeX source file through a flavour of TeX..gls
: denotes a TeX glossary file. usually generated by makeindex, which needs an appropriate.ist
file to over-ride the MakeIndex defaults that produce indexes..glg
: denotes a MakeIndex glossary log file..dtx
: denotes a file containing (La)TeX package(s)/class(es) together with its documentation. Running (La)TeX on the file usually generates the.dvi
documentation. An accompanying.ins
file calls docstrip.tex to strip the (La)TeX package(s)/class(es) from the.dtx
file and sometimes also a.drv
file..ins
: denotes a (La)TeX install file. Running (La)TeX on the file strips package or class files from accompanying.dtx
files(s)..drv
: denotes a (La)TeX driver file. Sometimes stripped from a.dtx
file by running (La)TeX on an.ins
file. Running (La)TeX on the .drv file generates the.dvi
documentation.
Files generated by some other packages
changebar
.cb2
: Coordinates of "points" in the text for beginning and ending stretches marked by a change-bar on the side..cb
: Some other kind of history / points file (package documentation is not very clear about it)
(r)(e)ledmac/(r)(e)ledpar files
.1, .1R, .2, .2R
file storing metadata about line break and critical notes. One by\beginnumbering...\endnumbering
.eledsec1, .elesdec2
etc. File for theeledsection
and related commands.Aend, .Bend, .Cend
etc. File for the endnotes of series A, B, C etc.
In addition to all the other answers mentioned here, I'd like to add the extensions mtc[0-9]
and ptc
to the list here.
Files with these extension names are created by the titletoc
package, usually used in books and long articles to obtain a toc within each chapter.
I guess they stand for mini toc
(with the suffix denoting chapter number) and partial toc
(i.e. the global toc that gets continuously updated during the build process as each chapter is getting built).
I'm surprised no one has mentioned .synctex.gz
(used by synctex to let you associate locations in your output with your source) even in the comments. I'm just adding it for completeness
.mw
extension is from themorewrites
package. Apologies for asking ... trying to track down an obscureRunaway text?
error that halts the compiler with a few mysterious, peculiar comments\_morewrites_tex_immediate:w
\_morewrites_tex_write:w
and\g_morewrites_iow
output on the console that I don't understand.LaTeX
mechanism for indicating the extensions used for temporary files. This could be indicated via anASCII
file in the source code of a project. It would then be very easy to have all the extensions that can be removed.