Tools for rendering Curv file/directory trees and generating terminal screenshots.
Project description
tree-maker
A tool to make a screenshot of a tree of nodes defined in Python code.
Install via pip/uv
term-tree-maker is published on PyPI. Install it with whichever tool you prefer:
# using uv
uv pip install term-tree-maker
# or plain pip
python -m pip install --upgrade pip
python -m pip install term-tree-maker
CLI overview
After installing, three console commands are available everywhere on your PATH:
| Command | Description |
|---|---|
tree |
Runs the packaged tree.py script that generates the text-based tree visualization. All original CLI flags still work. |
make-tree-screenshot |
Launches the Konsole/gnome-screenshot workflow to capture the tree output into PNGs (wraps make-tree-screenshot.sh). |
make-png-from-ssh |
Convenience wrapper for invoking the screenshot workflow from an SSH session (wraps make-png-from-ssh.sh). |
Each command accepts the same arguments as its original script. Example:
tree --chunk-lines-amount 70 --chunk-count
make-tree-screenshot output/my-tree
make-png-from-ssh
Note: The first-time desktop environment preparation (
install.sh) is still required on the target GNOME machine. SeeCONTRIBUTING.mdfor the full setup checklist.
Installation
- From the Gnome console (physically at the machine or over RDP):
cd <this directory>
[ -f $PWD/make-tree-screenshot.sh ] && echo "✅ good you're in the right dir: $PWD" || echo "ERROR: you're in the wrong dir"
The above just verifies that we are in the right directory because install.sh won't work otherwise. It writes config files the current value of $PWD.
./install.sh && echo "✅ Installed tree-maker" >&1 || ( echo "❌ Failed to install tree-maker" >&2 && exit 1 )
- Append this to your
~/.bashrcto make it easier to run:
#
# allow gnome wayland desktop apps to be started from ssh sessiosn
#
export QT_QPA_PLATFORM=wayland
source ~/.bashrc
Usage
- From an SSH session into the server where the tree-maker is installed:
[user@server] cd <this directory>
[user@server] ./make-png-from-ssh.sh
[user@server] it2dl tree.png # download the tree image to your local machine
[user@server] imgcat tree.png # display the tree image in your local terminal
- Or, even easier, just run this from an ssh session:
[user@server] ./make-png-from-ssh.sh
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 term_tree_maker-0.0.1.tar.gz.
File metadata
- Download URL: term_tree_maker-0.0.1.tar.gz
- Upload date:
- Size: 32.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2dd56af494c55f0aca1f8e29ff5718ae187e501b3ff9c1332803125df697ad96
|
|
| MD5 |
7e247217900b5685abf65bcd533bfb8f
|
|
| BLAKE2b-256 |
7bea3fd08bcac673fd7e02cf9f033ad20976fdd2800f17fe6431991f0759dd6b
|
Provenance
The following attestation bundles were made for term_tree_maker-0.0.1.tar.gz:
Publisher:
release.yml on mikegoelzer/term-tree-maker
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
term_tree_maker-0.0.1.tar.gz -
Subject digest:
2dd56af494c55f0aca1f8e29ff5718ae187e501b3ff9c1332803125df697ad96 - Sigstore transparency entry: 715850965
- Sigstore integration time:
-
Permalink:
mikegoelzer/term-tree-maker@24296ed9fa73073d5105897557439072a0f347ec -
Branch / Tag:
refs/tags/term-tree-maker-v0.0.1 - Owner: https://github.com/mikegoelzer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@24296ed9fa73073d5105897557439072a0f347ec -
Trigger Event:
release
-
Statement type:
File details
Details for the file term_tree_maker-0.0.1-py3-none-any.whl.
File metadata
- Download URL: term_tree_maker-0.0.1-py3-none-any.whl
- Upload date:
- Size: 19.1 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 |
42bdd101176b9dfaeb92bd9e4605833c89a4dce07a81c99bd052f7e7743cf38b
|
|
| MD5 |
f6b22d67f4a6943fe018e7fa4744a0f7
|
|
| BLAKE2b-256 |
f7ff669f184e4bea397529f16634aa78499db80d3584cc6c2994e59d2b06e0b6
|
Provenance
The following attestation bundles were made for term_tree_maker-0.0.1-py3-none-any.whl:
Publisher:
release.yml on mikegoelzer/term-tree-maker
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
term_tree_maker-0.0.1-py3-none-any.whl -
Subject digest:
42bdd101176b9dfaeb92bd9e4605833c89a4dce07a81c99bd052f7e7743cf38b - Sigstore transparency entry: 715850968
- Sigstore integration time:
-
Permalink:
mikegoelzer/term-tree-maker@24296ed9fa73073d5105897557439072a0f347ec -
Branch / Tag:
refs/tags/term-tree-maker-v0.0.1 - Owner: https://github.com/mikegoelzer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@24296ed9fa73073d5105897557439072a0f347ec -
Trigger Event:
release
-
Statement type: