Text File Analyzer is a powerful desktop application designed to process and analyze large text files. It provides a user-friendly interface for splitting text files into separate files based on custom delimiters, creating directory structures, and compressing the results into ZIP archives.
- Custom Delimiter Support: Easily parse files using user-defined delimiter patterns.
- Large File Processing: Efficiently handle large text files with memory-optimized chunk processing.
- Directory Structure Creation: Automatically create directory structures based on file content.
- ZIP Compression: Compress processed files into ZIP archives without data loss.
- Plugin System: Extend functionality with custom plugins.
- Dark Mode: Toggle between light and dark themes for comfortable viewing.
- Localization: Support for multiple languages (currently includes English and Spanish).
- Auto-Updates: Automatically check for and install the latest updates.
- Recent Files: Quick access to recently processed files.
- Python 3.7 or higher
- wxPython 4.1 or higher
- Other dependencies listed in
requirements.txt
-
Clone the repository:
git clone https://github.com/yourusername/text-file-analyzer.git
-
Navigate to the project directory:
cd text-file-analyzer
-
Install the required dependencies:
pip install -r requirements.txt
-
Run the application:
python main.py
- Launch the application by running
main.py
. - Click on "Open File" or use the keyboard shortcut Ctrl+O to select a text file for processing.
- Follow the wizard steps to configure processing options:
- Set the custom delimiter pattern if needed (default is
^/project_root/
). - Choose output options for the processed files.
- Set the custom delimiter pattern if needed (default is
- Preview the file structure before processing.
- Click "Process" to start the file analysis and processing.
- Once complete, you can find the processed files in the output directory, along with a ZIP archive.
Access the settings dialog (Ctrl+,) to configure:
- Application theme (Light/Dark)
- Custom delimiter pattern
- Auto-update preferences
To create a plugin for Text File Analyzer:
- Create a new Python file in the
plugins
directory. - Implement the required plugin structure:
PLUGIN_NAME = "Your Plugin Name" PLUGIN_DESCRIPTION = "A brief description of your plugin" def main(main_frame): # Your plugin logic here pass def config_ui(parent): # Optional: Create a configuration UI for your plugin pass
- Restart the application to load the new plugin.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- wxPython team for the excellent GUI framework
- All open-source contributors whose libraries made this project possible