Parse and index LaTeX files¶
This library parses and indexes includes and macros in latex files. This package can be used as a command line tool or an API. The following are parsed and reported:
Package imports using
\usepackage
to create dependency trees.Macro defined with
\newcommand
.
Documentation¶
See the full documentation. The API reference is also available.
Obtaining¶
The library can be installed with pip from the pypi repository:
pip3 install zensols.latidx
Usage¶
This package can be used as a command line tool or an API.
Command Line¶
To get the dependencies of a LaTeX project (in this case using the test case project for the example), use
latidx deps test-resources/proj
Output:
root
+-- child.sty
+-- root.tex
+-- child.sty
+-- orphan.sty
API¶
>>> from pathlib import Path
from pathlib import Path
>>> from zensols.latidx import LatexIndexer, ApplicationFactory
from zensols.latidx import LatexIndexer, ApplicationFactory
>>> idx: LatexIndexer = ApplicationFactory.get_indexer()
idx: LatexIndexer = ApplicationFactory.get_indexer()
>>> proj = idx.create_project((Path('test-resources') / 'proj',))
proj = idx.create_project((Path('test-resources') / 'proj',))
>>> proj.write()
proj.write()
files:
path: test-resources/proj/root.tex
usepackages:
child @ 16
orphan @ 46
newcommands:
rootcmd @ 90
...
Changelog¶
An extensive changelog is available here.
License¶
Copyright (c) 2024 - 2025 Paul Landes