加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何从Vim中的语法高亮中排除C原始字符串文字?

发布时间:2020-12-16 01:09:05 所属栏目:安全 来源:网络整理
导读:老实说,raw string literals是C语言的一个很好的补充.但是(正如预期的那样)编辑们很难正确展示这些文字. 我正在使用Vim 7.4和开箱即用的原始字符串文字完全打破语法高亮.例如在 char const txt[] = R"(printf(")"; 第二个'(‘在vim中突出显示为红色. 就像是
老实说,raw string literals是C语言的一个很好的补充.但是(正如预期的那样)编辑们很难正确展示这些文字.

我正在使用Vim 7.4和开箱即用的原始字符串文字完全打破语法高亮.例如在

char const txt[] = R"(printf(")";

第二个'(‘在vim中突出显示为红色.

就像是

char const txt2[] = R"(  "{{"  )";

打破花括号的突出显示和基于语法的自动识别 – 依此类推.

首先,我很乐意让Vim在进行语法高亮时忽略R“(和)”之间的所有内容.

但请注意,原始字符串文字是灵活的 – 在第一个/最后一个双引号/括号对之间允许任意匹配的字符串,例如,

R"abcd()")")abcd"

也是一个有效的原始字符串文字编码

)")"

另请参阅cppreference链接以获取语法的一般定义.

因此,我的问题是如何配置Vim,以便正确识别C原始字符串文字.

Vim似乎已经包含了一些正确的synatx功能,突出了嵌入在宿主语言中的语言片段(例如,对于编译器 – 编译器源文件).也许它们也可以用于原始字符串文字案例?

只需添加 cpp-vim作为插件即可.我在 pull-request #14中添加了对较新字符串文字的严格支持.

这就是你得到的:http://bl.ocks.org/anonymous/raw/9442865

cpp-vim也增加了对其他C 11内容的支持.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读