新的C++关键字constexpr没有被vim高亮显示。我曾尝试像这样的插件: http://www.vim.org/scripts/script.php?script_id=4617vim C++ 11 constexpr突出显示
它除了constexpr以外的其他一切都很好。
有没有人知道我可以如何在我的cpp.vim(或通过使用其他方法)将constexpr语法突出显示?
新的C++关键字constexpr没有被vim高亮显示。我曾尝试像这样的插件: http://www.vim.org/scripts/script.php?script_id=4617vim C++ 11 constexpr突出显示
它除了constexpr以外的其他一切都很好。
有没有人知道我可以如何在我的cpp.vim(或通过使用其他方法)将constexpr语法突出显示?
在vim 7.4中(可能更早,但是我已经安装了7.4),constexpr
应该由标准的cpp.vim
文件来设置,它应该是您安装的一部分。
它,然而,守卫在测试为cpp_no_cpp11
变量:
" C++ 11 extensions
if !exists("cpp_no_cpp11")
syn keyword cppType override final
syn keyword cppExceptions noexcept
syn keyword cppStorageClass constexpr decltype
syn keyword cppConstant nullptr
endif
您可以:echo exists("cpp_no_cpp11")
;如果结果为1,这就可以解释为什么你看不到突出显示(你必须诊断你的配置,看看它为什么会被设置)。
或者你可以去蛮力方法,并把
syn keyword cppStorageClass constexpr
在.vimrc
(以及其他你想要的任何其他,好像你也缺少decltype
,等等)。或者你可以把这个命令放在一个脚本文件中,你可以通过autogroup
或者使用“after”目录(比如你链接的插件)加载脚本文件,如果你想在你的方法中更温和。
(请注意,您链接的插件不尝试添加C++ 11的关键字高亮显示,在所有的,至少不是为constexpr
,它主要关注的功能和类型名称。)
谢谢你的答案,原来突出显示没有打开,因为我没有加载正确的颜色方案(我试图加载colorscheme之前它的vundle线,并把块在try catch,所以没有检测到错误.. ),默认方案被加载,并且碰巧没有为C++ 11关键字使用特殊颜色。非常感谢您提供的提示,他们非常有用,知道! – swang 2014-09-26 09:34:59
关键字只需添加到无论您使用哪种语法脚本,并向其维护人员发送补丁。 – romainl 2014-09-22 12:24:15