less
これによると、構文強調自体を実行することはできません。このスレッド。
しかし、git diff
lessのデフォルトポケットベルでは、カラー出力を素敵に表示します。出力をファイルにリダイレクトすると、git diff
カラーエスケープシーケンスは表示されません。
git diff
転送される場所を知り、それに応じて出力フォーマットを指定できますか?何をしますか?
私はgitが出力に色を付けていることを確認しましたが、diff
(例えばgit diff
)一般的に構文を強調する方法がわかりません。例えば
git show 415fec6:log.tex
TeXに似た構文を有効にしません。
ソースを読みながらgit
次のヒントを見つけました。
存在するdiff.h
:
int use_color;
さっき言及しました。構文強調しかし、これは間違っています。出力色を意味します。
答え1
答え2
ランニング:
git diff --color=always > output
カラー出口を表示します。
くそ、ファイルで見つけましたgit
:color.c
static int check_auto_color(void)
{
if (color_stdout_is_tty < 0)
color_stdout_is_tty = isatty(1);
if (color_stdout_is_tty || (pager_in_use() && pager_use_color)) {
char *term = getenv("TERM");
if (term && strcmp(term, "dumb"))
return 1;
}
return 0;
}
答え3
less
色をサポートでき-r
--raw-control-chars
、-R
--RAW-CONTROL-CHARS
Pythonを使用できますpygmentize
ハイライトを作成して入力してください。
すべてを組み合わせるには、lessフィルタを設定します。スーパーユーザーが述べたように