fbpx
devstyle.pl - Blog dla każdego programisty
devstyle.pl - Blog dla każdego programisty
7 minut

11 brudnych sekretów Visual Studio


30.03.2008

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!

0 0 votes
Article Rating
14 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
sebcyg
15 years ago

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;)

Polishwords
15 years ago

Twój blog został dodany do listy Polishwords. Gratulacje!

Procent
15 years ago

@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!

Nazgul
15 years ago

Ciekawy wpis, niektórych ułatwień nie znałem. Tak dalej :)

Jacek Ciereszko
15 years ago

Nice, szukałem jakiś czas temu numeru 2, choć 7 jest najlepszy, ctrl+tab już mnie dobija, za dużo zasłania.

Michal
Michal
15 years ago

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

Sebastian Kamisinski
Sebastian Kamisinski
15 years ago

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

Nazgul
15 years ago

Masz kartę ati i włączone hotkeye w CCC ;)

Procent
15 years ago

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:).

Pan Nickt :)
Pan Nickt :)
15 years ago

@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.

PiotrB
15 years ago

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ć.

Wojtek
Wojtek
15 years ago

Ja często używam też CTRL + m + o
Pozdrawiam

dario-g
13 years ago

Szkoda, że w Immediate Window nie da się "rozwijać" expressions. :(

Tomek
Tomek
13 years ago

no niektórych nieznałem… Immediate Window rządzi !!!

Kurs Gita

Zaawansowany frontend

Szkolenie z Testów

Szkolenie z baz danych

Książka

Zobacz również