2009-05-24 25 views
19

製作灰EOL字符我想有一個灰色的EOL字符由無法通過的.vimrc

set list listchars=tab:>>,trail:$ 

那裏有沒有空格旁邊的字符集「:」

我得到沒有EOL字符爲上述代碼,如果我使用「:」旁邊沒有空格。

我得到一個綠色的尾隨字符,如果我用一個空間在

- - tab:[space]>> -- 

雖然我沒有將它設置明確

這樣

alt text http://dl.getdropbox.com/u/175564/trailingCharacter.png (舊代碼終端)

你怎麼能在Vim中使用eol字符灰色,並使其重新工作?

+1

「我現在得到以下錯誤: E474:無效的參數:listchars =標籤:»」 看來,你沒有寫「設置listchars =標籤:» '而不是' 設置listchars =標籤:> >」。第二種情況是正確的,在冒號後面有「更大」的標記。在第一種情況下,您有「»」號,它是一個字符。 另外,正如sykora所說,你不應該在「>>」和「trail:」之後寫空格。所以這裏是你應該寫的: set list listchars = tab:>>,trail:$ – hcs42 2009-05-26 06:23:45

+0

@ hcs42:在>>和$之後我現在沒有空格了。我現在得到沒有E474-恐怖消息,但我現在沒有結尾字符。 – 2009-05-26 19:08:07

+0

默認藍色的男孩很難讀。 – 2013-05-28 00:31:53

回答

31

有兩個高亮顯示組:SpecialKey和NonText。您提到的尾部字符屬於NonText字符。

嘗試這樣的事情(Y /粘貼):

set list 
set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:< 
hi NonText ctermfg=7 guifg=gray 

這是否對你的工作,還是我理解這個問題錯了(很可能)。

7

trailtabnbsp listchars使用SpecialKey高亮組,所以你可以使用這個:

highlight SpecialKey ctermfg=8 

使$符號灰色。如果啓用了256種顏色,則可以使用不同的灰色陰影,如243等。

4

如果你想EOL是灰色的,指定EOL子選項的listchars代替線索

set list listchars=tab:>>,eol:$ 

線索顯示了不必要的空格字符的行結束,而不是線條本身的結束。

如果你想設置EOL的顏色,你必須設置NonText組的高亮:

highlight NonText ctermfg=8 guifg=gray 

如果同時指定ctermfgguifg,高亮將在GUI工作都並在一個終端。

我要指出,雖然一些不足之處:

  • 緩衝區結束後的波浪字符的高亮是相同 爲一體的EOL-跡象突出。我認爲不可能把 分開;其突出顯示均由突出顯示 的NonText決定。所以如果你設置灰色的EOL,你將會是灰色的波浪線。
  • 在我的終端上,ctermfg=8變成紅色而不是灰色文本。