Об этом проекте

Livediff — это легковесная TUI-утилита на Rust, дополняющая `git diff` и показывающая живые различия, пока файлы редактируются другими инструментами. Она использует нативные события файловой системы ОС через `notify` с адаптивным подавлением всплесков (debouncing), обеспечивая мониторинг в реальном времени с низкой нагрузкой в режиме простоя. Ключевые возможности: - **Мониторинг в реальном времени** с адаптивным debouncing - **Два режима просмотра**: унифицированный и параллельный (Split), переключаемые клавишами `v` или `Tab` - **Интерактивная фильтрация файлов** через поиск по подстроке (`/`) - **Экспорт патча одной клавишей** для сохранения снимков `.patch` (`s`) - **Колонки номеров строк**, показывающие номера строк оригинала и результата - **Переключатель игнорирования пробелов** (`w`) и мягкого переноса строк (`W`) - **Посимвольное сравнение** с подсветкой синтаксиса с использованием крейта `similar` - **Умный движок игнорирования**, учитывающий `.gitignore`, `.livediffignore` и пользовательские glob-шаблоны - **Встроенный редактор кода** (`e`) для быстрого редактирования файлов на месте - **Несколько цветовых тем**: Cyberpunk, Catppuccin, Tokyo Night, Nord, Gruvbox - **Генерация автодополнений оболочки** для bash, elvish, fish, powershell и zsh Варианты установки включают Homebrew (`brew install socket7/tap/livediff`), Cargo (`cargo install livediff`) и готовые бинарные файлы для Linux, macOS и Windows. Браузерная демонстрация без установки доступна по адресу socket7.github.io/Livediff. Опции CLI позволяют указать путь для мониторинга, шаблоны игнорирования, начальный режим просмотра, тему, окно debounce и многое другое. Инструмент предназначен для рабочих процессов, связанных с генераторами кода, форматтерами, миграциями, рефакторингом и правкой конфигураций, обеспечивая мгновенную визуальную обратную связь без замены Git. Livediff распространяется под двойной лицензией MIT или Apache-2.0 и поддерживается Антонином Нивошем (@SoCkEt7).