2016-12-02 61 views
14

我最近下載了vim 8.0。我不知道如果我搞砸了的東西或者默認的改變,但在此代碼...關閉C++註釋中的vim語法高亮

int foo() 
{ 
    // This is a comment containing a "string" and the number 5. 
    return 42; 
} 

...的"string"5是用不同的顏色。它們與正常代碼中顯示的顏色相同。我以前從來沒有見過。我怎樣才能關閉它?

回答

14

這是非常難以搜索,但答案是在vim的幫助文件。這是Vim附帶的C和C++代碼的語法高亮功能。來自:h ft-c-syntax

C突出顯示中的一些內容是可選的。爲了讓他們分配 任何值到相應的變量。示例:
:let c_comment_strings = 1
要禁用它們,請使用「:unlet」。例如:字符串,字符和註釋內部號碼
:unlet c_comment_strings

c_comment_strings變量控制高亮。它必須在我的設置中的某個地方啓用。如果我:unlet它,評論都是一個顏色再次突出顯示。

+0

找到它。在'$ VIMRUNTIME/defaults.vim'中設置'c_comment_strings'。我正在採購'vimrc_example.vim',其中包含默認值。 –

3

嗯,我瞭解自我回答,但我強烈建議任何人認真使用Vim作爲C++編碼工具來查看vim color_coded插件。使用簡單的基於refgexp的方案無法實現令人滿意的着色。雖然不是沒有這些問題,但是這個插件(在我看來)與在Vim中進行適當的着色最爲接近。

+1

我同意這個*意見*但這就是它。 – rici

+0

@rici,這不是一個意見。沒有適當的C++代碼解析,令人滿意的C++突出顯示是不可實現的。 – SergeyA

-1

如果我理解正確,您只需關閉語法突出顯示。

:syntax disable 

如果您是非根,並設置nocompatible,你可以在最後一行註釋(參見「H:模式行」)。

// vi:syntax disable: 

每次以非root用戶身份打開它時,該命令都會生效。

+0

我不想關閉所有語法突出顯示,只是突出顯示註釋中的字符串和數字的一個功能。 –