Visual Studio отличается цветом для констант, имен функций и т. Д.? - PullRequest
5 голосов
/ 18 декабря 2009

Я знаю, что вы можете изменить цвета текстового редактора, но все, что я хочу настроить, в одной группе «Идентификаторы».

Есть ли способ разбить эту группу на "Переменные", "Константы", "Функции" и тому подобное, чтобы я мог настроить цвета для этих вещей отдельно?

Ответы [ 5 ]

4 голосов
/ 18 декабря 2009

Текущие параметры окраски синтаксиса основаны на том, что можно легко распознать по типу правил, которые использует лексер. Раскраска функциональных идентификаторов требует гораздо большего, редактору фактически придется анализировать операторы. Это сомнительное предложение, когда вы вводите код в редактор, особенно если этот код содержит неверный синтаксис или ошибки ввода. Часть этого на самом деле выполняется синтаксическим анализатором IntelliSense, но эта функция не связана с реализацией основного редактора.

В VS2010 ожидаются изменения, в его модели расширяемости добавлена ​​поддержка для подсветки пользовательского синтаксиса с помощью плагинов MEF. В какой степени это будет использоваться для раскраски определенного языка по умолчанию, мне не очень понятно. Я пока не вижу сложных обещаний.

2 голосов
/ 18 декабря 2009

Этого можно добиться с помощью различных надстроек. Хороший коммерческий пример: ReSharper .

Также есть структура подсветки синтаксиса, которая позволяет анализировать исходный код и предоставлять пользовательские стили для любых лексических элементов (подробнее о MSDN ).

1 голос
/ 24 января 2011

VS10x Editor View Enhancer (в настоящее время бесплатная бета-версия).

VS10x Editor View Enhancer - это расширение Visual Studio 2010, целью которого является добавление новых визуальных функций во встроенный редактор кода. В настоящее время он содержит определения типов и определения элементов, подчеркивающие детали конца блока, интерактивные горячие точки (документы C # и VB).

1 голос
/ 18 декабря 2009

Невозможно с настройками по умолчанию, насколько я знаю. (И я искренне надеюсь, что ошибаюсь)

1 голос
/ 18 декабря 2009

Не в настройках по умолчанию. Вероятно, это можно сделать с помощью надстроек, но вам, возможно, придется написать один самостоятельно, поскольку я не знаю ни одного, который предлагал бы эту функциональность (хотя они могут существовать).

...