Skip to main content

Generate and export directory tree structures with optional color output.

Project description

Directory Tree Script

This script generates a visual representation of the directory structure of a specified root directory. It supports exporting the structure to a Markdown file and offers various options to customize the output.

Example Output

├── .env
├── .gitignore
├── README.md
├── config/
│   ├── env.go
├── data/
│   ├── found-url.json
│   ├── url.txt
├── db/
│   ├── db.go
├── directory_structure.md
├── go.mod
├── go.sum
├── main.go
├── rss/
│   ├── fetch.go
├── telegram/
│   ├── telegram.go
├── utils/
    ├── http.go
    ├── utils.go

Features

  • Visual Directory Tree: Display the directory structure in a tree-like format.
  • Export to Markdown: Save the directory structure to a Markdown file for documentation purposes.
  • Depth Limiting: Limit the depth of directory traversal to avoid overwhelming outputs for deep directory structures.
  • Colorful Output: Colorize the terminal output to differentiate directories from files.

Installation

 pip install tree-scribe
 pipx install tree-scribe

Command-Line Switches

Switch/Option Description Example Usage
<directory-path> Path to the root directory whose structure you want to display. tree-scribe /home/project
-md, --export-md Export the directory structure to a Markdown file. tree-scribe /home/project -md
-d, --depth <number> Limit the depth of directory traversal. tree-scribe /home/project -d 2
-v, --verbose Enable verbose logging for detailed output. tree-scribe /home/project -v
-c, --color Enable colorful output in the terminal. tree-scribe /home/project -c

Examples

  1. Display the Directory Structure

    tree-scribe /home/project
    
  2. Export to Markdown

    tree-scribe /home/project --export-md
    
  3. Limit Depth to 2 Levels

    tree-scribe /home/project --depth 2
    
  4. Enable Verbose Logging

    tree-scribe /home/project --verbose
    
  5. Enable Colorful Output

    tree-scribe /home/project -c
    
  6. Combine Options

    tree-scribe /home/project --export-md --depth 3 -c
    

Notes

  • Colorful Output: The -c or --color switch enables colorful terminal output using colorama. Without this switch, the output will be plain text.
  • Depth Limiting: Use the --depth option to control how many levels deep the directory tree should be displayed.
  • Verbose Mode: The --verbose option provides more detailed logging information during script execution.
  • Markdown Export: The --export-md option saves the directory structure to a Markdown file for documentation purposes.

For any additional options or troubleshooting, please refer to the Troubleshooting section of this documentation.

Troubleshooting

  • Permission Errors: If you encounter permission errors, make sure you have the necessary permissions to access the directories and files.
  • Invalid Directory Path: Ensure the specified directory path is correct and exists.

License

This script is provided under the MIT License. See the LICENSE file for more information.

Contributing

Feel free to submit issues, suggestions, or pull requests. Contributions are welcome!

Summary of Additions
  • Customizing Filters: Instructions for modifying the filters.py file to include or exclude specific directories from the output.
  • Adding/Removing Folders: Clear steps on how to update the EXCLUDED_DIRECTORIES list.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tree_scribe-0.0.1.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tree_scribe-0.0.1-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file tree_scribe-0.0.1.tar.gz.

File metadata

  • Download URL: tree_scribe-0.0.1.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for tree_scribe-0.0.1.tar.gz
Algorithm Hash digest
SHA256 a1de2f683b9143d9789669f6c2b07737e9505368d14e4b51b5f7e0527034e520
MD5 1575334982a599cf3a3728097647475a
BLAKE2b-256 fe1642b62a4e01c640b9edece53001128fdb39e763742db1f06f1896f3173689

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_scribe-0.0.1.tar.gz:

Publisher: main.yml on mamad-1999/tree-scribe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tree_scribe-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: tree_scribe-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for tree_scribe-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0d2ac78331df7301e96c392e059c89bb65c71ede6f3b790bd7c2fa972eabcade
MD5 7451436007075681eadc5637e4ec9807
BLAKE2b-256 b1f6c042bd9af4ccb45076e57f618eb2a03729f2d8b6d492e5848f32d8051d23

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_scribe-0.0.1-py3-none-any.whl:

Publisher: main.yml on mamad-1999/tree-scribe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page