2011-02-16 32 views
10

我想讓範圍內的C++變量突出顯示。例如。變量應根據文件,類,全局或局部範圍具有不同的着色。可能嗎?Vim:使用範圍突出顯示C++變量?

更新:歡迎外部助手(例如ctags/clang和vim腳本)。

更新2:這確實應該可以使用libclang。看看Doug Gregor的演示文稿:http://llvm.org/devmtg/2010-11/我認爲只有沒有人做過...或者?

+0

除非csope和朋友做一些魔術,我不知道,我不認爲這是可能的。 Vim的語法突出顯示是通過正則表達式匹配完成的。它沒有範圍的概念。 – 2011-02-16 21:16:03

+0

@Randy「Vim的語法高亮是通過正則表達式匹配完成的。」 - 不完全。確實,它使用正則表達式來匹配單個詞位,但實際上它使用了一個下推式機器,因此它可以(至少在理論上)匹配所有不規則的上下文無關語言。但是至於這個問題,我並不知道這樣的腳本和承諾擴展C++支持的類似腳本(OmniCppComplete ...)未能兌現承諾。 – 2011-02-16 21:31:37

回答

1

一招我所看到的,但不要;噸用途:

如果您有合適的前綴G_聲明變量,M_等。您可以使用它來獲取VIM設置不同的顏色他們:

+0

我其實更喜歡 - 我想問的原因是我換了工作場所,新的沒有使用範圍前綴。 – 2011-02-16 21:37:18