1. ホーム
  2. vim

[解決済み] Vim セッションが現在どのカラースキームを使用しているかを知る方法

2022-05-14 21:23:24

質問

あなたは 設定 を実行することで、Vim の配色を設定できます。

:colorscheme SCHEME_NAME

を発行しても、不思議なことに現在使われているスキームを取得することはできません。

:colorscheme

というように、結果的に " E471: Argument required となります。の出力には配色も表示されません。 :set .

では、現在使用されている配色を把握するにはどうしたらよいのでしょうか (認識できるまで手動でテーマを切り替える以外に)。

どのように解決するのですか?

保証された方法はありません (配色は本質的にソースとなる vim コマンドのロードであるため)。 しかし、慣習として、変数 g:colors_name という変数があり、それが配色の名前に設定されます。

したがって、こうしてみてください。

echo g:colors_name

E121が出たら、配色が悪いのか、デフォルトのままなのか、どちらかです。

もっとピカピカな方法は(最近のvimのバージョンでは)。

function! ShowColourSchemeName()
    try
        echo g:colors_name
    catch /^Vim:E121/
        echo "default"
    endtry
endfunction

では、そうしてください。

:call ShowColourSchemeName()

default"と表示されたら、次のようにします。 :colorscheme default を実行し、色が変わるかどうか見てください。 変更された場合、不正なカラースキームを使用していることになり、それを認識できるまで手動でテーマを切り替える以外にできることはありません。

変数 g:colors_name は文書化されています はこちら :

:help colorscheme