TreeScanner ist ein leichtgewichtiges, portables CLI-Tool zur rekursiven Analyse von Verzeichnisstrukturen. Es erzeugt eine klar strukturierte ASCII-Ausgabe und eignet sich hervorragend fΓΌr Dokumentation, Debugging oder Buildsysteme.
π§ Diese Version ist eine komplette Neuentwicklung in Rust und ersetzt das ursprΓΌngliche Python-Projekt:
β treeScannerASCII (Python)
Der original treeScanner in Python ist unter https://github.com/realAscot/treeScannerASCII zu finden. Dieser ist auch als Python-Modul zu verwenden.
Der treeScanner.exe ist ursprΓΌnglich als ein Tool entwickelt worden mit dem man Verzeichnisstrukturen fΓΌr Dokumentationen erzeugen konnte.
TreeScanner durchsucht Verzeichnisse rekursiv, filtert optional bestimmte Ordner aus und gibt eine strukturierte ASCII-Baumdarstellung mit Icons und optional ausgerichteten Kommentaren aus.
Er eignet sich fΓΌr technische Dokumentationen, Versionskontrollen, Release-Skripte und CI/CD-Prozesse.
Der Installer treeScanner-Setup.exe der jeweils die aktuelle Version auf GitHub enthΓ€llt, bietet Dir an das Programm im Windows-Verzeichnis zu installieren.
Dies ist zwar unΓΌblich aber
GEPLANTE STRUKTUR (DEV)
π treeScanner #
βββ π .cargo #
β βββ π config.toml #
βββ π .vscode #
β βββ π tasks.json #
βββ π media #
β βββ π logo-treescanner.png #
β βββ π logo-treescanner_512x512.png #
βββ π resources #
β βββ π icon.ico #
β βββ π version.rc #
βββ π src #
β βββ π app #
β β βββ π mod.rs #
β β βββ π treebuilder.rs #
β βββ π config #
β β βββ π args.rs #
β β βββ π loader.rs #
β β βββ π mod.rs #
β βββ π utils #
β β βββ π ascii_spinner.rs #
β β βββ π logger.rs #
β β βββ π mod.rs #
β βββ π lib.rs #
β βββ π main.rs #
βββ π tests #
β βββ π config_tests.rs #
β βββ π treebuilder_tests.rs #
βββ π .gitignore #
βββ π build.rs #
βββ π Cargo.lock #
βββ π Cargo.toml #
βββ π CHANGELOG.md #
βββ π LICENSE #
βββ π Makefile #
βββ π README.md #
βββ π VERSION #
- π ASCII-Baumdarstellung mit Icons (π, π)
- π« Ignorierliste per CLI oder Konfig-Datei
- β« Limit fΓΌr Tiefe (
--max-depth) und Dateianzahl pro Verzeichnis - π Ausgabe in Datei oder Konsole
- β Konfigurierbar via
~/.treescanner.conf - π Fortschrittsanzeige beim Scannen (Spinner)
- π¬ Optionale Kommentarspalte (
--align-comments) - π§ͺ Getestete Komponenten (unit-tested)
- π Silent-Modus (
--quiet) - π Portable Binary (
.exe) ohne externe AbhΓ€ngigkeiten
# Einfacher Scan (aktuelles Verzeichnis)
./treescanner.exe
# Mit Tiefe 3, ohne speichern
./treescanner.exe --max-depth 3 --viewonly
# Mit Kommentar-Ausrichtung
./treescanner.exe --align-comments
# Ergebnis in Datei mit anderem Pfad speichern
./treescanner.exe --output ./struktur/tree.md
π ./src/
βββ π main.rs #
βββ π app/ #
β βββ π treebuilder.rs #
βββ π utils/ #
βββ π ascii_spinner.rs #
βββ π logger.rs #
StandardmΓ€Γig gesucht im Benutzerverzeichnis:
Windows: C:\Users\<Benutzername>\.treescanner.conf
Linux: /home/<user>/.treescanner.conf
max_depth = 3
max_files_per_dir = 100
ignore = [".git", "target", ".vscode"]
output = "tree.txt"
viewonly = false
align_comments = false- CLI-Einstellungen ΓΌberschreiben Konfigurationswerte bei Kollision
- Die Datei wird beim ersten Start automatisch erzeugt, falls sie fehlt
- Der Pfad ist nicht fest kodiert, sondern dynamisch via
dirs::home_dir()ermittelt
Du benΓΆtigst zum selbst kompilieren eine funktionierende Toolchain. Das Makefile steht Dir als Anhalt zur VerfΓΌgung.
- npm installieren ->
Dieses Projekt steht unter der MIT-Lizenz.
| Crate | Lizenz |
|---|---|
clap |
MIT/Apache |
dirs |
MIT/Apache |
serde |
MIT/Apache |
serde_derive |
MIT/Apache |
toml |
MIT/Apache |
tempfile |
MIT/Apache (nur fΓΌr Tests) |
console |
MIT |
siehe LICENSE
Adam Skotarczak
β [email protected]
π realAscot auf GitHub
