Поделиться через


Сведения о проверке орфографии

Многие функции в Visual Studio предназначены для написания нужного кода, от того, чтобы убедиться, что код компилируется, чтобы помочь вам в стилизации кода. Теперь с функцией проверки орфографии, представленной в версии 17.5, Visual Studio может даже убедиться, что ваша орфография является точной.

Снимок экрана: пример проверки орфографии в действии.

Средство проверки орфографии доступно для любого файла C#, C++или Markdown. Если средство проверки орфографии включено, Visual Studio помечает все слова, которые он обнаруживает как пропущенные слова. Visual Studio также предлагает альтернативные орфографии и помогает исправить их. Функция даже выполняет контекстное переименование, когда эти ошибки являются идентификаторами, чтобы код по-прежнему компилировался.

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

Как его использовать?

При возникновении ошибки орфографии быстрые действия предоставляют решения для устранения ошибок орфографии. Вы можете вызвать быстрые действия с помощью сочетаний клавиш CTRL+ или ALT+ВВОД. Когда появится контекстное меню, Visual Studio отображает три варианта для обработки проблемы орфографии.

Если любой из словарей предоставляет предложения орфографии, Visual Studio отображает их. Если несколько словарей предоставляют предложения, Visual Studio группирует свои предложения по словарю. Для строк и комментариев выбор одного из этих предложений приводит к одной замене на месте. Для идентификаторов в документе C++ или C# принятие предложения приводит к рефакторингу или переименованию, которое обновляет все экземпляры идентификатора, чтобы убедиться, что код компилируется.

Снимок экрана: средство проверки орфографии с несколькими словарями, перечисленными.

Вы также можете игнорировать проблему орфографии. Выбрав игнорировать проблему, Visual Studio создает файл exclusion.dic в каталоге AppData на локальном компьютере. После того как вы решили игнорировать слово, средство проверки орфографии игнорирует его во всех экземплярах Visual Studio.

Как это работает?

Так как C#, C++и Markdown используют английский язык в качестве языка для ключевых слов, Visual Studio обычно использует словарь "Английский (США)" или "en-us" для проверки орфографии. Visual Studio проверяет экземпляр Windows для используемого языка отображения, и если он не является "en-us", он также использует этот словарь.

Примечание.

В C# и C++ также есть дополнительные словари для ключевых слов на этих языках, которые препятствуют помечению слов, таких как "пространство имен" или "распределить" как пропущенные слова.

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

В следующей таблице показаны некоторые эвристики, с которыми проверяется средство проверки орфографии при сканировании документа кода:

Сведения в коде Что проверяет Visual Studio Почему?
Привет Привет, привет Всегда проверяйте наличие правильных и общих существительных
HelloWorld Привет, привет, Мир, мир Буквы мультимедиа используются для пометки границ слов
Hello.World Привет, привет, Мир, мир Знак препинания используется в качестве границы слова
_Hello123 Привет, привет Начальные или конечные цифры или знаки препинания удаляются
Hello2World Привет, привет, Мир, мир Цифры мультимедиа, такие как знаки препинания, используются в качестве границы слова
btnWorld Мир, мир Фрагменты трех символов или меньше игнорируются
helloworld Helloworld, helloworld, helloworld Нет индикатора для определения границ слов

Если Visual Studio идентифицирует совпадение для маркера в любом из словарей, который он использует, маркер считается приемлемым, и выполняется проверка. В противном случае маркер считается орфографическим, и Visual Studio помечает его как ошибку орфографии.

Снимок экрана: пример ошибок орфографии в списке ошибок.

Настройка средства проверки орфографии

Вы можете настроить средство проверки орфографии таким образом, чтобы оно оптимизировано для совместной среды. Таким образом, Visual Studio использует файл EditorConfig для настройки, чтобы управлять поведением средства проверки орфографии в репозитории.

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

Внимание

Параметры ошибки орфографии зависят от файла. Необходимо указать, к каким файлам применяются параметры орфографии. В следующем примере параметры орфографии применяются ко всем файлам C# в решении:

[*.cs]

Ниже приведены некоторые примеры и сценарии использования коммутаторов, которые можно настроить в файле EditorConfig:

  • Список языков для использования Visual Studio. В этом примере Visual Studio будет использовать только словари en-us и fr-fr при проверке проблем с орфографией.

    spelling_languages = _language_[,_language_]
    (Example: = en-us,fr-fr)

    Примечание.

    Не забудьте установить языковой пакет для любого языка, который вы используете, чтобы предотвратить неправильное перетаскивание слов в качестве ошибок орфографии в Visual Studio.

  • Управление проверкой Visual Studio. В этом примере Visual Studio будет проверять идентификаторы и комментарии для ошибок слов, но не проверять внутри строк.

    spelling_checkable_types = strings,identifiers,comments
    (Example: = identifiers,comments)

  • Управление серьезностью Visual Studio назначает ошибки орфографии в списке ошибок. В этом примере ошибки орфографии отображаются как ошибки.

    spelling_error_severity = error OR warning OR information OR hint
    (Example: = error)

  • Создайте собственный словарь исключений, чтобы указать слова, которые вы считаете правильно орфографическими. В этом примере при первом запуске средства проверки орфографии для любого файла в решении Visual Studio проверяет наличие файла exclusion.dic. Visual Studio проверяет тот же каталог .sln файла для проекта C# или корневого каталога для каталога C++. Если файл exclusion.dic не существует, Visual Studio создает файл. Затем каждый раз, когда пользователь выбирает игнорировать слово, Visual Studio добавляет его в этот файл exclusion.dic. Visual Studio считает любое слово, отображаемое в этом файле exclusion.dic, как правильно написанное слово.

    spelling_exclusion_path = absolute OR relative path to exclusion dictionary
    (Example: = .\exclusion.dic)

    Примечание.

    Visual Studio использует словарь исключений, spelling_exclusion_path указанный параметром в файле editorconfig или файле exclusion.dic в %localappdata%\Microsoft\VisualStudio\<Version> каталоге, если параметр не найден.

  • Укажите, используется ли словарь исключений по умолчанию для конкретного языка. Этот флаг по умолчанию имеет значение true. Все слова, добавленные в словарь исключений для конкретного языка, будут считаться правильно орфографическими. Установите значение false, чтобы игнорировать словари исключений, относящиеся к C++ или C#.

    spelling_use_default_exclusion_dictionary = true OR false
    (Example: = spelling_use_default_exclusion_dictionary = false)

Ниже приведен полный пример.

[*.{cs,vb}]                                         //specify which files the spelling options apply to
spelling_languages = en-us,fr-fr                    //specifies the en-us and fr-fr dictionaries for use in spell checking
spelling_checkable_types = identifiers,comments     //specifies that identifiers and comments are the only checked elements
spelling_error_severity = error                     //sets severity assigned to spelling errors to error in the error list
spelling_exclusion_path = exclusion.dic             //defines a custom exclusion dictionary location and file
spelling_use_default_exclusion_dictionary = false   //ignores the language-specific default exclusion dictionary

Обработка особых случаев

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

  • В строке, включающей знак препинания, например "misc.", Visual Studio не предложит исправление, так как знак препинания в идентификаторе может привести к коду, который не компилируется.
  • Обратная косая черта в строке опустит последующий символ проверки орфографии и обрабатывает обратную косую черту и последующий символ как разделитель слов. Например, в строке hello\nworldVisual Studio сначала обнаруживает обратную косую черту. Visual Studio обрабатывается \n как разделитель слов, который оставляет "hello" и "world", каждый из которых проверяется по отдельности.
  • Строки, содержащие URL-адреса, например https://... или mailto:.. не проверяются по всей строке.