1. ホーム
  2. vim

[解決済み] vimdiff使用時に異なるcolorchemeを読み込む

2022-04-24 21:02:24

質問

を実行したときに、別のカラースキームを読み込むにはどうしたらよいですか? vimdiff .

において、現在のカラースキームでは一部の差分が正しく表示されないため、このようにしたいのです。 vimdiff 例えば、ある差分は同じ fg/bg 色で表示されます。これでは、diffを理解するのが非常に困難です。そのため、私は vimdiff を実行する必要があります。 :colorscheme some_other_scheme

で行うことができますか? .vimrc ファイルを作成できますか?

解決方法は?

もし、あなたが vimdiff をコマンドラインから実行する場合は、次の内容を .vimrc :

if &diff
    colorscheme some_other_scheme
endif

vimdiff を vim 内から使用する場合、起動/停止に使用するコマンドをオーバーライドする必要があります (例. diffthis , diffoff を使用しています。 :cnoreabbr (また プラグイン ) またはオートコマンドを使用します。

au FilterWritePre * if &diff | colorscheme xyz | endif

FilterWritePreは、外部プログラム(diffユーティリティ)によるフィルタリングの前に呼び出され、その際に &diff -オプションは、vimがdiff-modeに入るときに設定されます(中でも :help diff )

でも、どのオートコマンドで元のカラースキームに戻せばいいのか、よくわからないんです。