Интересности      Книги      Утилиты    

21 февраля 2015 г.

Маленькие хитрости Visual Studio. Навигация.

internet[1]
Для того чтобы хорошо и быстро писать код важно легко передвигаться в рамках например большого солюшена. Причем не обязательно устанавливать что-либо дополнительно хотя Resharper, CodeRush, и расширения Visual Studio помогают в этом. Возможно некоторые способы многим известны, а некоторые нет. Но часто я сталкиваюсь с тем что даже казалось бы простые фичи студии, которые значительно мне облегчают жизнь, многим коллегам либо не известны либо не используются в силу того, что они в свое время их недооценили.

Track active item in Solution Explorer

Почему то одноименная опция выключена по умолчанию в Visual Studio. А она делает важную работу – подсвечивает текущий документ с которым вы работаете в Solution Explorer. По этой посветке всегда можно определить где ты находишься в дереве проекта и солюшена.
Untitled
Желательно ее всегда сразу активировать. Рядом кстати можно активировать еще одну полезную опцию Show Output window when build starts. В итоге теперь всегда имеем подсветку тех файлов с которыми работаем:
Untitled2

Show pinned tab on separate row

Всегда есть документы, с которыми мы проводим большую часть времени. Начиная с Visual Studio 2010 (PowerTools extensions, built-in in VS2012) появилась возможность закрепить вкладки (pinned tab). Но закрепляются вкладки с настройками по умолчанию в том же ряду, и когда много вкладок то не удобно. Куда лучше чтобы закрепленные вкладки были в другом ряду. Итак ставим галочку в опции Show pinned tab on separate row как на картинке:
Untitled4
И вуаля, получаем закрепленные вкладки в отдельном ряду:
Untitled5

Navigate To

Полезная функция, которая появилась достаточно давно. Тем не менее часто встречаю коллег которые о ней не знают вообще, либо знают только аналог решарпера или CodeRush. В решарпере это аналог Resharper > Navigate > Go to symbol. Работает Navigate To достаточно быстро и в 90% случаев предпочитаю пользоваться именно ней, а не другими аналогами. Тут все просто – жмем Ctrl+, и появляется диалог, с которым можно работать даже без мышки:
Untitled3

Navigate Forward и Navigate Backward

Всем видимо знакомы и многими недооцениваются. Вот такие две кнопки на стандартном тулбаре:
Untitled6
Работают они отлично. Но проблема в том что пользоваться не удобно. Тянутся к ним каждый раз мышкой долго и нудно и неудобно. А по умолчанию на них назначены отпугивающие 3 или 4-х клавишные комбинации, что не походит для таких часто используемых функций. Тут все просто. Нужно переназначить комбинации под себя, чтобы было удобно пользоваться этой функцией. На Navigate Forward я у себя ставлю Alt + Right Arrow, а Navigate Backward – Alt + Left Arrow:
image
Из встроенных возможностей студии есть еще Go to definition (F12) и Find all references. Тут признаюсь первую я использую, а вот Find all references – нет, использую альтернативы от Resharper и CodeRush

Закладки (Bookmarks)

Есть встроенный механизм закладок. Можно отобразить панель закладок View > Other Windows > Bookmarks Windows (Ctrl + W, Ctrl  + B) как из меню так и с помощью клавиатуры. И настроить под себя для удобства сочетание клавиш, так как стандартные могут показаться неудобными.
image
Например перенастроить себе создание закладки с сочетания Ctrl+K, Ctrl+K на другое можно поискав в настройках клавиатуры команду  Edit.ToggleBookmark, а переход следующая/предыдущая закладка команды - Edit.NextBookmark, Edit.PreviousBookmark
image
Во многих случая стандартных закладок хватает. Но хоть я и закладками пользуюсь редко – предпочитаю использовать закладки от решарпера (Resharper > Navigate > Bookmarks)
image
Позитивчиком закладок от решарпер является то, что комбинацией клавиш ( я для себя переназначил Ctrl+`, Resharper.Resharper_Bookmarks_BookmarksMenu) выбрасывается контекстное меню с закладками и не отрываясь от клавиатуры можно по ним перейти. Ну и можно отдельное комбинацией Ctrl + Shift + <цифра> сделать закладку “быстрого вызова”. Правда как переназначить комбинацию я так и не нашел а комбинация Ctrl+Shift+0 у меня не работает почему-то.

Навигация по файлу

Для навигации по фалу я использую расширение Vs10x Code Map, так как стандартные два выпадающих бокс в окне редактора я всегда находил неудобными.
С CodeMap слева от редактора кода появляется панель с элементами класса в том порядке, в котором они расположены в коде. На скриншоте ниже эта  панель в темном цвете с редактором оформленным в темных цветах
image

Комментариев нет:

Отправить комментарий