ReSharper предоставляет большой набор функций для получения дополнительной информации о коде, выбора и подсветки структурных блоков кода, а также применения локальных преобразований.
ReSharper расширяет стандартную подсветку синтаксиса в Visual Studio за счет специализированной подсветки элементов кода на разных языках. В частности, вы сможете легко различать локальные переменные и поля в коде. Чтобы включить подсветку ReSharper, перейдите в меню ReSharper | Options | Code Inspection | Settings и выберите пункт Color Identifiers. Вы можете отдельно настроить цвет любого элемента.
Контекстные действия ReSharper избавят вас от необходимости много печатать, позволяя быстро вносить незначительные изменения в код на месте: например, вы можете изменить модификаторы доступа, сгенерировать проверку на null, преобразовать оператор foreach
в цикл for
и обратно — и все это за пару нажатий клавиш. Если в текущем положении курсора доступно одно или несколько контекстных действий, появится значок молотка . Чтобы выбрать нужное действие, кликните по значку либо нажмите Alt+Enter.
ReSharper подставляет необходимые синтаксические элементы (фигурные скобки, точки с запятой и т.д.) и перемещает курсор в начало следующего оператора — не нужно лишний раз делать это вручную. По умолчанию для вызова этой функции работает сочетание клавиш Ctrl+Shift+Enter.
Функция Complete Statement (также известная как Smart Enter) полезна в разных ситуациях: она обеспечивает автоподстановку закрывающих скобок и точек с запятой, автодополнение операторов if
, while
и for
и т.д.
Если строковый литерал содержит вставку на другом формальном языке, ReSharper предоставит для этого фрагмента инспекции, быстрые исправления, автодополнение, контекстные действия и другие возможности с учетом особенностей этого языка.
Когда наличие формального языка внутри строкового литерала не удается определить автоматически, вы можете вручную пометить литерал как содержащий определенную языковую вставку, используя меню (Alt+Enter) или добавив перед строковым литералом следующий комментарий: /*language=html|regexp*/
.
ReSharper предоставляет богатый набор инструментов для работы с регулярными выражениями в коде на C#. Можно быстро проанализировать существующие выражения, найти и исправить ошибки. Автодополнение и валидация кода помогут при написании новых выражений.
Выберите пункт меню ReSharper | Tools | Validate Regular Expression, чтобы ввести различные примеры строк и посмотреть, как регулярное выражение соответствует этим строкам. Используя это диалоговое окно, вы сможете исправить выражение и убедиться, что получите ожидаемое совпадение.
С ReSharper эта часть функциональности Visual Studio IntelliSense тоже предоставляет больше возможностей. При вызове метода, функция Parameter Info показывает все доступные сигнатуры и параметры метода с соответствующей документацией в виде всплывающей подсказки. Подсказка появляется автоматически при вводе текста, или вы можете вызвать ее, нажав Ctrl+Shift+Пробел. При добавлении новых аргументов ReSharper скроет все несовместимые сигнатуры.
В коде на C#, когда вы устанавливаете курсор непосредственно перед/после закрывающей фигурной/квадратной скобки или кавычки, подсвечивается соответствующий открывающий символ, и наоборот (этот параметр настраивается).
Для VB.NET ReSharper подсвечивает операторы Sub
и Function
, когда курсор помещен внутри или после соответствующих операторов End Sub
или End Function
. Соответствующее ключевое слово и строка, на которой оно находится, подсвечиваются, когда вы помещаете курсор внутри открывающего ключевого слова (эту функцию тоже можно настроить).
В XML парные теги подсвечиваются ненавязчиво, что позволяет увидеть структуру тегов.
Если соответствующий фрагмент кода уходит за пределы экрана, парный элемент отображается во всплывающем окне.
Когда имя типа не может быть разрешено из-за того, что вы забыли указать соответствующую директиву импорта пространства имен в исходном коде, появится небольшое всплывающее окно, в котором ReSharper предложит один или несколько типов для импорта. Просто нажмите Alt+Enter, и нужная директива импорта будет добавлена автоматически. При этом курсор останется в текущем положении.
Для файлов разметки в веб-приложениях ReSharper может автоматически импортировать пользовательские элементы управления (файлы ascx) на основе использований.
Когда вы вводите знаки (
, [
, "
или '
в редакторе, парный символ подставляется автоматически (когда это необходимо). Эту функцию легко отключить, но не бойтесь случайно поставить лишнюю закрывающую скобку или кавычку: если они уже есть, ReSharper не будет добавлять избыточный знак.
При работе с XML, как только вы введете открывающую кавычку или скобку, закрывающая появится автоматически.
Чтобы быстро продублировать любую строку (блок кода), поместите на нее курсор (или выделите блок) и нажмите Ctrl+D.
ReSharper позволяет быстро изменить порядок элементов кода одним нажатием (правда четырех клавиш): Ctrl+Shift+Alt+Up/Down/Left/Right. Вы можете перемещать блоки вверх и вниз по коду, менять порядок параметров и аргументов, перемещать операторы внутри блока, извлекать операторы из блока и совершать обратное действие, перемещать XML-теги по вертикали и XML-атрибуты по горизонтали и т. д.
Чтобы просмотреть документацию для определенного класса, метода, функции или другого символа прямо в редакторе, поместите курсор на символ и нажмите Ctrl+Shift+F1. Документация отображается во всплывающем окне, из которого можно по ссылкам перейти на другие ресурсы, в частности к документации MSDN.
Чтобы быстро добавить или убрать комментарий к блоку кода, выделите его в редакторе и нажмите Ctrl+Alt+/ (для однострочного комментария) или Ctrl+Shift+/ (для блочного комментария).
Вы также можете нажать Ctrl+Alt+/, чтобы быстро добавить или удалить комментарий к строке, на которой находится курсор, если блок кода не выделен. В такой ситуации нажатие Ctrl+Shift+/ добавит открывающий (/*
) и закрывающий (*/
) символ блочного комментария слева и справа от курсора или удалит эти символы, если курсор находится внутри комментируемого блока кода.
Функция Extend Selection помогает последовательно расширять область выделения в блоках кода. Это позволяет легко выделить любое выражение в коде: поместите курсор в любое место внутри выражения и нажмите Ctrl+Alt+Right несколько раз. Чтобы сузить область выделения, нажмите Ctrl+Alt+Left.
Вы также можете быстро выделить элемент, на котором находится курсор, или даже содержащий его тип, нажатием Ctrl+Shift+[.
Если вам нужно ввести длинный строковый литерал, ReSharper поможет разбить его на несколько строк, добавив необходимые кавычки и знаки плюса: чтобы разбить строку, не нарушая ее значения, нажмите Enter или Shift + Enter, поместив курсор внутри строкового литерала.
В ReSharper есть специальная команда вставки, доступная по нажатию Ctrl+Shift+V, которая предоставляет доступ к истории буфера обмена и позволяет быстро вставить любой элемент, недавно скопированный в буфер обмена из Visual Studio. ReSharper начинает сохранять скопированные объекты в истории буфера обмена, как только вы запускаете Visual Studio, и очищает историю, когда вы закрываете IDE.
Все сочетания клавиш, приведенные на этой странице, соответствуют набору сочетаний «Visual Studio», использующемуся в ReSharper по умолчанию. Подробнее о двух наборах сочетаний клавиш, доступных в ReSharper, вы можете узнать в его документации.