カラーテキストを切り取り、カラーラベルを無視

カラーテキストを切り取り、カラーラベルを無視

私の問題は次のようになりますこれcut;シミュレーションnowrapに使用したいのですが、tmux出力は色で表示されます。保持したい列数(50個)はわかっていますが、出力に必要なカラーラベルの数はわかりません。切り取りは、cut -c-50各行のエスケープ文字(カラーラベル)の数に応じてさまざまな出力を生成します。

要約すると、色を無視して固定幅でテキストを切り取ることで、常に50色の文字を取得できますか?

ベストアンサー1

努力する:

perl -pe 's/^((?:(?>(?:\e\[.*?m)*).){50}).*/$1\e[m/'

これは ansi 型エスケープシーケンスとみなされます。

\e[31m色の設定やリセット\e[mなど\e[0mのエスケープシーケンスが付属しています。上記では\e[m各行の末尾に追加しますが、入力に応じてこれは常に理想的なわけではありません。

おすすめ記事