NAME autolatex - compile LaTeX and TeX documents SYNOPSIS autolatex [options] command [command ...] DESCRIPTION AutoLaTeX is a tool for managing small to large LaTeX documents. It simplifies the process of producing PDF files or viewing documents by tracking file changes and automating the execution of required programs. One of AutoLaTeX's best features is its translator rules (also known as translators), which automatically generate drawings for inclusion in the PDF from various source formats such as SVG and GNU Plot. For example, consider a document with a single LaTeX file, mydoc.tex. Without AutoLaTeX, producing a .pdf file might require the following commands: F F F F F F F The triple invocation of LaTeX ensures that all references are resolved and layout changes are accounted for. While not overly complex, this process still involves multiple commands. With AutoLaTeX, you can simplify this to: F or simply: F For documents requiring additional tools to generate PDF versions of included drawings or to run BibTeX/Biber for bibliographies, manual compilation becomes cumbersome. AutoLaTeX automates these tasks: it calls the necessary translators and tools for you. Each translator converts a source file (e.g., EPS, SVG, Gnuplot) into a PDF or PNG file. This introduction demonstrates how AutoLaTeX simplifies LaTeX document management. The system is user-friendly for small projects and robust enough for large ones. The rest of this manual provides comprehensive documentation on using, configuring, and installing AutoLaTeX. COMMANDS AutoLaTeX provides a fixed set of commands to perform specific actions on your document. The default command is all. Some commands accept optional arguments; use --help after the command name for details. The available commands are: biblio Processes all tasks required to generate the bibliography (BibTeX, Biber, etc.). build Equivalent to the images, document and view commands, but the viewer is launched only if enabled in the configuration or via the command line. clean Removes all LaTeX temporary files and other temporary files created during project processing from the current working directory. The drawings that are automatically generated by the images command are not removed. cleanall Same as clean, but also removes Emacs ~ files, other backup files, generated figures, and the produced PDF. This command is also known as mrproper. createbeamer Creates a LaTeX package file in the document directory that equips LaTeX Beamer text processor with the control sequences dedicated to AutoLaTeX (slides with animated figures). The package file is named autolatex-beamer.sty. See the command createist for creating a package dedicated to regular LaTeX document. createconfig Creates a standard configuration file in the current directory based on the command-line configuration. createist Creates a default MakeIndex style file in the document directory, named default.ist. createsty Creates a LaTeX package file in the document directory that equips LaTeX text processor with the control sequences dedicated to AutoLaTeX (animated figures and figures with embedded TeX). The package file is named autolatex.sty. See the command createbeamer for creating a package dedicated to LaTeX Beamer. commit Commits changes to a version control system (GIT, CVS, SVN...). The command line must be provided in the configuration file. document Performs all processing required to produce the .pdf, .dvi, or .ps file for the document. This command is also known as gen_doc. glossaries Performs all processing required to generate glossaries (makeglossaries). This command is also known as makeglossaries. images Automatically generates drawings by invoking the translators. index Performs all processing required to generate the index (makeindex). This command is also known as makeindex. init Creates an empty LaTeX document in the current directory following a standard folder structure supported by AutoLaTeX. latex Run one time the (La)TeX text processing to produce the .pdf, .dvi, or .ps file for the document. This command is also known as tex or maketex. makeflat Creates a version of the document in a specific folder (default: ./flat_version/) with a single LaTeX or TeX file and all other files in the same directory, excluding subfolders. This command is also known as preparepublish. This command is useful for creating a version of the document that can be directly uploaded to online publication sites (e.g., Elsevier), which do not support subfolder uploads. This command provides the CLI option --externalbiblio to specify whether the bibliography should be placed in a BibTeX file (external) or inlined in the TeX file (default: inlined). showconfig Displays the configuration definitions read from the configuration files. showconfigfiles Displays the list of configuration filenames read by AutoLaTeX. showdependencies Displays the dependencies of the main LaTeX document in terms of included and used files. showimages Displays the filenames of figures that should be processed by a translator. This command offers specific options to control the type of information displayed. showinstalledtranslators Displays the list of installed translators. This command is also known as installedtranslators. showloadedtranslators Displays the list of loaded translators. This command is also known as translators. showpath Displays the value of the PATH environment variable that is considered by AutoLaTeX. unusedimages Displays (or removes) figures in the document folder that are not included in the document. update Updates the local copy with changes from a version control system (GIT, CVS, SVN...). The command line must be provided in the configuration file. view Launches the document viewer. The command line of the viewer must be provided in the configuration file. GLOBAL OPTIONS --asyncview --noasyncview Enables or disables asynchronous viewer launching. If enabled, AutoLaTeX does not wait for the viewer to close before stopping execution. If disabled, AutoLaTeX waits for the viewer to close. --auto --noauto Enables or disables automatic figure generation using translators. --biblio --nobiblio Enables or disables the bibliography tool (BibTeX, Biber, etc.) if not explicitly invoked from the command line. --continuous [sleep_duration] --nocontinuous Runs AutoLaTeX continuously, repeatedly performing the specified actions. This option causes AutoLaTeX to loop infinitely, similar to the following script (in bash): while 1 do autolatex "$@" sleep B done The sleep_duration parameter specifies the waiting time between loops. If not provided, it defaults to 0. The --continuous option forces --asyncview to be enabled. With a compatible viewer, the display will update automatically. Some UNIX/Linux versions of "gv -watch" support this for PostScript files, which can be configured via a variable. Many other previewers require manual updates. Note: Adobe Acrobat Reader on MS-Windows locks the PDF file, preventing updates, so it is not recommended for continuous mode. --debug Runs AutoLaTeX with the logging level set to 'debug'. The available levels (from least to most verbose) are: off, critical, error, warning, info, fine_info, debug, trace. --defaultist Allows AutoLaTeX to use MakeIndex with the default style (.ist file). The default style is provided by the AutoLaTeX distribution. The --index and --noindex options modify AutoLaTeX's behavior regarding MakeIndex. -d directory --directory directory Specifies a directory containing a LaTeX document to compile. You can specify this option for each directory containing a LaTeX document. If not specified, the current directory is used. --dvi Specifies that the result of the AutoLaTeX process is a DVI or XDVI document, which will be converted to PostScript. This option has the same effect as --ps. -e name --exclude name Prevents AutoLaTeX from loading the translator named name. See below for available translators. The --include option includes a translator, and --include-path specifies where to find translator scripts. --extramacro --noextramacro Enables or disables the supports of extra TeX and LaTeX macros and environments. The list of these extra definitions in detailed in the dedicated section of this documentation. -f file --file file Specifies the main LaTeX file to compile. If not specified, AutoLaTeX searches for a TeX file in the document directory. --file-line-warning --nofile-line-warning Experimental: Enables or disables the extended warning format for LaTeX. This format adds the filename and line number to the warning message, which is useful for extracting warnings from the log file. --gloss --glossary --nogloss --noglossary Enables or disables the use of MakeGlossaries. -h --help Displays the manual. If used before any command, the global manual is shown. If used after a command, only the manual page for that command is displayed. -D directory --imgdirectory directory Specifies a directory where AutoLaTeX will find figures to be processed by translators. Each use of this option adds a directory to the list. -i name --include name Forces AutoLaTeX to load the translator named name. See below for available translators. The --exclude option excludes a translator, and --include-path specifies where to find translator scripts. -I paths --include-path paths Notifies AutoLaTeX of directories containing translator scripts. paths can be a list separated by the operating system's path separator (':' on Unix, ';' on Windows). The --exclude option excludes a translator, and --include includes a translator. --index [style_file] --noindex Allows AutoLaTeX to use MakeIndex. If a value is provided, it is assumed to be an .ist file for MakeIndex. If no value is provided, AutoLaTeX uses MakeIndex and attempts to detect a MakeIndex style file (.ist) in the document directory. If none is found, no style is passed to MakeIndex. The --defaultist and --noindex options modify AutoLaTeX's behavior regarding MakeIndex. --info Runs AutoLaTeX with the logging level set to 'info'. The available levels (from least to most verbose) are: off, critical, error, warning, info, fine_info, debug, trace. --latex Uses the LaTeX command: latex. See also: --pdflatex, --lualatex, and --xelatex. --lualatex Uses the LaTeX command: lualatex. See also: --pdflatex, --latex, and --xelatex. --pdf Specifies that the result of the AutoLaTeX process is a PDF document. --pdflatex Uses the LaTeX command: pdflatex. See also: --latex, --lualatex, and --xelatex. --ps Specifies that the result of the AutoLaTeX process is a PostScript document. This option has the same effect as --dvi. -q --quiet Runs AutoLaTeX with only critical and error messages. The available levels (from least to most verbose) are: off, critical, error, warning, info, fine_info, debug, trace. --search-project-from file When specified, AutoLaTeX searches for a configuration file (usually .autolatex_project.cfg on Unix) in the directory of the specified file or its ancestors. This option does not replace the -d or -f options. --showloglevel Show the current level of logging on the console. This option depends on the usage of the other logging options, such as --verbose or --debug for example. --silent Runs AutoLaTeX without logging messages (off logging level). The available levels (from least to most verbose) are: off, critical, error, warning, info, fine_info, debug, trace. --stderr --stdout Directs AutoLaTeX to output regular messages (not logged) to standard output (stdout) or standard error (stderr). --synctex --nosynctex Enables or disables the generation of SyncTeX-compatible output files. SyncTeX links a viewer and a TeX editor, allowing you to click in one and highlight the corresponding line in the other. --testlogs Show the a message for each level of logging. This option enables to show the behavior of the logging system that is used by AutoLaTeX. This option depends on the usage of the other logging options, such as --verbose or --debug for example. -v --verbose Increases verbosity each time this option is specified. The available levels (from least to most verbose) are: off, critical, error, warning, info, fine_info, debug, trace. Note: If you specify more verbosity than 'trace', AutoLaTeX stops immediately and displays the current in-memory configuration. --version Displays the version of AutoLaTeX. --view --noview Enables or disables the document viewer at the end of compilation. --Wall Runs AutoLaTeX with the logging level set to 'fine_info'. The available levels (from least to most verbose) are: off, critical, error, warning, info, fine_info, debug, trace. --Wnone Runs AutoLaTeX with the logging level set to 'error', suppressing warnings. The available levels (from least to most verbose) are: off, critical, error, warning, info, fine_info, debug, trace. --xelatex Uses the LaTeX command: xelatex. See also: --pdflatex, --latex, and --lualatex. OPTIONS FOR COMMANDS *biblio* --nochdir Prevents AutoLaTeX from changing the current directory to the document's root directory before starting the build process. *build* See options for the *images*, *document* and *view* commands, if any. *clean* --nochdir Prevents AutoLaTeX from changing the current directory to the document's root directory before starting the build process. --norecursive Disables cleaning in subfolders. --simulate Simulates file removal without actually deleting files. --all If specified, the clean command behaves like the *cleanall* command. *cleanall* See the options for *clean*, except for --all, which is implicit for *cleanall*. *createbeamer* --force Overwrites the .sty file for LaTeX Beamer if it exists. *createconfig* --force Overwrites the configuration file if it exists. *createist* --force Overwrites the .ist file if it exists. *createsty* --force Overwrites the .sty file for LaTeX if it exists. *document* --nochdir Prevents AutoLaTeX from changing the current directory to the document's root directory before starting the build process. *glossaries* --nochdir Prevents AutoLaTeX from changing the current directory to the document's root directory before starting the build process. *images* --force Forces the overwriting of all generated figures, ensuring AutoLaTeX runs the translators for all of them. *index* --nochdir Prevents AutoLaTeX from changing the current directory to the document's root directory before starting the build process. *init* --force Overwrites all generated files and folders if they exist. --out directory Specifies the directory where the generated document structure will be written. *latex* --nochdir Prevents AutoLaTeX from changing the current directory to the document's root directory before starting the build process. --showneedloop Show if another run of the (La)TeX text processing is detected as needed for producing the .pdf, .dvi, .ps file. *makeflat* --externalbiblio Forces the use of an external BibTeX file (i.e., a .bib file) instead of inlining the bibliography database in the TeX file. --out directory Specifies the output directory for the flat version. The default directory name is flat_version. *showdependencies* --list Display the dependencies in the form of list of filenames in place of the default tree of dependencies. --noauxfile Prevents AutoLaTeX from reading the auxilliary files in order to extract file dependencies. --times Display for each file the last-change time that is considered by AutoLaTeX in the processing stages. *showimages* --changed Shows only images not associated with up-to-date generated files, i.e., images requiring translator processing. --translators Shows all images and their associated translators. --valid Shows only images associated with up-to-date generated files, i.e., images that do not require translator processing. *showinstalledtranslators* --level --nolevel Shows or hides the installation levels for each translator. *showloadedtranslators* --level --nolevel Shows or hides the activation levels for each translator. *unusedimages* --delete Deletes unused images instead of just listing them. AUTO GENERATION OF FIGURES A converter, called a translator, transforms a source figure into a target format supported by LaTeX. This converter can be an external program (e.g., epstopdf) or an internal Python, Perl, Ruby, or Bash script. Each supported translator is defined in a .transdef2 file (the old format in the Perl implementation of AutoLaTeX uses .transdef). This file contains the shell command line or code to execute. To create a new translator, copy and modify an existing .transdef2 file. Even if excluded from the command line, a translator is automatically included by AutoLaTeX if invoked by another included translator. The provided translators are: Astah/Jude (asta) to Portable Document Format (pdf) Name: astah2pdf Use external converter: astah-pro, astah-uml, astah-com Use translator: svg2pdf Input format: .asta .jude .juth Output format: .pdf Astah/Jude (asta) to Portable Network Graphic (png) Name: astah2png Use external converter: astah-pro, astah-uml, astah-com Use translator: Input format: .asta .jude .juth Output format: .png Astah SysML (asml) to Portable Document Format (pdf) Name: asml2pdf Use external converter: astah-sysml Use translator: svg2pdf Input format: .asml Output format: .pdf Asymptote (asy) to Portable Document Format (pdf) Name: asy2pdf Use external converter: asy Use translator: eps2pdf Input format: .asy Output format: .pdf C/C++ Source Code (.cpp, .c, .hpp, .h) to TeX Source Code (tex): TeXify variant Name: cpp2tex_texify Use external converter: texifyc++ Use translator: Input format: .cpp, .c, .hpp, .h, .c++, .h++ Output format: .tex Compressed Bitmap to Uncompressed Bitmap Based on zcat. This translator assumes input files are compressed with the '.gz' extension. It allows storing compressed figures in the project as raw material for the LaTeX compiler. The bitmaps are decompressed into a file with the same name, excluding the '.gz' extension. Name: imggz2img Use external converter: zcat Use translator: Input format: XXX.gz Output format: XXX Diagram Editor (dia) to Portable Document Format (pdf) Name: dia2pdf Use external converter: dia Use translator: eps2pdf Input format: .dia Output format: .pdf Diagram Editor (dia) to TeX embedded in Portable Document Format (pdf+tex) PDF part: Name: dia2pdf+tex Use external converter: dia Use translator: Input format: .dia_tex .diat .dia+tex .diatex .tex.dia +tex.dia Output format: .pdf TeX part: Name: dia2pdf+tex Use external converter: dia Use translator: Input format: .dia_tex .diat .dia+tex .diatex .tex.dia +tex.dia Output format: .pdftex_t Dot Graphviz (dot) to Portable Document Format (pdf) Name: dot2pdf Use external converter: dot Use translator: Input format: .dot Output format: .pdf Dot Graphviz (dot) to Portable Network Graphic (png) Name: dot2png Use external converter: dot Use translator: Input format: .dot Output format: .png Dot Graphviz (dot) to TeX (tex) Name: dot2tex Use external converter: dot Use translator: Input format: .dot Output format: .tex Encapsulated PostScript (eps) to Portable Document Format (pdf) Name: eps2pdf_epstopdf Use external converter: epstopdf Use translator: Input format: .eps Output format: .pdf XFig document (fig) to Portable Document Format (pdf) Name: fig2pdf Use external converter: fig2dev Use translator: Input format: .fig Output format: .pdf XFig document (fig) to TeX embedded in Portable Document Format (pdf+tex) PDF part: Name: fig2pdf+tex Use external converter: fig2dev Use translator: Input format: .figt .fig_tex .figtex .fig+tex .tex.fig +tex.fig Output format: .pdf TeX part: Name: fig2pdf+tex Use external converter: fig2dev Use translator: Input format: .figt .fig_tex .figtex .fig+tex .tex.fig +tex.fig Output format: .pdftex_t Graph eXchange Language (gxl) to Portable Document Format (pdf) Name: gxl2pdf Use external converter: gxl2dot Use translator: dot2pdf Input format: .gxl Output format: .pdf Graph eXchange Language (gxl) to Portable Network Graphic (png) Name: gxl2png Use external converter: gxl2dot Use translator: dot2png Input format: .gxl Output format: .png Graphics Layout Engine (gle) to Portable Document Format (pdf) Name: gle2pdf Use external converter: gle Use translator: Input format: .gle Output format: .pdf Graphics Layout Engine (gle) to Portable Network Graphic (png) Name: gle2png Use external converter: gle Use translator: Input format: .gle Output format: .png Java Source Code (java) to TeX Source Code (tex): TeXify variant Name: java2tex_texify Use external converter: texifyjava Use translator: Input format: .java Output format: .tex Lisp Script (lisp) to TeX Source Code (tex): TeXify variant Name: lisp2tex_texify Use external converter: texifylisp Use translator: Input format: .lisp Output format: .tex MatLab Script (m) to TeX Source Code (tex): TeXify variant Name: matlab2tex_texify Use external converter: texifymatlab Use translator: Input format: .m Output format: .tex ML Script (ml) to TeX Source Code (tex): TeXify variant Name: ml2tex_texify Use external converter: texifyml Use translator: Input format: .ml Output format: .tex Perl Script (perl) to TeX Source Code (tex): TeXify variant Name: perl2tex_texify Use external converter: texifyperl Use translator: Input format: .perl .pl Output format: .tex Gnuplot (plot) to Portable Document Format (pdf) Name: plot2pdf Use external converter: gnuplot Use translator: eps2pdf Input format: .plot .gnu Output format: .pdf Gnuplot (plot) to TeX embedded in Portable Document Format (pdf+tex) PDF part: Name: plot2pdf+tex Use external converter: gnuplot Use translator: eps2pdf Input format: .plott .plot_tex .plottex .plot+tex .tex.plot +tex.plot .gnut .gnu_tex .gnutex .gnu+tex .tex.gnu +tex.gnu Output format: .pdf TeX part: Name: plot2pdf+tex Use external converter: gnuplot Use translator: Input format: .plott .plot_tex .plottex .plot+tex .tex.plot +tex.plot .gnut .gnu_tex .gnutex .gnu+tex .tex.gnu +tex.gnu Output format: .pdftex_t Python Source Code (py) to TeX Source Code (tex): TeXify variant Name: python2tex_texify Use external converter: texifypython Use translator: Input format: .py Output format: .tex Ruby Source Code (rb) to TeX Source Code (tex): TeXify variant Name: ruby2tex_texify Use external converter: texifyruby Use translator: Input format: .rb Output format: .tex SQL Script (sql) to TeX Source Code (tex): TeXify variant Name: sql2tex_texify Use external converter: texifysql Use translator: Input format: .sql Output format: .tex Scalable Vector Graphic (svg) to Portable Document Format (pdf): Inkscape variant Name: svg2pdf_inkscape Use external converter: inkscape Use translator: Input format: .svg Output format: .pdf Scalable Vector Graphic (svg) to TeX embedded in Portable Document Format (pdf+tex) PDF part: Name: svg2pdf+tex_inkscape Use external converter: inkscape Use translator: Input format: .svgt .svg_t .svgtex .svg+tex .tex.svg +tex.svg Output format: .pdf TeX part: Name: svg2pdf+tex_inkscape Use external converter: inkscape Use translator: Input format: .svgt .svg_t .svgtex .svg+tex .tex.svg +tex.svg Output format: .pdftex_t Scalable Vector Graphic (svg) to Portable Network Graphic (png): Inkscape variant Name: svg2png_inkscape Use external converter: inkscape Use translator: Input format: .svg Output format: .png Scalable Vector Graphic with layers (svg) to Beamer Overlays Name: svg2pdf+layers_inkscape Use external converter: inkscape Use translator: Input format: .svgl .svg_l .svglayers .svg+layers .layers.svg +layers.svg Output format: .pdftex_t .pdf Scalable Vector Graphic with layers (svg) to TeX embedded in Beamer Overlays PDF part: Name: svg2pdf+layers+tex_inkscape Use external converter: inkscape Use translator: Input format: .svglt .svg_lt .svglayerstex .svgtexlayers .svg+layers+tex .svg+tex+layers .layers.tex.svg .tex.layers.svg +layers+tex.svg +tex+layers.svg Output format: .pdf TeX part: Name: svg2pdf+layers+tex_inkscape Use external converter: inkscape Use translator: Input format: .svglt .svg_lt .svglayerstex .svgtexlayers .svg+layers+tex .svg+tex+layers .layers.tex.svg .tex.layers.svg +layers+tex.svg +tex+layers.svg Output format: .pdftex_t PGF/TikZ (tikz) to Portable Document Format (pdf) Name: tikz2pdf Use external converter: pdflatex Use translator: Input format: .tikz Output format: .pdf Gimp (xcf) to Portable Document Format (pdf) Name: xcf2pdf Use external converter: convert Use translator: Input format: .xcf Output format: .pdf Gimp (xcf) to Portable Network Graphic (png) Name: xcf2png Use external converter: convert Use translator: Input format: .xcf Output format: .png UML Metadata Interchange (xmi) to Portable Document Format (pdf): Umbrello variant Name: xmi2pdf_umbrello Use external converter: umbrello Use translator: eps2pdf Input format: .xmi Output format: .pdf Visio Binary Draw (vsd) to Portable Document Format (pdf) Name: vsd2pdf Use external converter: inkscape Use translator: Input format: .vsd .vdx .vsdx Output format: .pdf ANIMATED FIGURES IN AUTOLATEX Animated figures represent a powerful mechanism for constructing dynamic visual content within LaTeX Beamer presentations. Unlike conventional static graphics, an animated figure consists of multiple visual layers that can appear progressively across the slides of a single frame. This approach enables the presenter to control the incremental disclosure of complex diagrams, illustrations, or schematics, thereby guiding the audience through a narrative sequence without requiring separate image files for each step. AutoLaTeX automates the generation of such figures by leveraging layered Scalable Vector Graphics (SVG) files and translating them into a Beamer-compatible format. The underlying principle relies on the mapping between layers in an SVG document and overlay specifications in Beamer. Each layer within the SVG file corresponds to a distinct visual element that may be shown or hidden on specific slides. To control this behavior, the author embeds a frame specification directly into the layer's name. This specification follows the format , where spec defines a set of slide numbers. The syntax accommodates single numbers (e.g., <2>), inclusive ranges (e.g., <3-6>), open-ended ranges (e.g., <5-> for all slides from five onward, or <-8> for slides up to and including eight), and combinations thereof (separated by coma characters). When the SVG is processed by the appropriate AutoLaTeX translator (such as svg2pdf+layers_inkscape) these specifications are extracted and used to generate a Beamer overlay sequence. The resulting output comprises a set of PDF files, each corresponding to one layer, along with a TeX file that orchestrates their inclusion using Beamer's overlay mechanisms. Consequently, when the presentation is compiled, the figure animates: each layer appears exactly on the slides designated by its embedded specification, and layers without a specification typically appear from the beginning. Integration with Beamer is achieved through the LaTeX macros provided by the autolatex-beamer.sty package (see below). Creating an animated figure suitable for AutoLaTeX and Beamer begins with designing the vector graphic in a tool that supports layers, such as Inkscape. The author constructs the diagram as a set of layers, where each layer represents one logical step of the animation. For instance, a technical drawing might have a base layer containing the background and axes, followed by successive layers adding curves, labels, or annotations. The crucial step lies in naming each layer to encode its appearance schedule. The author opens the layer properties dialog and sets the layer name to include the desired frame specification, such as “Base layer” for a layer that should always appear, or “Data curve <2-4>” for a layer that should appear only on slides two through four. After naming, the author saves the file with an extension that triggers the appropriate translator; typically, the +layers.svg extension is used to indicate that the file contains layered content intended for animation. AutoLaTeX's translator will then parse the layer names, generate the overlay structure, and produce the final assets ready for inclusion in the Beamer document. This workflow combines the expressive power of vector graphics editing with the precise overlay control of Beamer, all automated by AutoLaTeX. It eliminates the manual effort of exporting multiple static images and coding their appearance order, thereby streamlining the creation of sophisticated, animated presentations. FIGURES WITH EMBEDDED TEX CODE In scientific and technical documents, figures often require textual elements that demand the typographic quality and mathematical capabilities of LaTeX. Standard graphics formats such as Encapsulated PostScript (EPS) or Scalable Vector Graphics (SVG) typically render text using fonts and formatting determined by the drawing application, which may not align with the document's overall aesthetic or may lack support for complex mathematical notation. To overcome this limitation, many tools, including AutoLaTeX, provide a mechanism for embedding TeX and LaTeX macros directly into the textual components of vector figures. When such a figure is processed, the textual elements are extracted, typeset by the LaTeX engine, and reintegrated into the final graphic, ensuring perfect harmony with the surrounding document. With AutoLaTeX, the underlying principle rests on a class of translators that produce dual output: a PDF file containing the graphical elements (lines, shapes, images) and a companion TeX file that defines the textual overlays. The TeX file contains the macros necessary to position and typeset the text at precisely the coordinates intended by the figure's author. During document compilation, the LaTeX engine reads this TeX file and renders the text using the same font settings, mathematics mode, and cross‑referencing capabilities as the main document. This approach preserves the vector quality of the graphics while achieving seamless integration of LaTeX‑typeset text. Several translators within AutoLaTeX support this dual‑output mode. For diagrams created with Xfig, the translator fig2pdf+tex processes files with extensions such as +tex.fig. The Xfig author must designate text objects that should be treated as LaTeX code by marking them in the editor (see documentation of Xfig). The translator extracts these objects, generates a separate TeX file, and produces a PDF of the graphic stripped of the original text. In Inkscape, the author creates text elements and applies the "LaTeX" rendering mode (via the “Text” menu or by setting the “LaTeX” output option in the export dialog). The translator then separates the graphical paths from the textual content, producing a PDF of the graphic and a .pdftex_t file containing the LaTeX code for the text. Once the source figure has been prepared and saved with the appropriate extension, AutoLaTeX's translator system takes over. Upon detecting a change in the source file, the translator executes the necessary external commands (Inkscape, fig2dev, gnuplot, etc.) to generate the PDF and the TeX companion file. During the LaTeX compilation of the main document, these files are included using specialized macros. The autolatex.sty package provides \includegraphicswtex{filename}, which behaves like the standard \includegraphics but automatically incorporates the associated TeX macros from the companion file. The graphics path resolution for these macros is governed by \DeclareGraphicsExtensionsWtex, which by default includes .pdftex_t, .pstex_t, .pdf_tex, and .ps_tex. The advantages of this approach extend beyond mere aesthetic consistency. Mathematical formulas, chemical notations, and custom LaTeX commands appear exactly as they do in the body text, with proper font selection, sizing, and spacing. References to equations, sections, or bibliographic items within figure labels become possible because the text is typeset at compilation time and can incorporate cross‑references. Moreover, the resulting PDF graphics remain fully scalable and resolution‑independent, preserving the crispness of both lines and text under zoom. LATEX PACKAGES AutoLaTeX provides two LaTeX packages called autolatex.sty and autolatex-beamer.sty. You could create a copy of these packages in the folder of your document by using the command-line's commands createsty and createbeamer autolatex.sty The LaTeX package autolatex.sty provides the following TeX macros: \includegraphicswtex[options]{filename} Includes a figure with combined TeX macros. The file on the file system must have a name with one of the extensions defined with \DeclareGraphicsExtensionsWtex. The options must be either width=XX or height=XX, where XX is a length. \includefigurewtex[options]{filename} Same as \includegraphicswtex. \includeanimatedfigure[options]{filename} Includes the layers of a figure in a Beamer presentation. The layers are assumed to be in separate PDF files. The figure is a TeX file that includes the PDF files in a Beamer-compatible environment. The file on the file system must have a name with one of the extensions defined with \DeclareGraphicsExtensionsWtex. The options must be either width=XX or height=XX, where XX is a length. By default, a layer replaces the previous layer when displayed. You can change the overlay specification by adding the string to the layer title in your SVG editor. The spec part defines the slide numbers on which the layer appears in Beamer. For example, <2> means "only on slide 2"; <6-> means "from slide 6 to the end." \includeanimatedfigurewtex[options]{filename} Includes the layers of a figure combined with TeX macros in a Beamer presentation. The layers are assumed to be in separate PDF files. The figure is a TeX file that includes the PDF files in a Beamer-compatible environment. The file on the file system must have a name with one of the extensions defined with \DeclareGraphicsExtensionsWtex. The options must be either width=XX or height=XX, where XX is a length. By default, a layer replaces the previous layer when displayed. You can change the overlay specification by adding the string to the layer title in your SVG editor. The spec part defines the slide numbers on which the layer appears in Beamer. For example, <2> means "only on slide 2"; <6-> means "from slide 6 to the end." \DeclareGraphicsExtensionsWtex{extensions} Defines the filename extensions used by \includegraphicswtex to locate figure files. The extensions may be separated by coma ',' characters. By default, the declared filename extensions are: .pdftex_t, .pstex_t, .pdf_tex, and .ps_tex. \graphicspath{{path1},{path2}...} This macro is from the TeX package 'graphicx.sty'. It defines the search paths for figures. You could specify multiple paths by separating them with coma ',' characters. It is recommended to enclose each path with block characters '{' and '}'. The figures' files are searched in the different search paths, in the order specified in the argument of \graphicspath. autolatex-beamer.sty The LaTeX package autolatex-beamer.sty provides the following TeX macros: \animatedfigureslide[options]{title}{filename} Create a frame/slide with the given title and that contains only a single figure that is an *animated figure* according to the macros provided by the autolatex.sty package. The frames parameter is optional and specify the frame numbers that must be displayed from the animated figure. Each frame corresponds to a layer from the animated figure. By default, a layer replaces the previous layer when displayed. You can specify the frames to be shown by adding the string This frames part defines the slide numbers on which the layer appears in Beamer. For example, <2> means "only on slide 2"; <6-> means "from slide 6 to the end." The options must be either width=XX, height=XX, label=ID or subtitle=TXT, where XX is a length, ID is the identifier of the slide to be served as its label, and TXT is a regular text. The title is used as the main title of the created slide. The filename is the fielname or the path to animated figure. The file on the file system must have a name with one of the extensions defined with \DeclareGraphicsExtensionsWtex. \autolatexsettoslidecontentwidth{variable} This macro sets the value of the specified length variable (usually defined with a \newlength) to the *width of the text part* of a slide. This macro may be redefined by TeX Beamer templates for changing the computing of this width according to th template's graphical structure. \autolatexsettoslidecontentheight{variable} This macro sets the value of the specified length variable (usually defined with a \newlength) to the *height of the text part* of a slide. This macro may be redefined by TeX Beamer templates for changing the computing of this height according to th template's graphical structure. CONFIGURATION FILE Location of the Configuration Files AutoLaTeX configuration files can be located in several places: * System Configuration (for all users): In the directory where AutoLaTeX is installed (typically /usr/lib/python3/dist-packages/autolatex2 on Unix systems). * User Configuration: Two cases apply: either the configuration directory ($HOME/.autolatex on Unix or C:\Documents and Settings\\Local Settings\Application Data\aut olatex on Windows) exists, or it does not. In the first case, the configuration file is stored in the directory and named autolatex.conf. In the second case, the configuration file is in the user directory and named $HOME/.autolatex on Unix, or C:\Documents and Settings\\Local Settings\Application Data\aut olatex.conf on Windows. * Project Configuration: The configuration file is in the same directory as the main TeX file of the document. It is named .autolatex_project.cfg on Unix and autolatex_project.cfg on Windows. Syntax of the Configuration Files Configuration files follow a syntax similar to Windows .ini files. Comments start with '#' or ';' and continue to the end of the line. Each configuration directive must be within a configuration section, declared by its name in brackets (e.g., [mysection]). Each directive is declared as: directive name = value Several section names are reserved by AutoLaTeX; others are assumed to be translator configurations. [Generation] section This section configures the generation process used by AutoLaTeX. Recognized directives: *biber_cmd*: Specifies the Biber tool command line. Accepted value: any command line. *biber_flags*: Specifies options to pass to the Biber tool. Accepted value: any command line. *bibtex_cmd*: Specifies the BibTeX tool command line. Accepted value: any command line. *bibtex_flags*: Specifies options to pass to the BibTeX tool. Accepted value: any command line. *dvi2ps_cmd*: Specifies the dvips tool command line. Accepted value: any command line. *dvi2ps_flags*: Specifies options to pass to the dvips tool. Accepted value: any command line. *generate images*: Indicates whether AutoLaTeX automatically generates figures. Accepted values: yes or no. *generation type*: Indicates the type of generation. Accepted values: pdf - generate a PDF document dvi - generate a DVI or XDV document ps - generate a PS document *image directory*: Specifies directories where AutoLaTeX finds pictures to be processed by translators. Paths are separated by the path-separator character (':' on Unix, ';' on Windows). *include extra macros*: Specifies if the definition of extra TeX macros (not from TeX or LaTeX standards) must be included and supported by AutoLaTeX. *latex_cmd*: Specifies the LaTeX tool command line. Accepted value: any command line. *latex_flags*: Specifies options to pass to the LaTeX tool. Accepted value: any command line. *main file*: Specifies the basename of the main TeX file to compile. This option is only available in the project's configuration file. See the section on extra macros for the details of the supported macros.² *makeglossaries_cmd*: Specifies the MakeGlossaries tool command line. Accepted value: any command line. *makeglossaries_flags*: Specifies options to pass to the MakeGlossaries tool. Accepted value: any command line. *makeindex style*: Specifies the style to be used by MakeIndex. This is a comma-separated list of values in order of preference. Values include: - if a filename is specified, AutoLaTeX assumes it is the .ist file; @system - AutoLaTeX uses the system default .ist file (from the AutoLaTeX distribution); @detect - AutoLaTeX attempts to find a .ist file in the project's directory. If none is found, no style is passed to MakeIndex; @none - AutoLaTeX assumes no .ist file should be passed to MakeIndex; - AutoLaTeX assumes no .ist file should be passed to MakeIndex. If the list contains multiple values, AutoLaTeX applies the corresponding behaviors in sequence. *makeindex_cmd*: Specifies the MakeIndex tool command line. Accepted value: any command line. *makeindex_flags*: Specifies options to pass to the MakeIndex tool. Accepted value: any command line. *synctex*: Indicates whether the output document should be produced with SyncTeX support. *tex compiler*: Indicates the TeX compiler to use. Accepted values: latex - use latex pdflatex - use pdflatex xelatex - use xelatex lualatex - use lualatex *translator include path*: Specifies additional directories from which translator scripts can be loaded. This is a list of paths separated by commas or the operating system's path separator (':' on Unix, ';' on Windows). If a path contains a comma, enclose it in quotes. [Clean] section This section configures the cleaning features of AutoLaTeX (targets clean and cleanall). Recognized directives: *files to clean*: A list of files to remove when the 'clean' target is invoked. Shell wildcards are allowed. *files to desintegrate*: A list of files to remove when the 'cleanall' target is invoked. Shell wildcards are allowed. [Scm] section This section configures the SCM support of AutoLaTeX (CVS, SVN, or others). Recognized directives: *scm commit*: Specifies the command line to use when committing changes. *scm update*: Specifies the command line to use when updating the local copy. [Viewer] section This section configures the viewer used by AutoLaTeX. Recognized directives: *view*: Indicates whether AutoLaTeX should launch a viewer after LaTeX compilation. Accepted values: yes or no. *viewer*: The path or command line of the viewer to launch. Accepted value: any command line. Translator section A translator section shares the name of the translator it configures. Recognized directives: *files to convert*: A list of files to be converted by this translator. Files are separated by the operating system's path separator (':' on Unix, ';' on Windows). *include module*: Indicates whether the translator should be loaded by default. Accepted values: yes or no. EXTRA TEX AND LATEX MACROS The recognition of the following TeX and LaTeX macros have been included in AutoLaTeX. These macros are not part of the standard TeX distributions. They are usually part of TeX templates provided by the authors of AutoLaTeX. * \animatedfigureslide[options]{title}{path}: See above. Provided by AutoLaTeX. * \begin{bibliographysection}\end{bibliographysection}: equivalent to \begin{bibunit}\end{bibunit} with a bibliography slide added at the end of the section with \bibliographyslide. Provided by the TeX-templates from . * \bibliographyslide: a Beamer slide with a Bibunits bibliography. Provided by the TeX-templates from . * \figureslide[options]{title}{path}: a Beamer slide that contains a single figure. Provided by the TeX-templates from . * \includeanimatedfigure[options]{path}: See above. Provided by AutoLaTeX. * \includeanimatedfigurewtex[options]{path}: See above. Provided by AutoLaTeX. * \includefigurewtex[options]{path}: See above. Provided by AutoLaTeX. * \includegraphicswtex[options]{path}: See above. Provided by AutoLaTeX. * \libraryslide[options]{picture}{title}{authors}{how published}{isbn}: a Beamer slide that shows a description of a book. Provided by the TeX-templates from . * \mfigure[position]{include graphics options}{filename}{caption}{label}[source text]: Include a floating figure with the given arguments. Provided by the tex-upmethodology from . * \mfigure*[position]{include graphics options}{filename}{caption}{label}[source text]: Include a floating figure with the given arguments. Provided by the tex-upmethodology from . * \msubfigure{filename}{caption}: Include a subfigure with the given arguments in a floating figure. Provided by the tex-upmethodology from . * \msubfigure*{filename}{caption}: Include a subfigure with the given arguments in a floating figure. Provided by the tex-upmethodology from . * \mfigurewtex[position]{include graphics options}{filename}{caption}{label}: Include a floating figure embedding TeX macros and with the given arguments. The concept of figure with embedded TeX is based on the AutoLaTeX translators "+tex" as defined above. Provided by the tex-upmethodology from . * \mfigurewtex*[position]{include graphics options}{filename}{caption}{label}: Include a floating figure embedding TeX macros and with the given arguments. The concept of figure with embedded TeX is based on the AutoLaTeX translators "+tex" as defined above. Provided by the tex-upmethodology from . * \partnerlogo{path}: specification of a logo for an associated partner in Beamer template. Provided by the TeX-templates from . * \resolvedfilename: result of the resolution of a picture name. See \resolvepicturename below. Provided by the TeX-templates from . * \resolvepicturename{name}: search for a picture with the given basename inside one of the figure's paths and with one of the supported image filename extensions. The found filename for the picture is stored in the macro \resolvedfilename. Provided by the TeX-templates from . * \sidecite{bibtex identifiers}: in a Beamer template, add a note on the side of the slide that is equivalent to \cite{bibtex identifiers}. Provided by the TeX-templates from . * \sidenote{text}: in a Beamer template, add a text on the side of the slide. Provided by the TeX-templates from . BUG REPORT AND FEEDBACK To report bugs, provide feedback, or suggest new features (in preferred order): a) Visit the developer site on GitHub: b) Visit the AutoLaTeX main page: c) Send an email to the main author: galland@arakhne.org. SYSTEM REQUIREMENTS AutoLaTeX can be used directly from any directory where it is uncompressed, but you may want to compile and install additional files (manuals, etc.). To configure and install AutoLaTeX, you may need Python 3.12 or higher and several Python packages, which are installed by the setup.py script. To use AutoLaTeX, you will require: LaTeX. AutoLaTeX was developed using the TeX Live distribution. Python 3.12 or higher. Several Python packages, typically included in your Python distribution. INSTALLATION To install AutoLaTeX, run the setup.py script to compile and install AutoLaTeX. The basic commands are: cd path_to_autoloader_sources/ ./setup.py build install --optimize --install-layout deb AUTOLATEX LICENSE GNU Lesser General Public License (LGPL) Copyright (c) 1998-2026 Stephane GALLAND This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation ; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. MANUAL COPYRIGHT GNU Free Documentation License (FDL) Copyright (c) 1998-2026 Stephane Galland . Permission is granted to copy, distribute, and/or modify this document under the terms of the GNU Free Documentation License , Version 1.2 or any later version published by the Free Software Foundation ; with the Invariant Sections being AUTOLATEX LICENSE and MANUAL COPYRIGHT, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the file GNU Free Documentation License.txt. SEE ALSO pdflatex, latex, bibtex, biber, epstopdf, fig2dev, gnuplot, inkscape, umbrello, zcat, texify