A small CLI helper for Das Schwarze Auge (DSA) character sheets exported as HTML (e.g. from Helden Software).
It annotates the talent table with the hero’s current characteristic values, so entries like:
Athletik | (GE/KO/KK) | BEx2 | 7
become:
Athletik | ( GE[14] / KO[16] / KK[15] ) | BEx2 | 7
The tool modifies the input file in-place and creates a timestamped backup next to it.
- Python 3.11+ (recommended)
- Works best with
uv, but can also be installed withpip
uv run update-dsa-sheet path/to/character_sheet.htmluv sync
uv run update-dsa-sheet path/to/character_sheet.htmluv run python -m update_dsa_sheet path/to/character_sheet.htmlIf you want to run update-dsa-sheet from anywhere (without uv run and without activating a virtual environment), install it as a persistent uv tool.
From a local checkout:
# from the project root
uv tool install .
# if the tool bin dir is not on your PATH:
uv tool update-shellUninstall:
uv tool uninstall update-dsa-sheetpython -m venv .venv
source .venv/bin/activate
pip install -U pip
pip install -e .Run:
update-dsa-sheet path/to/character_sheet.htmlOr as a module:
python -m update_dsa_sheet path/to/character_sheet.html- Parses the HTML character sheet
- Extracts the hero’s characteristic values (MU/KL/IN/CH/FF/GE/KO/KK)
- Updates talent rows by expanding the characteristic shorthand with the current values
- Writes the updated HTML back to the original file and creates a
*.bak_<timestamp>backup
Run tests:
uv run pytest(Without uv):
pytest- Input file is changed in-place; the backup file is created automatically.
- This project is not affiliated with Helden Software.