git-show結果のリストを出力してポケットベルに接続しようとしています。
残念ながら色を保存することはできません。
これは私が実行しているコマンドです。
git log -n10 | awk '{print $1}' | xargs -d '\n' -I{} bash -c 'git show {}' -- | less -MR
パイプがない場合、| less -MR
出力はカラーで印刷されます。
私もそれを試しましたが、less -r
明らかに問題は、出力が別のコマンドにパイプされることを検出したときに色を維持しないようgit show
です。xargs
stdout
マニュアルxargs
にも色の保持についての言及はありませんgit
。
less
ポケットベルの出力で色を維持する方法は?
答え1
man git-show
man git-diff
カラー保存を強制する方法について説明します。以下からインポートしたようです。
--color[=<when>]
Show colored diff. --color (i.e. without =<when>) is the same as --color=always. <when> can be one of always, never, or auto.
更新されたbashコマンド:
git log -n10 | awk '{print $1}' | xargs -d '\n' -I{} bash -c 'git show --color=always {}' -- | less -MR