A tool to combine multiple files while preserving directory structure
Project description
FileCombinator
FileCombinator is a Python tool that combines multiple files while preserving their directory structure, making it easy to share or inspect collections of files.
Features
- Preserves directory structure when combining files
- Handles various file types (text, binary, image)
- Configurable file and directory exclusions
- Detailed logging with customizable output
- Command-line interface for easy use
Installation
pip install filecombinator
Quick Start
# Process current directory
filecombinator
# Process specific directory
filecombinator -d /path/to/dir
# Exclude specific patterns
filecombinator -e node_modules dist
# Specify output file
filecombinator -o combined_output.txt
# Enable verbose output
filecombinator -v
Configuration
FileCombinator can be configured via a YAML file. Default patterns to exclude:
__pycache__.venv.gitnode_modules- And more...
Create a custom config file to override defaults.
Development
# Clone the repository
git clone https://github.com/your-username/filecombinator.git
cd filecombinator
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install development dependencies
make install
# Run tests
make test
# Run linting
make lint
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
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
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 filecombinator-0.3.1.tar.gz.
File metadata
- Download URL: filecombinator-0.3.1.tar.gz
- Upload date:
- Size: 24.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4dc8eb1da55b62f2652561f45ffd301b7fe116883d539ef879b5e49728c6b45b
|
|
| MD5 |
5537cda3eac3a8ed667b08d2195bfcf3
|
|
| BLAKE2b-256 |
17e083df36b54d87067da716aba4683424fdee353b26f14144d870b30894d39d
|
File details
Details for the file filecombinator-0.3.1-py3-none-any.whl.
File metadata
- Download URL: filecombinator-0.3.1-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a67ffd1f1b4262a4016db46117abf63e42bc799530a9fd0d905fbee6f52b313
|
|
| MD5 |
7947771c4eadfd9e7379683fb4c17eb3
|
|
| BLAKE2b-256 |
464893dc0296919992c382b6a620a39661a220e8cf5d47a12336ec23d0bb47f4
|