Skip to content

A visual file and directory comparison tool with change tracking. Desktop GUI powered by Python and PyQt5. Visual file and directory diff tool with change tracking. Desktop GUI powered by Python and PyQt5.

License

Notifications You must be signed in to change notification settings

BaseMax/qt-diff-studio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Qt Diff Studio

A visual file and directory comparison tool with change tracking. Desktop GUI powered by Python and PyQt5.

Features

  • Side-by-Side File Comparison: View differences between two files in a synchronized, side-by-side layout
  • Syntax Highlighting: Automatic syntax highlighting for various programming languages using Pygments
  • Directory Comparison: Compare entire directory trees and identify added, removed, modified, and identical files
  • Change Summaries: View detailed statistics about file and directory changes
  • Patch Export: Export differences as unified diff patches
  • Responsive Qt Interface: Modern, user-friendly interface with menus, toolbars, and keyboard shortcuts

Installation

Prerequisites

  • Python 3.6 or higher
  • PyQt5
  • Pygments

Install Dependencies

pip install -r requirements.txt

Usage

Running the Application

You can run the application in several ways:

Option 1: Direct execution

python main.py

Option 2: As a Python module

python -m qt_diff_studio

Option 3: After installation

pip install .
qt-diff-studio

Comparing Files

  1. Click "Compare Files" from the toolbar or press Ctrl+F
  2. Select the first file (left/original)
  3. Select the second file (right/modified)
  4. View the side-by-side comparison with highlighted changes

Comparing Directories

  1. Click "Compare Directories" from the toolbar or press Ctrl+D
  2. Select the first directory (left/original)
  3. Select the second directory (right/modified)
  4. Browse the directory tree to see added, removed, modified, and identical files
  5. Double-click any modified file to view its detailed diff

Exporting Patches

  1. After comparing files, click "Export Patch" or press Ctrl+E
  2. Choose a location to save the unified diff patch file
  3. The patch can be applied using standard tools like patch or git apply

Viewing Summaries

Press Ctrl+S or click "Show Summary" to view detailed statistics about the current comparison.

Keyboard Shortcuts

  • Ctrl+F: Compare Files
  • Ctrl+D: Compare Directories
  • Ctrl+E: Export Patch
  • Ctrl+S: Show Summary
  • Ctrl+L: Clear Views
  • Ctrl+Q: Exit Application

Project Structure

qt-diff-studio/
├── main.py                          # Application entry point
├── qt_diff_studio/
│   ├── __init__.py                  # Package initialization
│   ├── main_window.py               # Main application window
│   ├── diff_engine.py               # Core diff comparison logic
│   ├── diff_viewer.py               # Side-by-side file diff viewer
│   ├── directory_viewer.py          # Directory comparison tree view
│   └── syntax_highlighter.py        # Syntax highlighting support
├── requirements.txt                 # Python dependencies
└── README.md                        # This file

License

See LICENSE file for details.

About

A visual file and directory comparison tool with change tracking. Desktop GUI powered by Python and PyQt5. Visual file and directory diff tool with change tracking. Desktop GUI powered by Python and PyQt5.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages