Как убрать жирный курсор в visual studio
Изменяя эти параметры, можно настроить поведение, связанное с IntelliSense и базой данных просмотра, при программировании на языке C или C++.
Чтобы открыть эту страницу, в диалоговом окне Параметры в левой области разверните узел Текстовый редактор, разверните узел C/C++ и щелкните Дополнительно.
Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. См. статью Персонализация интегрированной среды разработки Visual Studio.
Завершение скобок
Добавлять точку с запятой для типов
Точки с запятой будут вставляться после закрывающих скобок для типов.
Завершать круглые скобки в необработанных строковых литералах
Если в необработанном строковом литерале есть открывающая скобка, она будет дополнена закрывающей скобкой.
Завершать многострочные комментарии
Многострочные комментарии (начинающиеся с символов /* ) будут завершаться.
Резервное расположение базы данных обзора
Запасное расположение — это место, куда помещаются вспомогательные файлы SDF и IntelliSense (например, iPCH), если основное расположение (в каталоге решения) не используется. Такая ситуация может возникать, если у пользователя нет разрешений на запись в каталог решения или если каталог решения находится на медленно работающем устройстве. По умолчанию запасным расположением является временный каталог пользователя.
Всегда использовать запасное место
Указывает на то, что база данных обзора кода и файлы IntelliSense всегда должны храниться в папке, заданной как запасное расположение, а не рядом с файлом SLN. Интегрированная среда разработки никогда не будет пытаться размещать файлы SDF или iPCH рядом с каталогом решения и всегда будет использовать запасное расположение.
Не предупреждать, если используется запасное место
Вы не получаете уведомлений или запросов, если используется запасное расположение. Как правило, интегрированная среда разработки сообщает вам о том, что потребовалось использовать резервное расположение. Этот параметр отключает такое предупреждение.
Расположение Fallback
Данное значение определяет дополнительное место для хранения базы данных обзора кода или файлов IntelliSense. По умолчанию резервным расположением является каталог временных файлов. Интегрированная среда разработки создает подкаталог по указанному пути (или в каталоге временных файлов), имя которого включает в себя имя решения и хэш полного пути к нему, что позволяет избежать проблем с совпадением имен решений.
Обзор и навигация
Эти параметры следует выбирать только в тех редких случаях, когда размер решения столь велик, что при работе с базой данных потребляется недопустимый объем системных ресурсов.
Отключить базу данных
Отключить обновления базы данных
База данных будет открыта только для чтения, а обновления в процессе редактирования файлов выполняться не будут. Большинство функций будут работать. Однако при внесении изменений данные будут устаревать, и вы будете получать неправильные результаты.
Отключить автоматические обновления базы данных
База данных обзора кода не будет автоматически обновляться при изменении исходных файлов. Однако если открыть обозреватель решений и выбрать в контекстном меню проекта пункт Повторить сканирование решения, все устаревшие файлы будут проверены и база данных обновится.
Отключить неявные файлы
В базе данных обзора кода не выполняется сбор данных для файлов, не указанных в проекте. Проект содержит явным образом указанные исходные файлы и файлы заголовков. Неявные файлы включаются посредством явно указанных (например, afxwin.h, windows.h и atlbase.h). Как правило, система находит эти файлы и также индексирует их для поддержки различных функций обзора (включая функцию "Перейти к"). Если выбрать этот параметр, такие файлы индексироваться не будут, и некоторые функции станут недоступны для них. При выборе этого параметра также автоматически выбираются параметры "Отключить неявную очистку" и "Отключить внешние зависимости".
Отключить неявную очистку
Отключить папки внешних зависимостей
Папка "Внешние зависимости" не будет создана или обновлена для каждого проекта. В обозревателе решений каждый проект имеет папку "Внешние зависимости", которая содержит все неявные файлы проекта. Если данный параметр выбран, эта папка не отображается.
Повторное создание базы данных
Повторное создание базы данных обзора кода с самого начала во время следующей загрузки решения. Если этот параметр выбран, файл базы данных SDF удаляется при следующей загрузке решения, что приводит к повторному созданию базы данных и индексации всех файлов.
Интервал повторного сканирования решения
Задание "Повторное сканирование решения" будет выполняться по расписанию через указанный промежуток времени. Значение должно находиться в диапазоне от 0 до 5000 минут. Значение по умолчанию — 60 минут. Во время повторного сканирования решения проверяются метки времени файлов для определения того, изменялся ли файл вне интегрированной среды разработки. (Изменения, вносимые в интегрированной среде разработки, отслеживаются автоматически, и файлы обновляются.) Для неявно включенных файлов проверяется наличие указывающих на них ссылок.
Отключить проверку обновлений обзора
Отключение ожидания обновления базы данных обзора кода при выполнении операций обзора.
Отключить выделение текущего элемента
Отключение визуализации выбранного элемента кода в окне инструментов "Свойства" и других местах.
Отобразить пропущенные области для внешних файлов
Включение пропущенных областей из внешних файлов при отображении ошибок базы данных обзора.
Анализ кода
Отключить Code Analysis для C++
Отключение расширения Code Analysis для C++, которое реализует подчеркивание волнистой линией, анализ кода в фоновом режиме и другие функции для файлов C++.
Отключить Code Analysis в фоновом режиме
Отключение запуска Code Analysis для C++ в фоновом режиме при открытии или сохранении файлов.
Отключить подчеркивание волнистой линией для Code Analysis
Отключение подчеркивания волнистой линией для предупреждений Code Analysis для C++. Ошибки по-прежнему будут отображаться в списке ошибок. Этот параметр влияет только на новые открываемые окна.
Запись данных диагностики
Эти параметры предоставляются на тот случай, если корпорации Майкрософт потребуются дополнительные сведения для диагностики проблемы. Данные журналов для пользователей бесполезны, и мы рекомендуем не включать их сбор.
Включение ведения журнала
Включает вывод данных диагностики в окне вывода.
Уровень ведения журнала
Задайте уровень детализации журнала от 0 до 5.
Фильтр ведения журналов
Отображаемые типы событий фильтруются с помощью битовой маски.
Для задания фильтров используйте сумму следующих значений:
4 — рабочий элемент
технология IntelliSense
Автоматически предоставляемые краткие сведения
Включает отображение подсказок "Краткие сведения" при наведении указателя на текст.
Отключить IntelliSense
Отключает все возможности IntelliSense. Интегрированная среда разработки не создает процессы VCPkgSrv.exe для обработки запросов IntelliSense, и перестают работать все функции IntelliSense (краткие сведения, список членов, автозавершение, справка по параметрам). Также отключаются семантическая раскраска и выделение ссылок. Этот параметр не отключает функции обзора, работа которых зависит только от базы данных (в том числе панель навигации, представление класса и окно свойств).
Отключить автоматическое обновление
Отключить знаки тильды
Автоматически настраивать максимум кэшированных записей преобразования
Настраивает максимальное число единиц трансляции, которые будут оставаться активными во время запросов IntelliSense, в зависимости от доступного объема ОЗУ системы.
Дополнительные сведения о записях преобразования см. в разделе Фазы трансляции.
Отключить агрессивный список членов
Список членов не открывается, когда вы вводите имя типа или переменной. Список появляется только после ввода одного из символов фиксации, определенных в параметре Символы сохранения списков членов.
Отключить ключевые слова в списках членов
Списки членов не будут содержать ключевые слова языка, такие как void , class или switch .
Отключить фрагменты кода в списках членов
Списки членов не будут содержать фрагменты кода.
Режим фильтрации списков членов
Задает тип алгоритма сопоставления. Нестрогий алгоритм позволяет находить наиболее вероятные совпадения (похожие, но не идентичные строки). По принципу работы он аналогичен алгоритму, используемому средством проверки орфографии. Алгоритм Интеллектуальная фильтрация сравнивает подстроки, даже если они не находятся в начале слова. Алгоритм Префикс находит только такие соответствия, в которых подстроки в начале слов совпадают.
Отключить семантическую раскраску
Отключает раскраску кода, кроме ключевых слов языка, строк и комментариев.
Символы сохранения списков членов
Определяет символы, которые приводят к фиксации элемента, выделенного в настоящий момент в списке членов. Вы можете добавлять символы в этот список и удалять их из него.
Интеллектуальное сохранение списка членов
При нажатии клавиши ВВОД после полного слова добавляется новая строка.
Агрессивная фиксация списка элементов
Символы фиксации списка элементов активны во время "агрессивного вызова" списка элементов.
Использовать Агрессивный список элементов для автоматического списка элементов
Если этот параметр включен и отображается автоматический список элементов, символы фиксации списков элементов не будут использоваться для завершения.
Использовать символ табуляции для фиксации в Агрессивном списке элементов
Если этот параметр включен и отображается Агрессивный список элементов, нажатие клавиши TAB будет восприниматься как фиксация списка элементов.
Вставить фрагмент кода с помощью клавиши TAB
Если этот параметр включен, ключевое слово фрагмента кода разворачивается при нажатии клавиши TAB (если это ключевое слово не назначено Edit.InvokeSnippetFromShortcut ) независимо от того, отображается ли список элементов.
Отключить модули
Отключение различных функций IDE C++ 20, например автоматического создания необходимых модулей для IntelliSense.
Фильтрация недоступных элементов а списке
Не отображать в списке элементов недоступные элементы.
Отключить IntelliSense для неактивных платформ
Отключение всех функций IntelliSense для неактивных платформ в папках и проектах общих ресурсов.
Включение замены точки на стрелку для списка членов
Заменяет "." на "->" в списке членов, если это применимо.
Отключить HLSL IntelliSense
Отключение всех функций HLSL IntelliSense.
Отключить автоматический предкомпилированный заголовок
Использование такого заголовка может ускорить некоторые операции IntelliSense за счет использования кэша на жестком диске каждого решения.
Квота на кэш автоматического предкомпилированного заголовка
Максимальный размер кэша (в МБ) на каждое решение. Показатель фактического использования может колебаться вокруг этого значения.
Предельное число неактивных платформ для IntelliSense
Максимальное число неактивных платформ, которые будут обработаны для IntelliSense. Значение должно находиться в диапазоне от 1 до 16.
Включить IntelliSense для шаблона
Отображение панели инструментов для настройки IntelliSense в шаблоне, когда курсор находится в теле шаблона.
Включить ссылки на справку в кратких сведениях
Включение в подсказках ссылки на нужные статьи в Интернете.
Использовать поиск в Интернете для ссылок на статьи справки в кратких сведениях
Выполнение поиска в Интернете из области подсказок с указанной службой поиска в качестве действия для поиска статьи в Интернете. Если этот параметр отключен, используется справка, открываемая при нажатии клавиши F1.
Включить ссылки на справку во всплывающих подсказках для ошибок IntelliSense
Включает ссылки на нужные статьи в Интернете во всплывающих подсказках для ошибок IntelliSense.
Служба поиска
URL-адрес, используемый для поиска в Интернете справки по ошибкам. заменяется ошибкой.
IntelliSense и просмотр файлов, не относящихся к проекту
Включить режим расширенной обработки отдельных файлов
Включение IntelliSense, просмотра и других функций для автономных файлов, которые не включены в существующий проект.
Включить подчеркивание волнистой линией в IntelliSense
Включение подчеркивания волнистой линией для отдельных файлов в режиме расширенной обработки отдельных файлов.
Показывать ошибки IntelliSense в списке ошибок
Определение того, отображаются ли ошибки IntelliSense из отдельных файлов в списке ошибок.
Приостановить новые файлы во время отладки
Приостановка включения IntelliSense для новых открытых файлов во время отладки.
Рефакторинг
Отключить отображение лампочки для создания объявления или определения
Не будут предлагаться варианты для создания отсутствующего объявления или определения функции.
Ссылки
Отключить сопоставление
В целях повышения производительности в окне "Поиск всех ссылок" выводятся базовые результаты текстового поиска вместо использования IntelliSense для проверки каждого кандидата. Чтобы получать более точные результаты при выполнении любых операций поиска, можно снять этот флажок. Чтобы выполнить фильтрацию для отдельной операции поиска, откройте контекстное меню списка результатов и выберите пункт "Установить результаты".
Скрыть неподтвержденные
Скрыть неподтвержденные элементы в результатах поиска всех ссылок. Если параметр "Отключить сопоставление" отключен, то с помощью этого параметра можно скрыть неподтвержденные элементы в списке результатов.
Отключить выделение ссылок
По умолчанию при выборе любого текста все его экземпляры автоматически выделяются в текущем документе. Эту функцию можно отключить, установив для параметра Отключить выделение ссылок значение True.
Текстовый редактор
Включить заключение в фигурные скобки
Если этот параметр включен, вы можете заключить выделенный текст в фигурные скобки, введя символ "
Включить заключение в круглые скобки
Если этот параметр включен, вы можете заключить выделенный текст в круглые скобки, введя символ "(" в текстовом редакторе.
помогите пожалуйста, помогает на время перезапуск, но все равно потом появляется.
белый курсор работает как кнопка delete, и если я куда то нажму, то вместо того чтобы печатать ПЕРЕД курсором, эта белая чушь заменяет буквы, и удаляет правые скобки. не возможно работать. (такого за две недели ни разу не было,), начало вчера
Как отключить курсор?
Как отключить курсор? (в консольном режиме) НЕ убрать за пределы экрана, а именно отключить. Из.
Как отключить (скрыть) курсор в консоли С++
Собственно, вопрос говорит сам за себя. Уже видел тему на эту тему ( масло масляное )), но мне не.
Как отключить курсор на форме (объекте)?
Господа, подскажите как отключить курсор на форме (например, MDI-форме) или любом другом объекте. В.
Решение
MarkAdderly, Попробуйте её отключить в Visual Studio
Средства > Параметры. > Окружение > Клавиатура >
набрать команду в поле( Показать команды, содержащие: ) Правка.Режимзамены (по английски вроде так Edit.OvertypeMode)
Выбрать её ниже из списка(но скорей всего она будет одна) и внизу нажать кнопку Удалить потом ОК.
Edit - запрет редактирования+возможность выделения+курсор ввода
Hi :good:, как у Edit запретить редактирование, оставить возможность выделения, и курсор ввода? Я.
Возможно ли отключить подчеркивания и выделения в VS 2017?
Вот как это выглядет: Волнистые линиии, точки, выделение. Может какое расширение есть, но я.
По черному экрану бегает белый курсор с синим кружком
Здравствуйте! У клиента была windows 7 (лицензия), которую летом обновили до 10. Вечером пришли.
Qt Creator. Хоткей для выделения всего слова, в котором находится курсор
Собственно сабж. Гугл не смог нагуглить то что надо. Нужен хоткей как например в IntelliJ IDEA.
Отключить курсор
Доброго времени суток! Подскажите как отключить изображение курсора побывал так .
Как отключить (системный?) звук "БИП", когда курсор доходит до конца строки?
Например, когда открываешь терминал, вводишь логин и пароль, а потом начинаешь жать стрелки.
Это диалоговое окно позволяет изменять глобальные параметры для редактора кода и текста Visual Studio. Для вывода этого диалогового окна выберите пункт Параметры в меню Сервис, разверните папку Текстовый редактор, а затем щелкните Общие.
Параметры
Раздел "Параметры" в меню Сервис > Параметры > Текстовый редактор > Общие содержит следующие параметры.
Перетаскивание текста при редактировании
Если этот параметр активирован, вы можете перемещать текст, выбирая и перетаскивая его мышью в другое расположение в текущем документе или в любом открытом документе.
Выделение подслова по двойному щелчку
При переключении этого параметра по двойному щелчку будет выделяться подслово, а не целое слово. (Это может быть полезным, например, при слитном написании составных слов с прописных букв.)
Автоматически выделять разделители
Если этот флажок установлен, символы-разделители, отделяющие параметры или пары "элемент-значение", а также парные фигурные скобки, выделяются.
Отслеживание изменений
При выборе редактора кода в поле выделения появляется желтая вертикальная линия, отмечающая код, который был изменен с момента последнего сохранения файла. При сохранении изменений вертикальные линии становятся зелеными.
Автоматически определять кодировку UTF-8 без сигнатуры
По умолчанию редактор определяет кодировку путем поиска меток порядка байтов или тегов наборов символов. Если их не удается найти в текущем документе, редактор кода попытается автоматически определить кодировку UTF-8 путем сканирования последовательностей байтов. Чтобы отключить автоматическое определение кодировки, снимите этот флажок.
Следовать рекомендациям по написанию кода проекта
Если выбрать этот параметр, соглашения о написании кода, указанные для проекта, переопределяют соглашения о написании кода, используемые вами в личных проектах.
Включение перехода к определению по щелчку мыши
Если выбран этот параметр, можно нажать клавишу CTRL, навести указатель мыши на элемент и щелкнуть его. При этом произойдет переход к определению выбранного элемента. Вы также можете выбрать клавиши ALT или CTRL + ALT в раскрывающемся списке Use modifier key (Использовать клавишу-модификатор).
Открытие определения в быстром редакторе
Установите этот флажок, чтобы определение выбранного элемента отобразилось в окне без перехода из текущего расположения в редакторе кода. Дополнительные сведения см. в статье Практическое руководство. Просмотр и изменение кода с помощью окна "Показать определение".
Отображение
Раздел "Отображение" в меню Сервис > Параметры > Текстовый редактор > Общие содержит следующие параметры.
Отображение пробелов
Если этот параметр активирован, можно отображать пробелы и знаки табуляции.
Показать управляющие символы двунаправленного текста
Если этот параметр выбран, все управляющие символы двунаправленного текста будут отрисовываться в виде заполнителей в редакторе кода.
Этот параметр выбран по умолчанию для предотвращения потенциально вредоносного эксплойта, который разрешает неправильную интерпретацию кода.
Этот параметр, впервые представленный в Visual Studio 2019 версии 16.11.8, гарантирует, что редактор Visual Studio больше не разрешает использование двунаправленных символов управления текстом для управления порядком символов в редакторе кода. Двунаправленные символы управления текстом по-прежнему содержатся в коде.
Поле выделения
Если этот флажок установлен, вдоль левого края области текста редактора отображается вертикальное поле. Можно щелкнуть это поле, чтобы выделить всю строку текста, или щелкнуть и перетащить последовательные строки текста.
Поле выделения включено | Поле выделения выключено |
---|
Поле индикаторов
Если этот флажок установлен, за левым краем области текста редактора отображается вертикальное поле. Если щелкнуть это поле, отображаются значок и подсказка, связанные с текстом. Например, в поле индикаторов отображаются ярлыки точки останова или списка задач. Сведения в поле индикаторов не выводятся на печать.
Выделение текущей строки
Если этот флажок установлен, вокруг строки кода, в которой находится курсор, отображается серый квадрат.
Показать направляющие структуры
Если выбрать этот параметр, в редакторе отображаются вертикальные линии в соответствии со структурированными блоками кода. Это позволяет легко определять отдельные блоки кода.
Отображение волнистых линий для ошибок
Если этот параметр активирован, в коде будут отображаться волнистые линии подчеркивания различных цветов. (Красные волнистые линии обозначают синтаксические ошибки, синие обозначают ошибки компилятора, зеленые — предупреждения, а фиолетовые — другие типы ошибок.)
Отображение индикатора работоспособности файлов
Если этот параметр активирован, в левом нижнем углу редактора будет отображаться панель состояния индикатора работоспособности файлов (ошибки, предупреждения) с параметрами очистки кода.
Междустрочный интервал
Используйте этот элемент управления для увеличения междустрочного интервала в 1,0 по умолчанию до необходимого значения, поддерживаются значения 1,15, 1,5, 2,0, 2,5 и 3,0.
Отображение контекста редактирования в редакторе
Используйте этот элемент управления для переключения всех параметров контекста редактирования или их настройки по вашим предпочтениям, изменяя следующие параметры:
Редактор Visual Studio предоставляет множество возможностей, облегчающих написание кода и текста, а также управление им. Используя структуру, вы можете разворачивать и сворачивать различные блоки кода. Получить дополнительные сведения о коде можно с помощью технологии IntelliSense, окна Обозреватель объектов и иерархии вызовов. Для поиска в коде можно использовать такие функции, как Перейти, Перейти к определению и Найти все ссылки. Вставлять блоки кода можно с помощью фрагментов кода. Код также можно создавать с помощью функций, таких как Создание в результате использования. Если вы ранее не работали в редакторе Visual Studio, см. статью со сведениями об использовании редактора кода.
Этот раздел относится к Visual Studio в Windows. Информацию о Visual Studio для Mac см. в статье Редактор исходного кода (Visual Studio для Mac).
Код можно просматривать различными способами. По умолчанию в обозревателе решений код упорядочен по файлам. Чтобы просмотреть код, упорядоченный по классам, можно выбрать вкладку Представление классов в нижней части окна.
Можно выполнять поиск и замену текста в одном или нескольких файлах. Дополнительные сведения см. в статье Поиск и замена текста. Регулярные выражения платформы используются для поиска и замены текста. Дополнительные сведения см. в статье Использование регулярных выражений в Visual Studio.
Разные языки Visual Studio предоставляют разные наборы функций, а в некоторых случаях одни и те же функции ведут себя по-разному в разных языках. Многие из этих отличий указаны в описаниях функций. Дополнительные сведения можно найти в разделах, посвященных конкретным языкам Visual Studio.
Возможности редактора
Дополнительные возможности редактирования
В меню Правка > Дополнительно на панели инструментов есть набор дополнительных функций. Не все они доступны для каждого типа файлов кода.
Функция | Описание |
---|---|
Форматировать документ | Установка правильного отступа строк кода и перемещение фигурных скобок для разделения строк в документе. |
Форматировать выделенный фрагмент | Установка правильного отступа строк кода и перемещение фигурных скобок для разделения строк в выделенном фрагменте. |
Преобразовать пробелы в знаки табуляции в выделенных строках | Замена начальных пробелов на знаки табуляции там, где это уместно. |
Преобразовать знаки табуляции в пробелы в выделенных строках | Замена начальных знаков табуляции на пробелы. Если требуется преобразовать все пробелы в знаки табуляции в файле (или все знаки табуляции в пробелы), можно использовать команды 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 совместно с другим разработчиком, привести параметры в соответствие со стандартом или вернуться к настройкам, заданным по умолчанию в Visual Studio, с помощью команды Мастер импорта и экспорта параметров в меню Сервис. В мастере импорта и экспорта параметров можно изменить выбранные общие параметры, а также зависящие от языка и проекта параметры.
Чтобы определить новые или переопределить существующие сочетания клавиш, выберите Сервис > Параметры > Среда > Клавиатура. Дополнительные сведения о сочетаниях клавиш см. в статье Сочетания клавиш по умолчанию в Visual Studio.
Параметры редактора для JavaScript см. в статье о параметрах редактора JavaScript.
VS Code — это, в наши дни, один из самых популярных редакторов кода. Продуманный подход к использованию этого редактора способен значительно повысить продуктивность программиста. В этом материале представлено несколько советов по профессиональному использованию VS Code. Хочется надеяться, что эти советы вам пригодятся.
1. Использование нескольких курсоров
Может случиться так, что программисту понадобится вводить один и тот же текст одновременно в нескольких местах.
Вот как выглядит то, что должно получиться, в редакторе.
Код в редакторе
Как решить эту задачу? Раньше я поступал так: вводил нечто вроде текста class=«odd» в одном месте, а потом копировал его в буфер обмена и вставлял везде, где он нужен. Правда, после того, как я узнал о возможности работать с несколькими курсорами в VS Code, я так делать перестал. Это значительно повысило эффективность моего труда.
В частности, речь идёт о следующем. Для добавления в текст нескольких курсоров нужно удерживать клавишу Alt на клавиатуре (в macOS — клавишу Option ) и щёлкать по тем местам, где должны появиться курсоры. После этого всё, что вводится с клавиатуры, будет одновременно появляться везде, где имеются курсоры.
Использование нескольких курсоров
Напомню, что речь идёт о следующих сочетаниях клавиш:
- Windows: Alt+Щелчок мышью .
- macOS: Option+Щелчок мышью .
2. Переименование сущностей и команда Rename Symbol
Теперь давайте изучим ещё один простой приём.
При вводе кода или текста документа можно столкнуться с ошибкой в написании какого-нибудь слова. Или, может быть, нужно будет применить в коде новое соглашение об именовании сущностей. В подобных ситуациях возникает нужда в одновременной обработке множества строк.
Представим, что у нас есть код, напоминающий тот, что приведён ниже. Нам нужно заменить все вхождения foo на bar . Как это сделать?
Если вручную менять каждую строку, то у такого подхода будет пара недостатков:
- Слишком много ручного труда.
- Высокая вероятность возникновения ошибок.
Использование команды меню Rename Symbol
Это меню вызывается при выполнении щелчка правой кнопкой мыши по выделенному тексту. Другой способ вызова этой команды — нажать F2 после выделения текста, который надо отредактировать.
3. Перемещение выделенных строк вверх и вниз
Иногда нужно переместить какой-то программный код или обычный текст вверх или вниз в документе. Эту задачу можно решить так:
- Выделим текст.
- В Windows воспользуемся сочетанием клавиш Alt+Стрелка вверх для перемещения текста вверх. Для перемещения текста вниз, соответственно, воспользуемся сочетанием клавиш Alt+Стрелка вниз .
- В macOS роль клавиши Alt играет клавиша Options .
Перемещение текста вверх и вниз
Благодаря этому подходу можно быстро и легко менять порядок размещения текста.
4. Сниппеты
В ходе написания кода нам постоянно приходится вводить с клавиатуры одни и те же повторяющиеся конструкции.
Например, HTML5-файлы всегда содержат следующую базовую структуру документа:
А при написании for-циклов на JavaScript мы всегда вводим такие фрагменты кода:
Можно привести ещё очень много подобных примеров. Если бы приходилось вводить эти фрагменты кода вручную, поступая так всегда, когда они нужны, это было бы очень неэффективно.
К счастью, VS Code даёт в наше распоряжение настраиваемый механизм автодополнения ввода. Вот как это выглядит.
Автодополнение ввода
Поговорим о том, как настроить VS Code и обзавестись тем, что показано на предыдущем рисунке.
▍Создание конфигурационного файла
Для настройки автодополнения ввода в VS Code нужно сначала создать соответствующий конфигурационный файл. Редактор читает этот файл, реализуя соответствующие механизмы. Для того чтобы создать этот файл, нужно, как показано на следующем рисунке, перейти в меню Code > Preferences > User Snippets .
Команда меню User Snippets
После этого появится следующая панель.
Панель для работы со сниппетами
Здесь можно выбирать существующие конфигурационные файлы и редактировать их. Ещё тут можно создать новый конфигурационный файл. Мы собираемся поступить именно так.
Если выбрать тут команду New Global Snippets file , будет создан конфигурационный файл, доступный глобально. Если же выбрать команду вида New Snippets file for 'test' — будет создан файл, доступный локально, в текущем рабочем пространстве.
Мы создадим локальный файл.
После выбора команды New Snippets file for 'test' система запросит имя файла.
Ввод имени нового файла
Конфигурационный файл мы создали, но пока он пуст.
Новый пустой конфигурационный файл
Я, чтобы вам было удобнее, записал весь вышеописанный процесс и представил его здесь в виде анимированного gif-файла.
Создание нового конфигурационного файла
▍Создание сниппетов
Конфигурационный файл хранит данные в формате JSON. Вот пример его содержимого.
Содержимое конфигурационного файла
Вот — то же самое, но уже в виде обычного текста:
Для начала давайте взглянем на поле «html5 autocomplete» . Смысл этого поля заключается лишь в том, чтобы сообщить программисту о назначении сниппета. Сюда можно внести всё что угодно.
Разберёмся теперь с полем «prefix»: «html5» . Оно предназначено для описания задаваемого нами сокращения, которое редактор раскрывает в некий фрагмент кода. Когда мы вводим в редакторе текст html5 , редактор автоматически заменяет его на то, что задано в элемент «body» .
Элемент «body»: […] содержит тот код, который редактор должен вставить в документ вместо введённого нами префикса. Так как этот код может состоять из множества строк, данное поле представлено массивом. Каждый элемент массива — это одна строка кода. Если «перевести» конструкцию, которую мы только что рассматривали, на язык обычного HTML-кода, то получится, что она равносильна следующему:
Теперь, когда в нашем распоряжении есть простой конфигурационный файл, давайте его протестируем.
Испытание конфигурационного файла
▍Область действия сниппетов
Мы убедились в том, что наш конфигурационный файл позволил организовать автодополнение ввода. Но в нём есть один недостаток. Дело в том, что конструкция, представленная в нём префиксом html5 , используется только в HTML-файлах. В JavaScript-файлах нам эта конструкция не нужна.
В таких случаях очень кстати оказывается возможность указания области действия сниппетов. А именно, речь идёт о поле «scope»: «html» , которое нужно добавить в описание сниппета.
Ограничение области действия сниппета HTML-файлами
Испытаем нашу систему снова. Попробуем префикс html5 в HTML-файле и в JS-файле.
Испытание сниппета в HTML- и в JS-файле
В JS-файле, как видно, ввод html5 ни к чему особенному не приводит. А это — именно то, что нам нужно.
▍Курсор
Давайте снова испытаем автодополнение ввода, выполняемое на основе созданного нами файла. Присмотримся к нему. Нет ли в нём каких-нибудь изъянов?
Исследование автодополнения ввода
Видно, что после вставки блока кода в редактор курсор автоматически попадает в конец этого блока. Но блок кода, который автоматически вставлен в документ, это лишь заготовка, над которой нужно ещё поработать. В частности, надо ввести содержимое тега .
Пользоваться нашим механизмом автодополнения ввода было бы гораздо удобнее в том случае, если бы курсор автоматически устанавливался между открывающей и закрывающей частями тега .
Для того чтобы это сделать, мы можем воспользоваться в конфигурационном файле специальной конструкцией $0 . Вот как это выглядит.
Настройка местоположения курсора
Теперь, после того, как код оказывается в документе, курсор автоматически устанавливается туда, где в конфигурационном файле имеется $0 .
Курсор устанавливается в нужном месте
▍Пример
А теперь, чтобы закрепить то, что мы только что изучили, давайте рассмотрим новый пример.
Нам хотелось бы, чтобы, после ввода в JavaScript- или TypeScript-файле текста fori , там автоматически появлялась бы следующая конструкция:
И ещё — чтобы курсор автоматически устанавливался бы после i < .
Можете пока не смотреть на решение этой задачи. Попытайтесь решить её самостоятельно.
В общем-то, решение этой задачи может быть представлено таким конфигурационным файлом:
Использование сниппета fori
Сниппетами пользуются именно так. Я много рассказывал об этом, так как сниппеты — это одна из моих любимых возможностей VS Code. Я думаю, что она пригодится и вам. Раньше, когда я сталкивался с повторяющимися фрагментами кода, мне приходилось копировать их из файлов, в которых они уже были. Это — медленный процесс, чреватый ошибками. А теперь, благодаря возможности оформлять такие фрагменты кода в виде сниппетов, задача ввода повторяющихся фрагментов кода стала гораздо проще.
Читайте также: