28

.vimrc作品に以下を追加

:hi Folded ctermbg=Grey

しかし、それでも明るすぎて目立つので、次のように、より具体的なカラー トリプレットを指定したいと考えています。

:hi Folded ctermbg=#A0A0A0

しかしviはそれを受け入れません:

Error detected while processing /home/guest/.vimrc:
line   10:
E421: Color name or number not recognized: ctermbg=#A0A0A0

助言がありますか?

4

2 に答える 2

53

ctermインは「カラーターミナル」のctermbg略です。Vim が端末エミュレーターで実行されるときの背景色を定義するために使用され、 または のような名前付きの色のみを受け入れることがgreyできcyanます7。16 進値は GVim/MacVim でのみ機能し、次のようにguibg/と共に使用する必要があります。guifg

hi Folded guibg=#A0A0A0

シェルで: 、、またはいくつかのバリアントの$ echo $TERMようなものを返す必要があります。xtermscreenxterm-256color

8/16 色を超える色を表示できない ($TERMを含まない256color) ターミナル エミュレータで Vim を実行する場合、ターミナル エミュレータで独自のパレットを定義しない限り、別のグレー シェードを使用することはできません。

次のようになります。

hi Folded ctermbg=7

またはそのように:

hi Folded ctermbg=grey

ターミナル エミュレータが「256 色対応」(を$TERM含む) としてアドバタイズしている場合、16 進数値ではなくその番号 ( ) を使用する限り、このチャート256colorの任意の色を使用できます。242

次のようになります。

hi Folded ctermbg=242
于 2013-04-15T12:09:45.000 に答える
0

romainlの説明に加えて、ここで説明されているように、次の行を .vimrc に追加する必要があります

if &term =~ "xterm"
  "256 color --
  let &t_Co=256
  " restore screen after quitting
  set t_ti=ESC7ESC[rESC[?47h t_te=ESC[?47lESC8
  if has("terminfo")
    let &t_Sf="\ESC[3%p1%dm"
    let &t_Sb="\ESC[4%p1%dm"
  else
    let &t_Sf="\ESC[3%dm"
    let &t_Sb="\ESC[4%dm"
  endif
endif

その後、 romainl が提供するxterm256カラー テーブルから選択された 10 進数の色の値が、それに応じて PuTTY に表示されます。

于 2013-04-16T04:50:19.123 に答える