このプロジェクトについて

animfetchは、ターミナルの上部にアニメーション付きシステムフェッチ(システム情報とASCIIアート)を固定表示し、その下でユーザーのシェルが引き続き動作するターミナルユーティリティです。LinuxとmacOSを対象としており、Rustで書かれています。 中核となる動作: - `--pin`はスクロール領域を設定して上部の行を固定し、その後デタッチして再描画します。ユーザーのシェルはその下で履歴、補完、エイリアスを維持したまま動作します。`--unpin`で解除します。 - `--play`はその場で数秒間アニメーションし、終了します。 - `--once`は単一の静的フレームを表示します。 - フラグなしで実行すると、animfetchがプロンプトを所有するインタラクティブモードが開始されます。 アニメーションとレンダリング: - 色付きと色なしの両方で、動物、物体、キャラクターを含む大規模な内蔵アニメーションライブラリ(例: cat-run、fox-run、dolphin-swim、blackhole、earth、saturn、dragon、rocket)。 - 実行ごとに`-a <名前>`でアニメーションを選択するか、`--set <名前>`でデフォルトを設定します。 - `--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`またはrootとして`/usr/local/bin`にインストールし、`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`で実行されます。これは完全なシェルではなく、プロンプト付きランチャーと説明されています(エイリアス、履歴、補完なし)。 クレジットには、一部のアニメーションがkyome22によるRunCatからApache License 2.0の下でASCIIとして再描画されていることが記載されています。