web-dev-qa-db-ja.com

iterm vimカラースキームが機能しない

ITermのコマンドラインからvimを実行すると、構文の強調表示がローカルで機能しないようです。

たとえば、vimにはMacVimで非常にうまく機能するNiceカラースキームをインストールしましたが、iTermで同じものが表示されたら素晴らしいと思います。

これを有効にする方法はありますか?

これは私が使用しようとしている配色です http://www.vim.org/scripts/script.php?script_id=234

31
Derek Organ

その配色は、256色の端末のみをサポートしているように見えます。端末が8色しかサポートしていないとVimが考える場合、その特定の配色は表示されません。

これをVimで確認するには:

:echo &t_Co

それが8を返す場合、これが問題である可能性があります。 ~/.vimrcで256に設定してみて、それが役立つかどうかを確認してください。

let &t_Co=256
79
Curt Nelson

Vimでコードの強調表示をオンにするには、構文プラグインを有効にしてみてください。

:syntax enable
70
Sean

まだ問題がある人に。

iTerm 2->設定->プロファイル->色->最小コントラスト->最低

setup

20
yqrashawn

これまでにこの問題や関連する問題があったことがあるので、見つけたものを要約します。

  1. ITermが256色を使用するように設定されていることを確認してください。 $ echo $TERMコマンドラインで、表示されない場合はxterm-256colorその後、指示に従います この回答では

  2. vimrcを設定して、他の端末も同様に処理します。 Snow Leopardの通常のターミナルは、たとえば8色のみをサポートしており、256色の配色を使用しようとすると点滅します(その場合は設定しません)。ここに私が持っているものがあります:

    " enable 256 colors in GNOME terminal (for my Ubuntu VM)
    if $COLORTERM == 'gnome-terminal'
        set t_Co=256
    endif
    
    " set your color scheme (replace wombat with whatever yours is called)
    " if you're using a gvim or macvim, then your color scheme may have a version
    " that uses more than 256 colors
    if has("gui_running")
        colorscheme wombat
    elseif &t_Co == 256
        colorscheme wombat256
    endif
    
    " turn on language specific syntax highlighting
    syntax on
    
11
Dean

この(および他の、同様の)質問のすべてのアドバイスに従いましたが、最終的には(かなりきちんと整理されていたので)何年も前にWebのどこかから取ったvimrcの忘れられた部分で問題を発見し、大幅に修正しました私自身の目的のために。

しかし、問題の領域は、私が始めた元のファイルに戻って、私が触れたことのない設定の小さなグループにありました。 .vimrcの関連ビットは次のとおりです。

   " GVIM- (here instead of .gvimrc)
   if has('gui_running')
          set guioptions-=T               " remove the toolbar
          set lines=40                    " 40 lines of text instead of 24,
   else
           set term=builtin_ansi       " Make arrow and other keys work
   endif

当然のことながら(振り返って)、その「用語の設定」行は、端末がTERM環境変数で報告しているタイプに関係なく、一般的な8色ANSI端末で終了するように事をリセットします。 .vimrc内で明示的に「term」を設定することは、t_Coを直接設定するのと同じように、おそらく非常に悪い考えです。

このブロック全体を削除し(gvim設定を.gvimrcに配置します)、それ以降すべてが正常に機能しています。

3
Trevor Powell