Demo
Description
h5tui is a vim-style TUI for browsing HDF5 files, inspired by terminal managers like ranger, lf, and yazi.
- Browse: Three-column tree view of HDF5 files with Vim-style keybindings. Includes fuzzy search for quick navigation.
- Plots: Inline 1D line plot or histogram, 2D heatmap with plotext or PDF export via matplotlib.
Installation
The package is on PyPI:
pip install h5tui
Usage
h5tui file.h5
Documentation
File Navigation
h5tui starts at the root HDF5 group. Groups are 📁, datasets 📊.
| Key | Action |
|---|---|
h / j / k / l |
Move left / down / up / right |
g / G |
Jump to top / bottom |
d / u |
Page down / up |
~ |
Return to root |
Searching
| Key | Action |
|---|---|
/ |
Find in group |
n / p |
Next / previous match |
f |
Fuzzy search entire file |
Viewing Datasets
Datasets are opened in a viewer that supports the same type of VIM keybindings for navigating the cells.
Additional keybindings:
| Key | Action |
|---|---|
: |
Jump to row |
y |
Copy focused cell to clipboard |
Plotting
Inline
h5tui plots in the terminal with plotext.
| Key | 1D | 2D | >2D |
|---|---|---|---|
v |
Line plot | Heatmap | — |
V |
Histogram | — | — |
For compound datatypes, any field can be chosen as the x and y axis.
Export as PDF
Press s to open dialog to Save Plot As PDF via matplotlib.
Attributes
Items with attributes display ▼ and a (count).
Press a to view them.
Aggregation
Press A while viewing a dataset for a numerical summary including (e.g., mean, variance, max).
This is performed per field for compound types.
Shared navigation
Most screens reuse the same motion and dismissal keys; meaning depends on focus (tree vs table vs modal).
| Pattern | Keys |
|---|---|
| Move | h j k l, arrows |
| Jump 10 grid cells | H J K L |
| Start/end | g G |
| Page | u d, PageUp PageDown |
| Dismiss/quit | Esc, q, Q |
Limitations
h5tui is meant for reading HDF5 files only; it does not provide functionality for modifying them.
Acknowledgements
This project builds on h5py, Textual, plotext, matplotlib, numpy, and RapidFuzz.
Metadata
Release files for h5tui 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| h5tui-1.0.1.tar.gz | 53.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| h5tui-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 103.1 kB
Release files / h5tui-1.0.1.tar.gz
| Download URL | h5tui-1.0.1.tar.gz |
|---|---|
| Size | 53.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0dc63cc741f7f3bc0a76763fdb6e38dd5d4801d38a9b4146e19e8e138b2e6a5e
|
|
BLAKE2b-256 checksum How to use checksums |
3c297471dda68f7ffa450538a01e14eebd08fdac4f80b1c456cb78c4eaf33277
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / h5tui-1.0.1-py3-none-any.whl
| Download URL | h5tui-1.0.1-py3-none-any.whl |
|---|---|
| Size | 49.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
720e19652e6e641b0389b1efe72ae6e7b3fd37f1b1cdf8e19d843a6cd0c750da
|
|
BLAKE2b-256 checksum How to use checksums |
b61c1b9d5bf2a53c8fae5bec3607e841df971d3cd852d7903a0d54d2113d8933
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|