Укажите путь к файлу CustomDictionary для проверки орфографии StyleCop

Проверка исправлений комментариев была добавлена ​​в последние версии StyleCop. Кажется, я могу повторно использовать существующий файл CustomDictionary (который я создал для FxCop) с помощью StyleCop. SA1650 правило не говорит, что это возможно. Но в примечаниях к выпуску для версии 4.7.39 я вижу

Добавить поддержку для указания папок словаря в settings.StyleCop файл.

Как настроить StyleCop для поиска этого файла в корневой папке моего решения?

Ответ 1

Добавьте файл с именем Settings.StyleCop в корневой каталог вашего решения со следующим содержимым:

<StyleCopSettings Version="105">
  <GlobalSettings>
    <CollectionProperty Name="DictionaryFolders">
      <Value>**my-dictionary-folder**</Value>
    </CollectionProperty>
  </GlobalSettings>
</StyleCopSettings>

Если вы замените my-dictionary-folder на относительный путь к папке, содержащей ваш файл CustomDictionary.xml.

Ответ 2

В моем случае это сработало, когда я указал пользовательские словарные записи в файле Settings.StyleCop, расположенном рядом с файлом .csproj.

<GlobalSettings>
  <StringProperty Name="MergeSettingsFiles">NoMerge</StringProperty>
  <CollectionProperty Name="RecognizedWords">
    <Value>word1</Value>
    <Value>word2</Value>
    ...
  </CollectionProperty>
</GlobalSettings>

На самом деле утилита StyleCopSettingsEditor.exe создала эти настройки для меня. Я открыл его, используя контекстное меню проекта в Visual Studio, используя пункт меню "StyleCop Settings".

Ответ 3

Согласно документации StyleCop для правила SA1650

Файл CustomDictionary.xml должен быть помещен в ту же папку, что и StyleCop.dll и Правила. Эта папка (и все вложенные папки) проверяется на файлы словаря. StyleCop загружает CustomDictionary.xml, CustomDictionary.en-GB.xml, а затем CustomDictionary.en.xml(где en-GB - это культура, указанная в файле Settings.StyleCop). StyleCop также загружает custom.dic, custom.en-GB.dic, а затем custom.en.dic(где en-GB - это культура, указанная в файле Settings.StyleCop). Признанные слова также могут быть добавлены в файл Settings.StyleCop с помощью редактора настроек на вкладке орфографии.

Таким образом, вам нужно будет поместить копию CustomDictionary.xml в этом конкретном месте, а не в корень папки решения.