1. ホーム
  2. macos

[解決済み] iTerm2のvimでSolarizedを使用すると色がおかしくなる。

2023-05-16 22:14:35

質問

iTerm2、ターミナル vim (non-gui) とソラリゼーション配色で、奇妙な問題があります。まず、私は iTerm2 が暗いソラリゼーション配色を使用するように設定しました。

私は、vim にも solarized を使用しています。私の .vimrc に次の行があります。

set background=dark
colorscheme solarized

ターミナルでは、配色がおかしく見えます。

参考までに、MacVim (gui vim) ではこのように表示されます。

コンソール vim で色を正しく表示させるには、iTerm や .vimrc で何を変更する必要がありますか?

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

いくつか確認することがあります。

  1. iTerm2 の環境設定 -> Profiles -> Terminal の "Terminal Emulation" で、 "Report Terminal Type:" が xterm-256color に設定されているかどうかです。

  2. .vimrc で、256 色を使用することを確認するために設定できるオプションもあります。

    set background=dark
    " solarized options 
    let g:solarized_visibility = "high"
    let g:solarized_contrast = "high"
    colorscheme solarized
    
    
    そして、そのうちの1つは動作するはずですが、まずは#1です。

しかし、Snow Leopard でデフォルトで組み込まれた vim を使用している場合、256 色をサポートするように構築されていないため、動作しないでしょう。Lion のビルトイン バージョンでは動作すると思います。

編集します。 この回答に対するいくつかのコメントに基づいて、私は以下を削除しました。 let g:solarized_termcolors = 256 の行を .vimrc の行を削除しました。これは一部の人にとって問題になる可能性があるようです。別の人によると、行を追加することで let g:solarized_termcolors = 16 という行を追加すると、色表示の問題が解決されたという話もあります。あなた自身のマイレージは異なるかもしれません。

2回目の編集です。 iTerm2にソラライズされたカラーパレットを読み込んでいる場合は let g:solarized_termcolors=16 . だけ let g:solarized_termcolors=256 であれば ではない をiTerm2カラープリセットとして使用していない場合は、を使用してください。