2010-12-06 2 views
1

私のVimで私が:echo &t_Coになったら、私の端末の色が表示されます。私のgVimに私が:echo &t_Coなら、何も表示されません(私はターミナルにいないので)。私の.vimrcで "&t_Co"が "定義"されているかどうかを検出するには?

この状況を検出するには、私のvimrcの条件を使用したいと思います(& gVimにt_Coはありません、どうすればテストできますか?私は、 "gui_running" gVimでmかどうかはわかりませんが、何も表示していない& t_Coのような変数をテストする方法を知りたいです。

私が探していたまさに

答えて

6
if !empty(&t_Co) 
    " t_Co is set to a non-empty value 
endif 

(それはgvimを内に存在しないためexists('&t_Co')が解決しない、それは単に空です。)

+0

。もう1つ質問:端末がある状態で持つことができる最大色数を知ることは可能ですか? –

+0

':set t_Co ='は任意の整数をとりますが、XTermは256色(または構成に応じて16色)しか表示できません。 – ephemient

+0

端末が持つことができる最大の色を実行して検出できる機能はありますか?これは、私がmac端末、Linux端末、gvimなどで使用されているvimrcを作成しようとしているので興味深いでしょう。 –

関連する問題