Смотреть
Разработка программного обеспечения часто включает в себя выполнение одних и тех же команд снова и снова. Скучный!
watchexec - это простой автономный инструмент, который наблюдает за пути и запускает команду, когда он обнаруживает модификации.
Пример вариантов использования:
- Автоматически запустить модульные тесты
- Запустите шрифты Linters/Syntax
- Восстановление артефактов
Функции
- Простой вызов и использование, не требует загадочной командной строки с участием
xargs - Работает на OS X, Linux и Windows
- Контролирует текущий каталог и все подкаталоги для изменений
- Объединяет несколько событий файловой системы в одну, для редакторов, которые используют файлы SWAP/резервного копирования во время сохранения
- Загружает файлы
.gitignore и .ignore - Использует группы процессов, чтобы сохранить программы разбивания
- Обеспечивает пути, которые изменились в переменных окружающей среды или stdin
- Не требует периода выполнения языка, не связанного с каким -либо конкретным языком или экосистемой
- И еще!
Быстрый старт
Посмотрите все файлы JavaScript, CSS и HTML в текущем каталоге и все подкаталоги для изменений, запустив npm run build при обнаружении изменения:
$ watchexec -e js,css,html npm run build
Вызовы/перезапустите python server.py когда любой файл Python в текущем каталоге (и все подкаталоги) изменяется:
$ watchexec -r -e py -- python server.py
Больше примеров использования: в CLI Readme!
Установить
- С вашим менеджером посылки для Arch, Debian, Homebrew, Nix, Scoop, Chocolate…
- Из двоичного с бинсталлом:
cargo binstall watchexec-cli - Как предварительно построенный двоичный пакет от GitHub
- От источника с грузом:
cargo install --locked watchexec-cli
Все варианты подробно: в CLI Readme, в онлайн -справке ( watchexec -h , watchexec --help , или watchexec --manual ) и на странице ручного.
Дополнение
WatchExec хорошо сочетается с:
- Ceckexec: запускать только тогда, когда исходные файлы новее целевой файл
- Просто: современная альтернатива, чтобы
make - SystemFD: розетка в разработке
Продлевать
- Libral Bibrary: чтобы создать более специализированные инструменты с мощностью WatchExec.
- WatchExec-Events: типы событий для WatchExec.
- STAILEXEC-SIGNALS: Типы сигналов для WatchExec.
- WatchExec-Supervisor: Process Lifecycle Manager (часть exec of WatchExec).
- CLEARSCEREN: чтобы очистить (терминальный) экран на каждой платформе.
- Группа команд: запускать команды в группах процессов.
- Игнорируйте файлы: чтобы найти, разобрать и интерпретировать файлы игнорировать.
- Происхождение проекта: найти каталог происхождения проекта.
- Уведомление: ответить на изменения файлов (третья сторона).
Вниз по течению
Выбранные нижние потоки WatchExec и связанных ящиков:
- Грузовые часы: специализированный наблюдатель для проектов ржавчины/груза.
- Cargo Lambda: инструмент разработчика для функций AWS с питанием с ржавчиной.
- Create-Rust-App: шаблон для веб-приложений Rust+React.
- Доттер: Dotfile Manager.
- GHCIWATCH: специализированный наблюдатель за проектами Haskell.
- Тектонический: система набора текста Tex/LaTex.