Skip to main content

A JupyterLab Extension for showing cell (git) diffs.

Project description

jupyterlab-cell-diff

Github Actions Status

A JupyterLab extension for showing cell diffs with multiple diffing strategies.

Requirements

  • JupyterLab >= 4.0.0

Installation

PyPI Installation

pip install jupyterlab_cell_diff

Development Installation

# Clone the repository
git clone https://github.com/jupyter-ai-contrib/jupyterlab-cell-diff.git
cd jupyterlab-cell-diff

# Install the extension in development mode
pip install -e .
jupyter labextension develop . --overwrite

Usage

Commands

The extension provides a command to show cell diffs:

  • jupyterlab-cell-diff:show-codemirror - Show diff using @codemirror/merge

https://github.com/user-attachments/assets/0dacd7f0-5963-4ebe-81da-2958f0117071

Programmatic Usage

app.commands.execute('jupyterlab-cell-diff:show-codemirror', {
  cellId: 'cell-id',
  originalSource: 'print("Hello")',
  newSource: 'print("Hello, World!")'
});

Command Arguments

The jupyterlab-cell-diff:show-codemirror command accepts the following arguments:

Argument Type Required Description
cellId string No ID of the cell to show diff for. If not provided, uses the active cell
originalSource string Yes Original source code to compare against
newSource string Yes New source code to compare with
showActionButtons boolean No Whether to show action buttons in the diff widget (default: true)
notebookPath string No Path to the notebook containing the cell. If not provided, uses the current notebook
openDiff boolean No Whether to open the diff widget automatically (default: true)

Uninstall

To remove the extension, execute:

pip uninstall jupyterlab_cell_diff

Troubleshoot

To check the frontend extension is installed:

jupyter labextension list

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

jupyterlab_cell_diff-0.5.1.tar.gz (159.2 kB view details)

Uploaded Source

Built Distribution

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

jupyterlab_cell_diff-0.5.1-py3-none-any.whl (91.6 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_cell_diff-0.5.1.tar.gz.

File metadata

  • Download URL: jupyterlab_cell_diff-0.5.1.tar.gz
  • Upload date:
  • Size: 159.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for jupyterlab_cell_diff-0.5.1.tar.gz
Algorithm Hash digest
SHA256 1ec08b0d1595a5f7672b3cf8af239444d42b056335d49bc476a4dadfb63ba298
MD5 e04a5e47abb6921d06bece921299f416
BLAKE2b-256 173b4355bc223728f1951e385d0b87080710d11e9e8ccc298bdc33bd5dbeee5f

See more details on using hashes here.

File details

Details for the file jupyterlab_cell_diff-0.5.1-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_cell_diff-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 33d6f00c1d06ae8cd6135bc80d939e3dd62e64c153e1728ba2af8b5d0f614f01
MD5 f46ca01f614de3dad2035f5f5885170b
BLAKE2b-256 bd7bbcaa1edc3c32e9ba501ab8a395dcd93b022153f7a3b058b73f5928bc77b5

See more details on using hashes here.

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