Pull to refresh

ReSpeller — плагин проверки орфографии для ReSharper

Reading time3 min
Views8.7K
Многие разработчики, использующие различные IDE от JetBrains — Idea, PyCharm и т.д, — знают и активно используют встроенный в них спелл чекер. Однако, к несчастью .Net разработчиков, в Решарпере отсутствует подобная функциональность из коробки.
Поэтому я решил написать свой плагин для Решарпера для проверки орфографии в коде.

Резонный вопрос: зачем это делать, если есть несколько спелл чекеров для Visual Studio, а также пара подобных плагинов для самого Решарпера?

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

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


Работает ReSpeller, как и должен работать любой спелл чекер — подсвечивает ошибки везде, где можно (а точнее, где ему указано): в идентификаторах, комментариях, строковых литералах, в значениях атрибутов, в свободном тексте разметки в XML, предлагая при этом различные варианты для исправления
image

Самое существенное отличие от других плагинов кроется в процессе исправления опечатки в идентификаторе. Если другие плагины предлагают обычное контекстное меню с вариантами исправления, то ReSpeller выдает «родное» меню Rename-рефакторинга, будто бы вы нажали F2:
image

В случае с нелокальным объявлением мы увидим привычный диалог с вариантами имен
image

А что, если имя использовалось в строках или комментариях, спросите вы? Ведь другие плагины не обрабатывают такую ситуацию (правда не обрабатывают :)). А ReSpeller обрабатывает, потому как это умеет Rename-рефакторинг Решарпера.

Поддержка языков программирования


ReSpeller поддерживает множество языков программирования и языков разметки. Среди них:
  • языки программирования: C#, VB.NET, JavaScript
  • языки разметки: HTML, XML, XAML, RESX
  • смешанные типы файлов: CSHTML (Razor), ASPX, ASHX

Мультиязычность


ReSpeller обеспечивает проверку орфографии на нескольких языках.
image
Вы можете самостоятельно установить нужные вам словари (инструкция здесь).
Следует отметить, что, благодаря отличному орфографическому движку Hunspell и его специальным словарям, при проверке слов правильно обрабатываются их различные формы, суффиксы и префиксы и т.д.

Уровни нотификации


В настройках плагина можно отдельно указать уровни важности подсветки для разных элементов исходного кода.
image
Например, можно отключить подсветку опечаток в комментариях, если она вам мешает.

Проверка и подсветка в диалоге переименования


Еще одна «фирменная» фича моего плагина. ReSpeller умеет показывать опечатки прямо в диалоге переименования самого Решарпера
image
Признаюсь, пришлось много повозиться, чтобы реализовать ее.

Проверка на уровне проекта/решения


Бывают ситуации, когда разработчик пишет публичный API, и опечатки в различных его идентификаторах если и не сказать, что недопустимы, то точно уж являются очень плохим тоном. Избежать такой ситуации поможет анализ уровня всего проекта. Открыв ReSharper | Inspect | Code Issues in Project/Solution, можно увидеть список всех опечаток в проекте/решении.
image

Где взять


Плагин поставляется в двух версиях — Free и Pro. Отличия версий, а так же ссылки можно найти на официальном сайте лучшего спелл чекера для Решарпера

Найденные баги, а также идеи для новых фич можно сабмиттить в баг-трекер.
По всем другим вопросам можно обращаться по адресам, указанным в разделе Contacts на сайте, либо напрямую мне Artem Bukhonov <nerzhulart(at)gmail.com>
Tags:
Hubs:
Total votes 25: ↑24 and ↓1+23
Comments9

Articles