Skip to main content

CLI tool to normalize LaTeX \tag numbering in Jupyter Notebook files

Project description

tagrefsorter

A CLI tool to normalize LaTeX \tag{} numbering in Jupyter Notebook (.ipynb) files.

Installation

pip install tagrefsorter

Usage

tagrefsorter path/to/notebook.ipynb

The notebook is overwritten in place.

Algorithm Overview

tagrefsorter processes LaTeX math blocks in markdown cells of a Jupyter Notebook and normalizes equation numbering based on the following rules:

  • For each display math block written as $$ ... $$, a LaTeX \tag{} is added if missing, or updated if already present, so that equation numbers become sequential.

  • If a display math block contains an align environment,

    $$\begin{align}
    ...
    \end{align}$$
    

    then each line inside the align environment is treated as an individual equation. A \tag{} is added or updated for each line, and equation numbers are assigned sequentially in appearance order.

  • Existing tags of the form \tag{x} are considered author-specified equation identifiers. If a markdown cell contains a reference written as $(x)$, it is interpreted as a reference to \tag{x}. When equation numbers are renumbered, all corresponding $(x)$ references are automatically updated to match the new equation number.

As a result, equation numbering and references remain consistent even after equations are reordered, added, or removed.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tagrefsorter-0.3.0.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tagrefsorter-0.3.0-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file tagrefsorter-0.3.0.tar.gz.

File metadata

  • Download URL: tagrefsorter-0.3.0.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tagrefsorter-0.3.0.tar.gz
Algorithm Hash digest
SHA256 1160272f3f730dc309e08d4d3724fa5e95a06410113088f7f62bc8e6b4cf7ab0
MD5 9cee7463eb44d4c8b10a92b48a2e16a0
BLAKE2b-256 fc71417859175a2b262fbf9b603c9c5852e3a6f23cf0170a86e799081801e78e

See more details on using hashes here.

Provenance

The following attestation bundles were made for tagrefsorter-0.3.0.tar.gz:

Publisher: publish.yml on SuzuSys/TagRefSorter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tagrefsorter-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: tagrefsorter-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 6.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tagrefsorter-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 59109313434c7b7b38c8b24a00012ea23a0d4d9a69fe6ecd6259625ca24132df
MD5 f3b799c9255949daa74cb6a38e04c304
BLAKE2b-256 fdf519f00b512f8737f41125cb7c33ba78eee8e25d7d6f860206e9dee19f2c29

See more details on using hashes here.

Provenance

The following attestation bundles were made for tagrefsorter-0.3.0-py3-none-any.whl:

Publisher: publish.yml on SuzuSys/TagRefSorter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page