Привет, хаброразработчик!
Нет, это не очередной конкурс спали клавиатуру А и получи клавиатуру Г. Сегодня мы поговорим о горячих клавишах в Visual Studio 2008.
Многие из нас пользуются всевозможными плагинами, расширениями для Visual Studio. Стоит заметить что многие из них довольно удобны. А вкупе с code snippets значительно ускоряют работу. Про плагины можно почитать здесь и здесь, про code snippets здесь. Тем кто ещё не знаком с такими «плюшками» настоятельно порекомендую попробовать и использовать.
Что касается меня, я пользовался Visual Assist, позже попытался использовать R#. Но если от первого я отказался когда перестал программировать на С++, то второй «убивал» напрочь мой компьютер, если я пытался открыть больше 2х студий. Не смотря на то, что сейчас и компьютер помощнее и R# несомненно улучшили, я не использую его. Связано это с тем, что я нашёл тогда возможность «вздохнуть» более свободно, используя «горячие клавиши».
Здесь я опишу тех хоткеи, которые использую и считаю удобными и необходимыми для запоминания.
Схемы разработки
Прежде всего, хочу обратить ваше внимание что в Visual Studio есть несколько схем для разработчиков, переключить которые вы можете через меню, как показано ниже:
Так же в этом меню, вы можете добавить или удалить хоткеи «заточив» ещё больше под себя. Настройка довольно проста.
Описанные примеры я буду рассматривать для схемы Visual C# 2005.
Комментирование.
Есть несколько комбинаций клавиш, для создания комментирования:
Ctrl+E,C — закоментировать выбранные линии в коде.
Ctrl+E,U — раскомментировать выбранные линии в коде.
Если перед имененм метода набрать /// — автоматически будут добавлены XML комментарии, которые потом можно использовать для создания документации.
Поиск
Кто-то пользуется поиском для рефакторинга, кто-то для ознакомления со своим же кодом, жизнь можно улучшить довольно легко:
Ctrl+F — открывается стандартное окно поиска, если в буфер недавно было скопирован текст, то он автоматически подставиться.
Ctrl+F3 — поиск «активного» текста вниз (который выделен или слово на котором стоит курсор), без копирования в буфер обмена.
Ctrl+Shift+F3 — поиск «активного» текста вверх.
Ctrl+I — и начинаете печатать текст, этакий runtime поиск.
Вызов базового джина
Вам лень писать текст полностью?! Скорость выпадающего Intellisence не устраивает несущуюся впереди вас вашу мысль?!
Тогда самое время применить следующии комбинации:
Ctrl+Space — вызов Intellisence с показом «слов»
Ctrl+J — если вы подзабыли название метода класса или его свойсто, то эта комбинация вам поможет. Можно применять и предыдущую, но эта более «умная».
Ctrl+K, X — показ всех сниппетов, которые у вас есть, в виде выпадающего списка, использование интуитивно понятно :)
короткое_имя_снипета+Tab — использовать сниппет в коде. Список базовых сниппетов можно посмотреть здесь. Себе я сделал немного урезанный вариант и повесил рядом с монитором.
Навигация по коду
Тут стоит сказать отдельно и довольно много, навигация очень удобная, особенно когда привыкаешь :)
F12 — перейти к определению/объявлению класса/метода/свойства. Очень применимо если вам вдруг стало интересно, а реализуется ли этой переменной, этого класса тип интерфейс IDisposable; или вы ищите в коде, «а где же объявляется эта переменная».
Ctrl+G — перейти на определённый номер строки в коде. (Отображение номеров строк можно включить: Text Editor -> Интересующий вас язык -> Display -> Line numbers — выставить галку). Иногда довольно удобно, особенно если получаете описание необработанного исключения, а там указан, как правило, номер строки.
Ctrl+] — когда курсор установлен на скобку, многострочный комментарий (/* */), регион (#region), строку, обрамлённую кавычками, эта комбинация позволит вам увидеть начало и окончание этих «блоков», перемещая курсор между ними.
Ctrl+M, M — я человек довольно ленивый и мне сложно заставить долго тыкать мышкой по ±, сворачиваю и разворачия «блоки», поэтому рекомендую данную комбинацию
Ctr+M, O — комбинация аналогичная предыдущей, только сворачивает все блоки
Ctrl+- — переход к предыдущему активному тексту (тому который вы редактировали)
Ctrl+Shift+- — переход к следующему активному тексту, если он конечно есть ;)
Если обратите внимание то студия, по своей природе MDI, значит должна быть возможность перемещаться, между окнами:
Ctrl+Tab — аналог Alt+Tab в Windows, только применимо к студии.
Очень удобным инструментом в студии являются закладки, да-да, по аналогии с книжными. Можно отметить код чтобы потом перейти к нему:
Ctrl+B, T — поставить/снять закладку.
Ctrl+B, Ctrl+C — удалить все закладки.
Ctrl+B, N — перейти к следующей закладке.
Ctrl+B, P — перейти к предыдущей закладке.
Форматирование и редактирование
Многие знают и используют Ctrl+C и Ctrl+V, но студия обладает ещё рядом удобным комбинаций:
Ctrl+Shift+V — не отпуская Ctrl+Shift и нажимая на V, вы сможете вставить один из 10 последних кусков текста, скопированных в буфер обмена.
Tab — увеличить отступ.
Shift+Tab — уменьшить отступ.
Мне иногда не хватало вертикального выделения текста, бывает полезно. Оказывается и такая возможность есть! Стоит нажать Alt, и не отпуская, выделять мышкой текст. Но есть минус — меню и стрелочки клавиатуры :). Это решаемо, нажимаете Shift+Alt и используете стрелочки Left или Right
Если код доставшийся вам «грязен», не только по структуре, но и по внешнему оформлению, используйте:
Ctrl+E+D — форматирование всего документа, позволяет привести документ в более удобоваримый вид.
Ctrl+E+F — форматирование выбранной части текста
Иногда в целях рефакторинга или ещё каких-то благих начинаниях, есть смысл перевести все буквы в верхний или нижний регистр:
Ctrl+Shift+U — перевести выделенный блок в верхний регистр
Ctrl+U — перевести выделенный блок в нижний регистр
Небольшой экскурс в сборку и отладку
Конечно же со стороны хоткеев :)
Начнём со «сборки»:
Ctrl+Shift+B или F6 — собрать solution.
Shift+F6 — собрать активный проект.
Если честно, тут я немного пошаманил, заточив под себя, иногда бывает удобно пересобрать проект RebuildSolution, но почему-то хоткей для этого не предусмотрен, я поступил следующий образом:
F6 — собрать solution
Ctrl+Shift+B — пересобрать solution
Поступил я так из-за соображения, что иногда студия не выполняет пересборку проекта, а пишет «up-to-date», а мне нужно именно пересобрать.
Если появились ошибки, это плохо, но никто от них не застрахован:
F5 — запустить программу, с возможностью отладки. Или продолжить выполнение программы, после точки останова.
Ctrl+F5 — запустить программу без отладки
F9 — поставить/убрать точку останова — breakpoint
Ctrl+Shift+F9 — удалить все точки останова.
F10 — выполнить код, без захода внутрь
F11 — выполнить код, с заходом внутрь
В режиме отладки есть два типа просмотра — Watch и QuickWatch. Разница между ними выходит за рамки данного топика :).
Однако, вызвать QuickWatch вы можете нажав Ctrl+D, Q. Просто Watch — Ctrl+D, W.
PS: если кому-то оказалось «мало», то можно получить информацию в блоге Сары Форд, те кто не очень дружит с английским, есть возможность почитать переводы, которые появляются очень регулярно.