Rich/Textual terminal viewer for Jupyter notebooks focused on copying code and text outputs
Project description
nbsee
Simple CLI viewer for Jupyter notebooks focused on fast reading and easy copying of code and text outputs from the terminal.
Features
- Interactive terminal viewer for
.ipynbfiles - Vim-style navigation between cells
- Toggle focus between code/markdown and outputs
- Copy code or outputs directly to clipboard
- Visual selection mode to copy multiple cells
- Search through inputs and outputs
- Python syntax highlighting via Rich
Usage
nbsee notebook.ipynb— open an interactive viewer.
Key bindings
j/k: move to next/previous cell- Arrow Up/Down: scroll the view line-by-line
- PageUp/PageDown: page scroll
- Ctrl+u / Ctrl+d: half-page scroll up/down
Tab: toggle focus between input (code/markdown) and output (text/plain)- If a cell has no text output,
Tabdoes nothing and shows a brief message. y: copy the currently focused region to clipboard usingxclip -selection clipboardz: hide/show all outputs (fold outputs)Shift+V: start/stop visual selection for inputs; usej/kto expand/shrink;ycopies all selected code cells/: search (inputs+outputs). Enter to submit,Esccancelsn/N: next/prev matchgg/G: jump to first / last cellq: quit
Notes
- Clipboard support requires
xclip(Linux/X11) - When no text output is available, copy shows an inline message
Install
uv (recommended)
uv is a fast Python package manager. Install it from here.
# Run without installing
uvx nbsee notebook.ipynb
# Or install permanently
uv tool install nbsee
pip
pip install nbsee
Development (uv)
- Quick run without installing:
uv run -m nbsee path/to/notebook.ipynb - Run tests:
uv run pytest - Lint/format check:
uv run ruff check .anduv run ruff format --check . - Build distributions:
uv build - Release: push a tag like
v0.1.0to trigger.github/workflows/publish.yml(requires PyPI trusted publishing setup). - Install editable and use
nbseecommand:- Create venv:
uv venv - Activate:
source .venv/bin/activate - Install:
uv pip install -e . - Run:
nbsee path/to/notebook.ipynb
- Create venv:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nbsee-0.1.2.tar.gz.
File metadata
- Download URL: nbsee-0.1.2.tar.gz
- Upload date:
- Size: 14.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
846b32f28e1a97a225771da11d414867f0a498ec02449b4b07f5dfda72487b97
|
|
| MD5 |
b97012a7ff5cf5d0f966ddcc927b51a8
|
|
| BLAKE2b-256 |
36205262d04c19b87d48c3b33a511a874e8235c08d2bf2dbf413ff1d3e97de41
|
Provenance
The following attestation bundles were made for nbsee-0.1.2.tar.gz:
Publisher:
publish.yml on AnakTeka/nbsee
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nbsee-0.1.2.tar.gz -
Subject digest:
846b32f28e1a97a225771da11d414867f0a498ec02449b4b07f5dfda72487b97 - Sigstore transparency entry: 894469847
- Sigstore integration time:
-
Permalink:
AnakTeka/nbsee@11c2b5bb7bbc618bb5af95569ab21dde41ea0916 -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/AnakTeka
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@11c2b5bb7bbc618bb5af95569ab21dde41ea0916 -
Trigger Event:
push
-
Statement type:
File details
Details for the file nbsee-0.1.2-py3-none-any.whl.
File metadata
- Download URL: nbsee-0.1.2-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
828c4d2073cc7ca3bf5f4333761f1f85f5b4e9d7fc82b1509f420c77aaa7c9e2
|
|
| MD5 |
7c025d9e616c1845e45ed4874995114a
|
|
| BLAKE2b-256 |
de9531ff0d61bb83f5e2f02151f5a5bbf1c452b7dc54917865affccb834134f3
|
Provenance
The following attestation bundles were made for nbsee-0.1.2-py3-none-any.whl:
Publisher:
publish.yml on AnakTeka/nbsee
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nbsee-0.1.2-py3-none-any.whl -
Subject digest:
828c4d2073cc7ca3bf5f4333761f1f85f5b4e9d7fc82b1509f420c77aaa7c9e2 - Sigstore transparency entry: 894469876
- Sigstore integration time:
-
Permalink:
AnakTeka/nbsee@11c2b5bb7bbc618bb5af95569ab21dde41ea0916 -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/AnakTeka
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@11c2b5bb7bbc618bb5af95569ab21dde41ea0916 -
Trigger Event:
push
-
Statement type: