11

我正在使用 VS2012,对此我很满意。但问题是,当我用 C++ 编码时,语法突出显示又一次关闭了。有时,突出显示已关闭,我必须重新加载文件。此外,它突出显示很慢。

有谁知道如何修理它?

4

9 回答 9

15

我知道这是不久前的事了,但直到现在我一直随机出现同样的问题。

当文件中的最后一行是单行注释时,它将禁用。(//等等等等)。一旦我删除了文本突出显示再次起作用!

于 2013-12-18T15:55:02.590 回答
4

对我来说,当编辑器中的第一条可见行以字符“//”开头并且我以某种方式触发重新解析(例如 CTRL + S)时,突出显示总是停止工作。

当编辑器中的第一条可见行以其他任何内容(即使是空格)开头时,突出显示总是可以正常工作,并且我会以某种方式触发重新解析。

我可以缩进我所有的评论并且从来没有遇到过这个问题,但是现在我知道了,它不再那么烦人了,所以我让它成为。

于 2014-07-31T09:24:02.477 回答
4

编辑:在这个答案中,我假设您的问题描述是正确的。换句话说,我假设偶尔 C++ 突出显示正在工作,而其他时候文本显示为纯文本:完全黑白

我的猜测是您正在使用一个扩展来修改或替换 Visual Studio 突出显示 C++ 代码的方式。尝试暂时禁用所有扩展并再次检查编辑器是否正常工作。某些扩展程序可能禁用了禁用按钮;在这种情况下,您需要卸载此测试的扩展程序(可能通过控制面板 → 程序和功能)。

作为一个完全替代 C++ 荧光笔的常见扩展的示例,Visual Assist。但是,我个人不使用该产品,也没有听说过这种性质的任何具体问题。我只是把它作为一个扩展的例子,它完全改变了 Visual Studio 在 C++ 代码的语法突出显示方面的行为。

于 2013-08-01T11:31:36.263 回答
3

这是 Visual Studio 2012 中的一个错误:

https://connect.microsoft.com/VisualStudio/feedback/details/760154/syntax-highlighting-sometimes-not-working

于 2013-10-30T15:57:03.077 回答
1

我有同样的问题。遗憾的是,禁用扩展对我不起作用。
在四处搜索并意识到它只发生在较大的文件上之后,
我通过关闭硬件加速来让它工作。

工具->选项...->环境->常规
*自动调整[...](关闭)
*使用硬件图形加速(关闭)

于 2014-03-17T04:45:40.957 回答
1

如果你只使用 Intellisense,你可以去Edit->Intellisense->Toggle Completion Mode(或按 Ctrl + Alt + Space),玩它,看看它是否有效(也许你已经按下了这个组合键事故)。

我还安装了更新 3,从那以后没有任何问题。谁知道..

于 2013-08-01T12:49:24.040 回答
1

在我的例子中,结果发现一大块代码(一个 200 多行的方法)//从第一列开始就被注释掉了,这导致语法着色不起作用。我将注释描述更改/* ... */为该方法,并且所有语法着色都已修复。

于 2016-02-19T11:33:58.737 回答
1

就个人而言,我发现这样的事情:

#if 0// bla-bla

把语法高亮弄得一团糟。有效的解决方案是在评论前放置一个空格,如下所示:

#if 0 // bla-bla
于 2017-07-27T08:41:27.110 回答
0

我昨天安装了 Visual Studio 2012 Update 3 并开始遇到与原始帖子中描述的完全相同的行为。根据这个线程中的一些建议,我查看了我的扩展,并禁用 AllMargins 解决了这个问题。从那以后,我重新启用了 AllMargins,一切似乎都在正常工作。

尝试禁用和重新启用您的任何扩展程序;希望这将为您解决问题。

于 2013-08-15T15:54:02.013 回答