11 brudnych sekretów Visual Studio

14

Podobnych zestawień można znaleźć w sieci całe mnóstwo. Jednakowoż dorzucę swoje 11 kopiejek w postaci 11 punktów, o których dowiadywałem się z czasem i częstokroć niespodziewanie. Dlaczego 11? Bo nie mogłem się zdecydować na wykreślenie któregokolwiek z nich z listy. Poza tym Rammstein na każdym albumie zamieszcza 11 piosenek, które to stwierdzenie poddaje w wątpliwość sens jakichkolwiek związków przyczynowo-skutkowych zamieszczonych na niniejszym blogu.
Ale nieważne. Tak czy siak bez znajomości tej złotej jedenastki i tak bardzo wygodnie korzystało mi się z VS, jednak teraz nie potrafię sobie wyobrazić jak to możliwe. Kolejność losowa:


1) Przerwanie budowania solucji


Przy pisaniu dużego systemu solucja potrafi rozrosnąć się do niewygodnych rozmiarów. Można ją dzielić, można korzystać z własnych skryptów MSBuild czy NAnt… Jednak gdy w VS wciskamy z przyzwyczajenia CTRL+SHIFT+B i już na początku wiemy, że build się nie powiedzie – możemy go zatrzymać. Zawsze to kilka minut do przodu…
Podczas kompilacji w menu Build pojawia się opcja Cancel:


2) Edycja dwóch części jednego dokumentu – jednocześnie


VS (jak zresztą masa innych aplikacji, więc obejdzie się bez zbędnych pokłonów) oferuje możliwość ułożenia okien z kodem w grupach – obok siebie lub jedno pod drugim. Jednak oprócz tego mamy możliwość podobnego rozdziału tego samego dokumentu! A to za sprawą tego małego pypcia:


3) Frywolne dowolne zaznaczanie tekstu


Standardowe zaznaczanie – LMB i jedziemy. Można jednak zaznaczyć tekst niestandardowo, o tak:


Czasami przydatne (na przykład przy usuwaniu kilku modyfikatorów widoczności naraz z pól zadeklarowanych jedno pod drugim). Wystarczy przy zaznaczaniu przytrzymać ALT.


4) Skok do zamykającego/otwierającego nawiasu


Mamy kursor na klamrze otwierającej ciało metody, wciskamy ctrl + } – i kursor skacze na klamrę zamykającą. Powtórzenie czynności – i kursor znowu na klamrze otwierającej. Uwaga: to samo dotyczy wszystkich typów nawiasów jak również #region i #endregion itd.


5) Własne toolbary


Nie jest to nic odkrywczego, jednak chyba programiści zbyt rzadko korzystają z tej funkcjonalności VS. A szkoda, bo można dość znacząco zwiększyć funkcjonalność nawet wersji Express. Przykład:


Jak stworzyć owo cuś? Tools -> Customize -> Toolbars -> New.


6) Nawigacja przez Command Window


Nawet bez “wspomagaczy” takich jak R# czy CodeRush można znacznie usprawnić proces nawigacji między plikami w VS. Wystarczy skorzytać z Command Window. Przykładowa sekwencja klawiszy otwierająca plik Foo.cs: crtl+alt+a open foo.cs, gdzie pierwszy człon to otwarcie okna komend. Nie wygląda to-to super wygodnie, ale jest zdecydowanie szybsze niż szukanie pliku w Solution Explorer. Tym bardziej, że otrzymujemy swego rodzaju Intellisense filtrujące listę dostępnych plików “as-we-type”.
Niestety funkcjonalność ta nie jest dostępna w wersji Express.


7) Nawigacja pomiędzy otwartymi plikami


Pracując z wieloma plikami naraz, jak to się niekiedy zdarza, przełączanie się między nimi możemy uzyskać poprzez klikanie w odpowiednie zakładki myszką (co jest czasochłonne, jak wszystkie operacje gryzoniem) albo przeskakiwanie pomiędzy oknami na modłę alttabową za pomocą ctrl+tab. Ostatnio jednak odkryłem jeszcze jedno rozwiązanie: skrót klawiszowy ctrl+alt+strzałka w dół rozwija listę otwartych plików, po której możemy zgrabnie poruszać się strzałkami! Git:


8) Nawigacja III – Ostatnia Krew – Bookmark Window


W tym punkcie ograniczę się do stwierdzenia: jeżeli nie korzystasz z zakładek w kodzie oferowanych przez VS (lub ich bogatszych odpowiedników z np. CodeRush) – to zacznij. Wspomnę jeszcze, że Bookmark Window to jedyne okno, które sprawdziło się u mnie w trybie “floating“. Polecam wypróbowanie. Howgh!


9) Incremental Search


Po odkryciu tego cudeńka prawie przestałem korzystać ze standardowego wyszukiwania. Lubisz “incremental search”, znane np. z Firefoxa? Oto ono w wersji Visualowej: ctrl+i. Mnie osobiście niesamowicie irytuje przeszukiwanie stron WWW w ten sposób, ale w kodzie sprawdza się znakomicie. Uwaga: nie przeszukuje zwiniętych regionów!


10) Immediate Window


Nie bardzo chce mi się wierzyć, że ktokolwiek z tego nie korzysta, ale na wszelki wypadek… Nie wyobrażam sobie debuggowania programu bez tego magicznego okienka. Popijając frappe zafrasowany dochodzisz do frapującego fragmentu kodu, ściągasz frak i przejmujesz stery za pomocą odpowiednio ustawionego break-point, otwierasz Immediate Window, i… hulaj dusza! Piszesz w nim kod wykonujący obliczenia, zmieniający wartość elementów dostępnych z aktualnego zakresu, wypisujący stan obiektów itd. itp. Jeżeli to znasz – nic nowego nie napiszę. Jeżeli nie znasz – musisz spróbować sam i nawet rzeka mych słów nie jest zdolna opisać eksplozji radości, jaka zaleje twe umęczone ciało po pierwszym zderzeniu z tym narządkiem.


11) Automatyczne dodawanie niezbędnych usings


Visual Studio zdejmuje z naszych barków konieczność pamiętania w jakiej przestrzeni nazw znajduje się dana klasa – teraz wystarczy tylko znać jej nazwę! Po jej napisaniu z prawej strony pojawia się Smart Tag. Rozwinąć go można albo klikając myszą, albo wciskając alt+shift+F10 (w VS 2008 domyslnie także ctrl+. – dzięki sebcyg!). Do wyboru dwie możliwości, jak na załączonym obrazku:



OKej, to tyle z gołego Visual Studio. Chciałbym zobaczyć jakieś komentarze, żeby mieć ogólny ogląd sytuacji czy takie mini-porady się komukolwiek w ogóle przydają? Jeżeli tak – które konkretnie? Aktualnie zaczynam zabawę z różnego rodzaju “wspomagaczami” wydajności i kiedyś-tam-w-przyszłości zamierzam opisać swoje wrażenia, niekiedy na wyraźną prośbę ich autorów. Także – ciąg dalszy nastąpi!

Share.

About Author

Programista, trener, prelegent, pasjonat, blogger. Autor podcasta programistycznego: DevTalk.pl. Jeden z liderów Białostockiej Grupy .NET i współorganizator konferencji Programistok. Od 2008 Microsoft MVP w kategorii .NET. Więcej informacji znajdziesz na stronie O autorze. Napisz do mnie ze strony Kontakt. Dodatkowo: Twitter, Facebook, YouTube.

14 Comments

  1. A propos porady 11 – jest też szybszy skrót klawiaturowy na wywołanie menu Smart Tag, a mianowicie [Ctrl] + [.] (zawsze to 2 klawisze, a nie 3;)

  2. @sebcyg:
    Faktycznie, w VS 2008 został dodany ten skrót – dzięki za info. Swoją drogą zacząłem się teraz zastanawiać dlaczego nigdy nie zmieniłem domyślnego mapowania:).

    @Polishwords:
    Git!

  3. Skrót [Ctrl] + [.] jest cudny (dla wywołania menu Smart Tag). Pozdrawiam

  4. Sebastian Kamisinski on

    crtl+alt+strzalka w dol = monitor do góry nogami :P

  5. Kiedyś również się z czymś takim spotkałem, ale to była chyba jakaś inna kombinacja klawiszy. Wydaje mi się że to było standardowe zachowanie Windows – usunięte w którymś SP dla XP. Jeśli masz SP2 to pewnie jest tak jak pisze Nazgul:).

  6. Pan Nickt :) on

    @Sebastian Kamisinski:

    Ja tak miałem przy grafice na chipset’cie Intel’a.
    W takim wypadku: niebieska ikonka na tray’u, PPM i "Graphincs Options" -> "Hot Keys" -> "Disable".

    Generalnie skróty z VS często gryzą się z różnymi cudacznymi aplikacjami, zwłaszcza extras’ami do grafiki :)

    @procent:
    fajna lista.
    zawsze warto podpatrzeć praktyki innych.
    Ja często używam jeszcze (sprawdźcie sami do czego służą te skórty):
    [b]Ctrl+ALt+L, Ctrl+Shift+C, Ctrl+K+P i Ctrl+K+N[/b] (przy czym zmieniam domyślne ustawienia VS tak aby obejmowały tylko dany dokument), [b]Ctrl+L[/b], a na nazwie metody [b]F12[/b].
    W sumie to jeszcze duużo innych, ale te bardzo często.

  7. A może ktoś z czytelników, albo autor, wie jak zmienić najbardziej wkurzające zachowanie VS.NET:
    Przerywamy na chwilę program (uruchomiony z debugera), żeby zmienić coś w znalezionym pliku, stoimy na tym pliku, a tu bęc, VS skacze do pliku z funkcją main. Ja rozumiem, że gdzieś ten breakpoint trzeba pokazać, ale jak bym tylko chciał np. zmienić literówkę w komentarzu, to potrafi zirytować.

Newsletter: devstyle weekly!
Dołącz do 1000 programistów!
  Zero spamu. Tylko ciekawe treści.
Dzięki za zaufanie!
Do przeczytania w najbliższy piątek!
Niech DEV będzie z Tobą!