端末またはpty状態のスナップショットを撮るために使用できるツールはありますか? [コピー]

端末またはpty状態のスナップショットを撮るために使用できるツールはありますか? [コピー]

この質問を重複としてマークしないでください。重複ではありません。ありがとうございます。a、、\x1b[D(「カーソルを返す」)、、の順序を考えてくださいb。これにより出力のみが生成されますb


ncursesスタイルのライブラリやエスケープシーケンスを使用するネイティブアプリケーションなど、TUIアプリケーション(less、vimなど)を作成したいと思います。

私はtmuxユーザーとして、tmuxがcapture-paneテスト検証のための「スクリーンショット」機能の形で使用できるテストフレームワークの良い基盤となることができる非常に便利な機能を提供していることを発見しました。たとえば、出力の精度を手動でテストするのではなく、広範囲のtmuxで実行し、特定のウィンドウサイズに対してテスト中のプログラムを実行するテストを構築し、出力を厳密な文字列比較で比較することができます。 。実際の要件を満たすために、ウィンドウサイズの範囲とレンダリングステータスを確認します。

とにかくポイントは、これがターミナルバイトストリームをターミナル画面バッファに「分析」する唯一の方法であるようです。 tmuxは非常に強力で汎用性がありますが、これらの特定の機能を提供するためのツールがあればと思います。今日は、ptyが何であるか、それがどのように機能するかについてもっと読んだからです。ここ、システムのこの側面は、実際には端末エミュレータの範囲に属するようです。一方、tmuxのようなものは、GUIアプリケーションなしでこれを行う必要があるという点でかなりユニークです(これは利点です)。

ベストアンサー1

確かに、tmuxはバッファの状態を生成するだけでなく、すべてのANSIの色とスタイルを適用できるため、唯一のゲームです。これは、すべてが機能していることを確認するテスト目的に非常に役立ちます。大丈夫。実際、tmuxは進行中のセッションに接続するときに内部的にこれを行うことができなければならず、新しく接続されたターミナルセッションを介して過去の履歴を提供する必要があるのは愚かです。だからそれが解決されてうれしいですcapture-pane

おすすめ記事