Об этом проекте
animfetch — это терминальная утилита, которая отображает анимированный системный фетч (системная информация плюс ASCII-арт), закреплённый в верхней части терминала, пока собственная оболочка пользователя продолжает работать под ним. Она предназначена для Linux и macOS и написана на Rust.
Основное поведение:
- `--pin` задаёт область прокрутки, чтобы верхние строки оставались фиксированными, затем отсоединяет и перерисовывает их, пока оболочка пользователя работает ниже с сохранением истории, автодополнения и псевдонимов. `--unpin` отменяет это.
- `--play` анимирует на месте в течение нескольких секунд и завершается.
- `--once` выводит один статический кадр.
- Запуск без флагов включает интерактивный режим, в котором animfetch владеет приглашением.
Анимации и рендеринг:
- Большая библиотека встроенных анимаций, как нецветных, так и цветных, включая животных, объекты и персонажей (например, cat-run, fox-run, dolphin-swim, blackhole, earth, saturn, dragon, rocket).
- Выбор анимации для каждого запуска с помощью `-a <name>` или установка значения по умолчанию с помощью `--set <name>`.
- `--style` выбирает метод отрисовки: `half` и `quad` рисуют сплошные блоки и масштабируются под любой терминал; `ramp` отображает покрытие на символы; `raw` печатает собственные символы арта без изменений, что подходит для нарисованного вручную или предварительно раскрашенного ASCII.
- Опции включают `--width`, `--height`, `--fps`, `--no-color` и `--art-color own|theme`.
- Перенаправление вывода или установка `NO_COLOR=1` автоматически переключает на статический путь.
Установка:
- Arch Linux через `paru -S animfetch-bin` или `animfetch-git`.
- Nix/NixOS через `nix run github:Andrew-Velox/animfetch` или добавление его как flake-входа.
- Скрипт установки готового бинарника для любого Linux или macOS, устанавливающий в `~/.local/bin` или `/usr/local/bin` при запуске от root, с переопределением через `ANIMFETCH_BINDIR`.
- Из исходников с Rust 1.88 или новее через `cargo install --locked --git ...`.
Конфигурация:
- Необязательный `~/.config/animfetch/config.toml`; каждый ключ необязателен, и при некорректном файле используются значения по умолчанию.
- Установка `color_source = "palette"` заставляет фетч следовать теме рабочего стола, читая палитру matugen, pywal или wallust; при `--pin` он перечитывает её при изменении, так что смена темы перекрашивает работающую анимацию.
Интеграция с оболочкой:
- Примеры строк запуска для bash, zsh и fish защищаются от неинтерактивных оболочек и `scp`; README советует никогда не использовать голый `animfetch` в стартовых файлах, потому что он ждёт ввода.
Клавиши интерактивного режима:
- Enter выполняет команду с выводом ниже фетча; Ctrl-C прерывает или завершает; Esc завершает; Ctrl-D завершает на пустой строке; Ctrl-U очищает строку; Ctrl-W удаляет последнее слово. `cd` и `exit` обрабатываются внутри, всё остальное выполняется через `$SHELL -c`. Он описывается как лаунчер с приглашением, а не полноценная оболочка (без псевдонимов, истории и автодополнения).
В разделе благодарностей отмечено, что некоторые анимации перерисованы в ASCII из RunCat от kyome22 под лицензией Apache License 2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.