Возможности редактора кода

Редактор Visual Studio предоставляет множество возможностей, облегчающих написание кода и текста, а также управление им. Используя структуру, вы можете разворачивать и сворачивать различные блоки кода. Получить дополнительные сведения о коде можно с помощью технологии IntelliSense, окна Обозреватель объектов и иерархии вызовов. Для поиска в коде можно использовать такие функции, как Перейти, Перейти к определению и Найти все ссылки. Вставлять блоки кода можно с помощью фрагментов кода. Код также можно создавать с помощью функций, таких как Создание в результате использования. Если вы ранее не работали в редакторе Visual Studio, см. статью со сведениями об использовании редактора кода.

Примечание.

Этот раздел относится к Visual Studio в Windows. Информацию о Visual Studio для Mac см. в статье Редактор исходного кода (Visual Studio для Mac).

Код можно просматривать различными способами. По умолчанию в обозревателе решений код упорядочен по файлам. Вы можете выбрать вкладку "Представление классов" в нижней части окна, чтобы просмотреть код, организованный по классам.

Можно выполнять поиск и замену текста в одном или нескольких файлах. Дополнительные сведения см. в статье Поиск и замена текста. Регулярные выражения платформы используются для поиска и замены текста. Дополнительные сведения см. в статье Использование регулярных выражений в Visual Studio.

Разные языки Visual Studio предоставляют разные наборы функций, а в некоторых случаях одни и те же функции ведут себя по-разному в разных языках. Многие из этих различий указаны в описаниях функций, но дополнительные сведения см. в разделах по определенным языкам Visual Studio.

Возможности редактора

Возможность Description
Цветовая раскраска синтаксических конструкций Некоторые элементы синтаксиса кода и файлов разметки для наглядности выделяются разными цветами. Например, ключевые слова (такие как using в C# и Imports в Visual Basic) выделены одним цветом, а типы (такие как Console и Uri) — другим. Другие элементы синтаксиса (например, строковые литералы и комментарии) также выделены цветом. Язык C++ использует цвета для различения типов, перечислений и макросов среди других токенов.

Вы можете узнать, какой цвет задан по умолчанию для каждого типа, и изменить цвет для любого элемента синтаксиса в диалоговом окне Fonts and Colors, Environment, Options Dialog Box, которое можно открыть с помощью меню Сервис.
Маркеры ошибок и предупреждений В процессе добавления кода и сборки решения вы можете увидеть в коде (а) волнистые линии различного цвета (знак «тильда») или (б) лампочки. Красные волнистые линии обозначают ошибки синтаксиса, синие обозначают ошибку компилятора, зеленые — предупреждения, а фиолетовые — другие типы ошибок. Быстрые действия предлагают способы решения проблем и помогают легко применить их.

Вы можете узнать, какой цвет задан по умолчанию для каждой пометки ошибки и предупреждения, в диалоговом окне Сервис>Параметры>Среда>Шрифты и цвета. Посмотрите пункты: Синтаксическая ошибка, Ошибка компилятора, Предупреждениеи Другие ошибки.
Согласование скобок Если курсор мыши поместить на открывающую фигурную скобку в файле кода, выделяются обе скобки — открывающая и закрывающая. Эта функция позволяет оперативно реагировать на неправильно поставленную или отсутствующую фигурную скобку. Вы можете включить или отключить сопоставление фигурных скобок с параметром автоматического выделения разделителя (текстовый редактор параметров инструментов>>). Цвет выделения можно изменить в разделе Шрифты и цвета (Сервис>Параметры>Среда). Используйте параметр Парные фигурные скобки (выделение) или Парные фигурные скобки (прямоугольник).
Автозапуск С помощью Visual Studio 2022 версии 17.9 и более поздних версий можно автоматически окружать выделение с соответствующими разделителями при использовании двойных кавычки(), отдельных кавычки(""''), квадратных скобок((), {}[]или любых разделителей, поддерживаемых языком файла). При добавлении открывающего разделителя (", ') (в выбранный файл кода соответствующий закрывающий разделитель автоматически помещается вокруг выделенного фрагмента.

При вводе кавычки или скобки в разделе "Отображение" страницы "Текстовый редактор параметров инструментов>>" можно включить или отключить автоматически выделенные фрагменты.
Визуализатор структуры Парные фигурные скобки в файлах кода соединяются пунктирными линиями, что делает работу с кодом более наглядной. Эта функция поможет вам быстрее найти код в базе кода. Чтобы включить или отключить эти линии, используйте параметр Показать направляющие структуры в разделе Отображение на странице Сервис>Параметры>Текстовый редактор>Общие.
Номера строк Номера строк могут отображаться в левом поле окна кода. Они не отображаются по умолчанию. Этот параметр можно включить в параметрах текстового редактора "Все языки" (параметры текстового редактора>инструментов>>на всех языках). Вы можете отображать номера строк для отдельных языков программирования, изменив параметры для этих языков (>>язык> редактора><инструментов). Чтобы номера строк выводились на печать, нужно установить флажок Включить номера строк в диалоговом окне Печать.
Отслеживание изменений С помощью цвета левого поля окна можно отслеживать изменения, внесенные в файл. Изменения, внесенные с момента открытия файла, но не сохранены, обозначаются желтой полосой в левом поле (известной как поле выбора). После того как вы сохраните изменения (не закрывая файл), полоска станет зеленой. Если отменить изменения после сохранения файла, полоска станет оранжевой. Включить или отключить эту функцию можно с помощью параметра Отслеживать изменения в настройках текстового редактора (Сервис>Параметры>Текстовый редактор).
Выбор кода и текста Текст можно выбрать в стандартном режиме в виде непрерывного потока или в режиме блока, когда выбирается прямоугольный фрагмент текста, а не набор строк. Чтобы сделать выделение в режиме поля, нажимайте клавиши ALT при перетаскивании мыши по выделенному фрагменту (или нажимайте клавиши ALT+SHIFT>+<). В выделение попадают все символы внутри прямоугольника, определяемого первым и последним символами выделенной области. Текст, введенный или вставленный в выделенной области, помещается в одну и ту же точку в каждой строке.
Масштабирование Вы можете увеличить или увеличить масштаб в любом окне кода, удерживая клавиши CTRL и переместив колесико прокрутки мыши (или CTRL+SHIFT+, чтобы увеличить и уменьшить сочетание клавиш CTRL).++ Кроме того, можно указать конкретное значение масштаба в процентах в поле Масштаб, расположенном в левом нижнем углу окна кода. Функция масштабирования не работает в окнах инструментов.
Виртуальное пространство По умолчанию строки в редакторах Visual Studio заканчиваются после последнего символа. Это означает, что при нажатии клавиши СТРЕЛКА ВПРАВО в конце строки происходит перемещение курсора в начало следующей строки. В некоторых других редакторах строка не заканчивается после последнего символа, и вы можете разместить курсор в любом месте строки. Разрешить виртуальное пространство в редакторе можно, выбрав Сервис>Параметры>Текстовый редактор>Все языки. Вы можете включить либо виртуальное пространство, либо оболочку Word, но не оба.
Печать Используя параметры в диалоговом окне Печать , можно включить номера строк или скрыть свернутые области кода при печати файла. В диалоговом окне Параметры страницы вы можете также задать печать полного пути и имени файла, выбрав вариант Верхний колонтитул страницы.

Параметры цветной печати можно задать в диалоговом окне Сервис>Параметры>Среда>Шрифты и цвета. Выберите пункт Принтер в списке Показать параметры для , чтобы настроить цветную печать. Для печати файла можно указать не такие цвета, как для редактирования файла.
Глобальные действия отмены и повтора Команды Отменить последнее глобальное действие и Повторить последнее глобальное действие в меню Правка позволяют отменить или повторить глобальные действия, выполняемые над множеством файлов. К глобальным действиям относятся: переименование класса или пространства имен, выполнение операции поиска и замены по всему решению, рефакторинг базы данных или любое другое действие, приводящее к изменению множества файлов. Вы можете применить глобальные команды отмены и повтора для действий в текущем сеансе Visual Studio даже после закрытия решения, в котором применялись эти действия.

Дополнительные возможности редактирования

На панели инструментов можно найти множество дополнительных функций в меню "Изменить>дополнительно". Не все они доступны для каждого типа файлов кода.

Возможность Description
Форматировать документ Установка правильного отступа строк кода и перемещение фигурных скобок для разделения строк в документе.
Форматирование выделенного фрагмента Установка правильного отступа строк кода и перемещение фигурных скобок для разделения строк в выделенном фрагменте.
Преобразовать пробелы в знаки табуляции в выделенных строках Замена начальных пробелов на знаки табуляции там, где это уместно.
Преобразовать знаки табуляции в пробелы в выделенных строках Замена начальных знаков табуляции на пробелы. Если требуется преобразовать все пробелы в знаки табуляции в файле (или все знаки табуляции в пробелы), можно использовать команды Edit.ConvertSpacesToTabs и Edit.ConvertTabsToSpaces . Эти команды не отображаются в меню Visual Studio, но их можно вызвать из окна быстрого доступа или командного окна.
Все прописные Изменяет все символы в выделенном фрагменте в верхний регистр или если нет выделения, измените символ в точке вставки на верхний регистр. Сочетание клавиш: CTRL+SHIFT+U.
Все строчные Изменяет все символы в выделенном фрагменте в нижний регистр или если нет выделения, измените символ в точке вставки на нижний регистр. Сочетание клавиш: CTRL+U.
Переместить выбранные строки вверх Перемещение выбранной строки вверх на одну строку. Сочетание клавиш: ALT+СТРЕЛКА ВВЕРХ.
Переместить выбранные строки вниз Перемещение выбранной строки вниз на одну строку. Сочетание клавиш: ALT+СТРЕЛКА ВНИЗ.
Удалить пустое пространство по горизонтали Удаление символов табуляции и пробелов в конце текущей строки. Сочетание клавиш: CTRL+K, CTRL +\
Показать пустое пространство Отображение пробелов в виде приподнятых точек, а символов табуляции — в виде стрелок. Конец файла отображается как прямоугольный глиф. Если с помощью меню выбран вариант Сервис>Параметры>Текстовый редактор>Все языки>Перенос по словам>Показывать графические метки в местах переноса слов, этот глиф также будет отображаться.
Перенос по словам В этом режиме все строки документа отображаются полностью в окне кода. Перенос по словам можно включить или отключить в разделе Все языки для текстового редактора (Сервис>Параметры>Текстовый редактор>Все языки).
Преобразовать выделенный фрагмент в комментарий Добавление символов комментария к выбранному фрагменту или текущей строке. Сочетание клавиш: CTRL+K, CTRL C+
Отменить преобразование в комментарий Удаление символов комментария из выбранного фрагмента или текущей строки. Сочетание клавиш: CTRL+K, CTRL U+
Увеличить отступ строки Добавление символа табуляции (или эквивалентных пробелов) к выбранным строкам или текущей строке.
Уменьшить отступ строки Удаление символа табуляции (или эквивалентных пробелов) из выбранных строк или текущей строки.
Выбрать тег Выбор тега в документе, содержащем теги (например, XML или HTML).
Выделить содержимое тега Выбор содержимого в документе, содержащем теги (например, XML или HTML).

Перемещаться по редактору кода можно несколькими способами, включая переход назад и вперед к точкам вставки, просмотр определения типа или члена и переход к определенному методу с помощью панели навигации. Дополнительные сведения см. в разделе "Код навигации".

Вы также можете задать закладки, чтобы пометить строки в коде, чтобы можно было быстро вернуться в определенное расположение или перейти в другое место. Дополнительные сведения см. в разделе "Код закладки".

Поиск ссылок в базе коде

Чтобы найти, где именно в базе кода используются ссылки на элементы кода, можно использовать команду Найти все ссылки или нажать SHIFT+F12. Кроме того, при выборе типа или члена функция выделения ссылок автоматически выделяет все ссылки на этот тип или член. Дополнительные сведения см. в разделе Поиск ссылок в коде.

Создание, исправление или рефакторинг кода

Visual Studio помогает создавать, исправлять код и выполнять его рефакторинг самыми разными способами.

  • Вы можете использовать фрагменты кода для вставки шаблона, такого как блок switch или объявление enum.

  • Вы можете использовать быстрые действия для создания кода, например классов и свойств, или для введения локальной переменной. Кроме того, быстрые действия можно использовать для улучшения кода, например для удаления ненужных приведений и переменных либо для добавления проверок значений NULL перед обращением к переменным.

  • Можно рефакторинг кода переименовать переменную, изменить порядок параметров метода или синхронизировать тип с именем файла, чтобы назвать несколько.

Копирование и вставка кода

Visual Studio предлагает несколько экономий времени, когда речь идет о копировании и вставки кода, как показано ниже.

  • Копирование и обрезка отступа. Начиная с версии 17.7 Visual Studio автоматически исправляет отступ кода при копировании кода из Visual Studio и вставке его в другое приложение.

    Screenshot that shows a before and after comparison to highlight the Copy and Trim Indentation feature.

  • Вставьте JSON или XML в качестве классов. Скопируйте любой фрагмент текста JSON или XML в буфер обмена, а затем вставьте его как строго типизированные классы .NET в любой файл кода C# или Visual Basic. Для этого используйте команду Edit>Paste Special>Paste JSON As Classes (или Вставить XML-классы в качестве классов).

Настройка редактора

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

Чтобы определить новые или переопределить существующие сочетания клавиш, выберите Сервис>Параметры>Среда>Клавиатура. Дополнительные сведения о сочетаниях клавиш см. в статье Сочетания клавиш по умолчанию в Visual Studio.

Параметры редактора для JavaScript см. в статье о параметрах редактора JavaScript.