Зробити Visual Studio зрозуміти CamelCase під час натискання клавіш Ctrl та курсору


130

Чи можна налаштувати Visual Studio 2008 для розуміння CamelCase? Зокрема, я хотів би отримати можливість Ctrl + rightабо leftкурсор, щоб перевезти мене до підрозділу імені змінної чи типу.

тобто, якщо мій курсор був на початку цього рядка:

LongNamedExampleClass longNamed = new LongNamedExampleClass();

і я натиснув Ctrl + right, я хотів би перейти до Namedназви класу " ", а не початку назви змінної. Якщо я натисну його ще раз, я хотів би перейти до " Example". Сподіваюся, це має сенс.

Я дуже використовував цю навігаційну функцію в Eclipse, і мені важко вивчити щось настільки вкорінене.


Resharper підтримує цю функцію.
Петтер Вігл

Resharper це робить. Я припускаю, що ви можете написати власний додаток, щоб зробити те саме.
відкритий комір

Відповіді:


132

Дякуємо тим, хто запропонував Resharper. Дає мені ще одну причину любити це ще більше. Щоб конкретизувати, де це живе - JetBrains називає це CamelHumps (мило), і ви можете увімкнути його за допомогою меню:

Resharper -> Опції -> Навколишнє середовище -> Редактор -> Поведінка редактора -> Використовувати CamelHumps

... у старих версіях Resharper це;

Resharper -> Опції -> Редактор -> Використовувати CamelHumps


2
Чи є можливість вибрати все слово, навіть якщо CameHumps увімкнено? На даний момент мені потрібно кілька разів натиснути праворуч або ліворуч, щоб вибрати слово. Я сподіваюся, що ти мене отримаєш.
Озкан

Щоб швидко вибрати все слово, коли CamelHumps увімкнено, двічі натисніть клавішу швидкої клавіші Розширення вибору ( Ctrl+ Alt+ Rightабо Ctrl+ W).
Панг

107

Якщо хтось наткнувся на цю сторінку після 25 листопада 2008 року (хто не хоче платити за ReSharper або CodeRush, у яких більше немає безкоштовної версії ), наступне безкоштовне розширення додає цю функціональність: Навігація під словом Olle Westman

(Крім того, розширення VSTricks включає в себе перелік підрядних навігацій у своєму списку чудових функцій. Існує також інше розширення навігації під словом, створене Лаурі Васама, яке не слід плутати з Olle Westman, яким використовується ця відповідь.)

На сторінці проекту «Підмовна навігація» зазначено:

Знайдіть Edit.Subword у вкладках клавіатури, щоб налаштувати речі.

Ось як я це налаштував у Visual Studio 2019:


  1. Перейдіть до Інструменти> Опції> Навколишнє середовище> Клавіатура

  1. У розділі Use new shortcut inВиберіть Текстовий редактор

  1. У розділі Show commands containingВведіть Edit.Subword . Це повинно спливати поле автозаповнення із переліченими нижче командами.

  1. Виберіть одну з наступних команд, для якої потрібно встановити її ярлики. Після вибору виконайте решту пронумерованих кроків. Потім поверніться, Step 4щоб встановити ще один.
    • Edit.SubwordNext
      • Переміщає верблюдів праворуч [ Alt + Right Arrow]
    • Edit.SubwordPrevious
      • Переміщує верблюди ліворуч [ Alt + Left Arrow]                                                             
    • Edit.SubwordNextExtend
      • Вибирає верблюдів праворуч [ Alt + Shift + Right Arrow]
    • Edit.SubwordPreviousExtend
      • Вибирає верблюдів зліва [ Alt + Shift + Left Arrow]                                                              
    • Edit.SubwordDeleteNext
      • Видаляє верблюди праворуч [ Alt + Delete]
    • Edit.SubwordDeletePrevious
      • Видаляє верблюди зліва [ Alt + Backspace]

Примітка. Призначаючи ці навігаційні команди підмовного слова цим новим клавішам швидкого доступу, збережіть будь-яку вже наявну функцію ярлика, яку ви хочете заздалегідь зберегти, встановивши їх на різні клавіші. Він не повинен суперечити жодним встановленим за замовчуванням ярликам.


  1. Під Press shortcut keys, натисніть клавіші швидкого доступу

  1. Клацніть Assignта перезапишіть наявний ярлик

2
Дякую за голову! Це чудово працює і є найбільш відкритим із представлених рішень.
Честер Хеск

Я мав на увазі 2015 рік і далі. Як згадувалося пізніше, я використовував це у VS 2012. Я уточню в дописі. Дякую.
jsea

2
Особливо відмінна відповідь у наданні деталей налаштування. Я безумовно вдячний за поясненнями Next / PreviousExtend
skia.heliou

9
У 2015 році мені довелося перезаписати TextEditor. * Команди, а не Global. * Команди. ALT + RIGHT вже прив’язаний до чогось іншого.
Seth Flowers

2
@yanyankelevich Я тільки тестував це у VS2019 і він працює. Однак я помітив у диспетчері розширень, було два розширення під назвою "Навігація під словом". Ви хочете той, який створив Оле Вестман. Я оновив свою відповідь, щоб вказати це, і зауважте, що це працює у VS2019.
jsea

22

Якщо у вас встановлений ReSharper, ви також можете налаштувати комбінації клавіш Visual Studio "Alt-Right" та "Alt-Left" для CamelHump, не втрачаючи стандартної поведінки Visual Studio для "ctrl-right" та "ctrl-left".

  1. Відкрийте вікно Параметри Visual Studio у меню Інструменти -> Параметри
  2. Розгорніть середовище та прокрутіть униз до клавіатури
  3. У Показуйте команди, що містять поле, введіть "горб". Це покаже всі команди, пов’язані з CamelHumps. CamelHumps
  4. Зіставте команди з потрібними відображеннями клавіш, вибравши команду зі списку та ввівши відображення клавіш у текстовому полі клавіш швидких клавіш та натисніть кнопку Призначити .

Застереження:

  • Призначте відображення текстового редактора , а не глобального .
  • Переконайтесь, що параметр Use CamelHumps з Resharper -> Опції -> Редактор -> Поведінка редактора вимкнено .

Докладніше тут: http://davidrcook.wordpress.com/2009/11/05/working-with-camel-case-in-visual-studio/


4
Ви щойно зробили мій день. Ідеальним рішенням, як горбики верблюда, може бути така шпилька з довгими ідентифікаторами (як засвідчить кожен, хто використовує Eclipse)
chrisb

8

Він не є рідним для Visual Studio, але ви можете отримати його безкоштовно, використовуючи CodeRush Express . (ReSharper і CodeRush вимагають оплати).


На сьогоднішній день безкоштовний лише пробний процес
skia.heliou

2

Visual Studio не підтримує таку поведінку. Однак, CodeRush DevExpres ! продукт підтримує подібну навігацію (використовуючи Alt-Left & Alt-Right), а також безліч інших функцій для навігації. CodeRush! продукт також в комплекті з їх інструментом Refactor. Вони також пропонують безкоштовний CodeRush! & Рефактор Експрес-продукт, хоча я не впевнений, що навігація на кожухах верблюда є частиною експрес-продукту.



-1

Я не думаю, що Visual Studio підтримує цю функцію внутрішньо, оскільки, здається, використовується звичайний спосіб Ctrl + Right і Ctrl + Left працювати в середовищі Windows. Але це можливо, можливо, з якимось розширенням або плагіном.


6
Зробити здогадки про те, чи зможуть інші люди відповісти на запитання, насправді це не відповідь на питання.
GregNash
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.