Одинаковое выделение токенов Visual Studio

Я закодировал игру Mancala в Java для класса колледжа в прошлом spring, и я использовал Eclipse IDE, чтобы написать его. Одна из великих (и довольно простых) наглядных пособий в Eclipse - если вы выберете конкретный токен, скажем, объявленную переменную, тогда IDE автоматически выделит все другие ссылки на этот токен на вашем экране. Notepad ++, моя предпочтительная замена Notepad, также делает это.

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

Снимок этих функций в действии:  screenshot

Через полчаса поиска я решил, что Visual Studio не может сделать это самостоятельно, поэтому мой вопрос: кто-нибудь знает какие-либо надстройки для 2005 или 2008 годов, которые могут предоставить либо одну из вышеупомянутых функций

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

Ответ 1

В другом вопросе о SO (ссылка) кто-то упомянул надстройку VS 2005/VS 2008 "RockScroll". Кажется, он предоставляет функцию "ошибки", которую я задавал в моем вопросе выше.

RockScroll

EDIT: RockScroll также делает то же самое выделение токенов, которое я искал! Отлично!

Ответ 2

Существует альтернатива RockScroll, называемая MetalScroll, что по сути является одним и тем же с несколькими улучшениями и улучшениями.

Также есть небольшой и простой WordLight плагин, который выделяет только идентичные токены.

Оба являются с открытым исходным кодом и сгибанием кода поддержки, что приятно.

Imho, панель рядом с полосой прокрутки в Eclipse является гораздо более элегантным решением, чем замена полосы прокрутки RockScroll/MetalScroll. К сожалению, я не мог найти VS-плагинов, которые делают это способом Eclipse, поэтому я просто придерживаюсь WordLight.

Ответ 4

Старый вопрос, но... В Visual Studio 2010 наконец появилась эта функция.

Ответ 5

Функция подсветки удобно реализовать в VisualAssist. На мой взгляд, они оба должны быть.

1) Выделите идентификатор в кадре редактирования: Параметры → Дополнительно → Рефакторинг → Автоматическое выделение ссылок на символ под курсором

2) Выделите результат поиска - во всех окнах. Работает на RegExps! Параметры → Дополнительно → Дисплей → Выделить результаты поиска

Ответ 6

Автоматическая подсветка реализована в Visual Assist в качестве команды рефакторинга "Найти ссылки". Он выделяет все вхождения данной переменной или метода, но не автоматический (привязан к сочетанию клавиш на моем компьютере).

Вот пример:

alt text

Ответ 7

О RockScroll: он не выделяет идентификаторы. Он выделяет только одну строку в исходном коде! Если имеется аналогичный идентификатор: ex. _test и test, а тест подсвечивается, он будет выделять строку "test" в переменной _test тоже! И он также выделит одну и ту же строку в методе "sometesting()". Так что это не совсем похоже на затмение и не работает для меня.

Ответ 8

DevExpress CodeRush делает это, когда вы нажимаете TAB, когда курсор находится в идентификаторе, вы можете вставлять все выделенные экземпляры. Также есть плагин DXCore (основа, на которой построен CodeRush/Refactor Pro), который выделяет текущую строку.

Ответ 9

Функциональность "строка ошибок" предоставляется в JetBrains ReSharper. Я не уверен, что он выделяет ссылки на текущий выбранный идентификатор.

Ответ 10

Только для выбранной функции выделения слов (ов) есть StickyHighlight.

StickyHighlight поддерживает Visual Studio 2010 и 2012.

Ответ 11

Похоже, что "Инструменты производительности" переместились на, и выделение выделенного слова больше не работает (по крайней мере, не на моем машина со свежей установкой)

Чтобы вернуть эту функциональность, мне пришлось установить плагин Match Margin. Просто установка PPT не работала.