Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Автоматическое добавление using в CodeRush

Автор вопроса: RastoОтветов: 3

Я только что установил CodeRush Pro (ознакомительную версию) для Visual Studio и могу сказать, что пока мне он очень нравится. По сравнению с Resharper, мне действительно не хватает только одной функции. Именно так CodeRush обращается с using. Когда я набираю имя класса, которое не объявлено в каком-то пакете, указанном в using, CodeRush подчеркивает его красным цветом как ошибку (что это такое), но если я наведу на него курсор, он не предложит мне добавить using, а просто скажет это "Необъявленный элемент".

Я должен использовать VS по умолчанию, используя добавление (переместите курсор к идентификатору, наведите курсор на это действительно маленькое поле, которое появляется под первой буквой, нажмите появившуюся кнопку и выберите, например, using System из раскрывающегося меню).

Есть ли способ настроить CodeRush, чтобы предлагать добавление mi при наведении курсора на выделенную "проблему" (которая говорит о необъявленном элементе)?

Вторая часть заключается в том, что в Resharper есть нечто под названием Завершение имени типа. Это улучшенный intellisense. Допустим, у вас нет using объявления в вашем файле. Затем вы набираете что-то вроде ICompar и нажимаете CTRL + ПРОБЕЛ. Конечно, предложений не будет. Но с Resharper вы можете нажать CTRL + ALT + SPACE, и вы получите предложения всех классов, начинающихся с ICompar, даже если они не используются. Когда вы выбираете один из них, вам автоматически добавляется правильное использование.

Есть ли способ заставить CodeRush вести себя таким образом?

visual-studiointellisensecoderush

Ответы

Ответ 1 · рейтинг 3 · Rory Becker

ЧАСТЬ I

Visual Studio

Упомянутый вами механизм VS по умолчанию отключается с помощью Ctrl + Period или Shift + Alt + F10.

Шаблоны CodeRush

В этой части я процитирую Марка Миллера (главного архитектора CodeRush):

"Шаблоны CodeRush (например, фрагменты кода VS на стероидах) будут добавлять пространства имен по мере необходимости, поэтому, если вы используете шаблоны для создания классов, методов, переменных, свойств, событий и ссылок на типы, тогда ссылки на пространства имен будут добавлены автоматически, и вы вам редко понадобится использовать функцию VS для добавления пространств имен. Чтобы начать работу с шаблонами, мы рекомендуем закрепить окно обучения CodeRush (DevExpress | Tool Windows | CodeRush) сбоку от редактора и проверить это окно обучения на предмет советов и шаблонов, которые вы можете можно использовать для создания необходимого кода. Просто введите шаблон, отображаемый в окне, и разверните его с помощью клавиши пробела. "

Попробуйте v-серию, m-серию, n-серию и t-серию.

Я имею в виду следующее:

  • Запустите обучающее окно CodeRush (DevExpress \ Tool Windows \ CodeRush)
  • Закрепите его слева
  • Вернуться в редактор
  • Type 'v' (no quotes)
    • Careful this is context sensitive
      • Try this whilst the caret is in a class.
      • Попробуйте это, пока курсор находится в методе.
  • Теперь посмотрите на окно обучения.
  • Вы должны увидеть несколько вариантов дополнительных символов для ввода.
  • Введите одно из предложений и нажмите пробел.

Это было ваше знакомство с v-серией шаблонов.

Не стесняйтесь проверить серии m, n и t.

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

Плагины сообщества

В CodeRush нет ничего, что предоставляло бы функцию "Добавить использование для этого типа".

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

Один плагин, в частности Refactor_Resolve, имеет функциональные возможности, которые могут быть близки к тому, что вы описываете.

ЧАСТЬ II

Я не верю, что в настоящее время CodeRush предлагает какие-либо улучшения intellisense.

Прости

Ответ 2 · рейтинг 2 · Ruben Bartelink

Не ответ, но предлагаю лучший обходной путь для бедняков на случай, если нет лучшего ... это Ctrl-Home (начало файла), затем usl и <space> (развернуть до using System.Linq), затем Ctrl-Minus (Вернуться туда, где мы были - конечно, вы также можно использовать маркеры CR).

(У меня есть запрос в базе ошибок CR, чтобы это было отсортировано)

Ответ 3 · рейтинг 1 · Ruben Bartelink

DX создали еще один образец на основе этого. Я бы хотел, чтобы он попал в продукт CR, но я думаю, что не стоит ныть по поводу бесплатных плагинов (все равно слишком много).

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы