Visual Studio – skróty klawiszowe, które używam

Większość programistów w pewnym momencie odkrywa, że ich IDE posiada skróty klawiszowe i dzięki używaniu ich może przyspieszyć swoją pracę.  Inni dowiadują się, że kodowanie przy pomocy myszki jest raczej objawem braku profesjonalizmu. Poniżej lista skrótów klawiszowych, których używam codziennie w mojej pracy. Cześć skrótów jest oferowana przez ReSharpera ale w większość są to skróty, które oferuje Visual Studio.

Lista jest dynamiczna. Jeśli coś odkrywam i to się sprawdza od razu wstawiam na listę. Oczywiście w VS jest więcej skrótów ale stron poświęconych skrótom w VS jest masa. Mi chodzi tylko o takie skróty, których naprawdę się używa i widać w nich potencjał do ułatwiania sobie pracy.

Jeśli chodzi o skróty ReSharpera to jest jeden najważniejszy czyli Alt + Enter, tym skrótem zrobimy wszystko i nawet trochę więcej. Wiele czynności można przy pomocy ReSharpera zrobić jego skrótami ale głównie i tak wszystko można zrobić przy pomocy Alt + Enter więc polecam korzystać z tego skrótu zawsze gdy widzimy żarówkę po lewej stronie.

 

Poniżej lista moich skrótów, których używam codziennie.

Ctrl + F5 == skrót dla VS. Dzięki niemu można odpalić aplikację z pominięciem debugera. Efekt jest taki jak byśmy odpalili aplikację z zewnątrz. Przydaje się to na przykład do testowania klientów serwerowych. Jednego odpalamy w tle a drugiego normalnie, dzieki temu możemy zasymyulować działanie kliku aplikacji bez potrzeby uciążliwego chodzenia po katalogach.

F5 == jest to skrót VS. Jest to dość oczywisty skrót ale miałem napisać o tych, których używam codziennie więc o to i on. Skrót służy to debugowania aplikacji.

Shift + F5 = skrót VS. Jest to przydatny skrót pozwalający wyjść z trybu debugowania. Jest on niezbędny aby było można wyeliminować myszkę z większość czynności programistycznych.

Ctrl + strzałki w lewo lub prawo == skrót ten jest globalny dla wszystkich komputerów jednak na tyle ważny, że warto go stosować. Pozwala w linij przeskakiwać przez całe słowa a nie przez pojedyncze literki, tak jak by to miało miejsce podczas naciskania strzałek. Zawsze po naciśnięciu Ctrl + strzałka w bok przechodzimy na początek następnego słowa. W VS można również używać tego skrótu z shift-em. Daje to możliwość zaznaczania całych słów i późniejszej obróbki ich.

Ctrl + m + m  == zwijanie i rozwijanie metod. Efektem jest zwinięcie metody, klasy lub komentarza do jednego wiersza. Skrót ten jest dostępny w Visual Studio. Można go używać gdziekolwiek w metodzie, klasie lub w komentarzu. Pozwala on szybko poruszać się po klasie. Bardzo przydatne.

Shit + Alt + Enter == wejście, wyjście z widoku pełno ekranowego. Używam zawsze gdy trzeba się skupić nad czymś trudnym, analiza kodu, refaktoryzacja. Skrót jest dostępny w Visual studio. Używanie trybu pełno ekranowego pozwala również szybciej nauczyć się skrótów, bo nic nie rozprasza, nie zachęca do używania myszki.

Alt + strzałka w dół lub w górę == skrót dostępnych dzięki ReSharperow-i. Pozwala na przeskakiwanie od metody do metody z pominięciem ciała metody. Doskonałe rozwiązanie gdy chcemy przejść do metody wyżej lub niżej. Skrót ten również iteruje po właściwościach klasy.

Ctrl + TAB  == przechodzenie między zakładkami. Tak naprawdę  jest to podstawowy skrót. Działa świetnie i pozwala przechodzić pomiędzy zakładkami i również pomiędzy otwartymi oknami np: okno testów, solution explorer i inne.

UWAGA: działa doskonale tylko przy małej liczbie zakładek. W doświadczenia powiem, że maks do 5 zakładek otwartych. Jeśli jest więcej to przestaje to być sensowne.

Dodatkowy opis od Sławka (dzięki za info)

Przy używaniu CTRL + TAB nie puszczaj CTRL i używąc strzałek można poruszać się po liście aktualnie otworzonych okien, czyli:

  1.  Wciśnij CTRL i trzymaj
  2.  Wcniśnij TAB i puść (cały czas trzymaj CTRL)
  3. Używają strzałem poruszaj się po liście okien (po lewej stronie okna VS takie jak Solution Explorer, po prawej stronie okna z edytowanymi plikami)
  4. Po ustawieniu kursora na odpowiednią pozycję puść CTRL, zostaniesz przeniesiony na wybrane okno.

Ctrl + K +K == wstawienie, likwidacja zakładki. Używam ich bardzo często.

Zakładki pozwalają mi oderwać się na chwilę od danej części kodu i szybko wrócić tam gdzie skończyłem. Co może nas oderwać od pracy? Koledzy, telefony i meile. Jeszcze za czasów VS 2008, gdy nie było skrótów klawiszowych do zakładek i tak ich używałem. Warto i gorąco polecam. Zakładki można nawet nazywać(F2) jeśli ktoś ma potrzebę.

Ctrl + K + Ctrl + W == otwieramy okno zakładek z, którego możemy wybrać interesującą nas zakładkę. F2 daje możliwość zmiany nazwy.

Ctrl + , == bardzo ważny skrót. Pozwala uniknąć klikania i używania okna solution explorer. Po naciśnięciu dostajemy się na pasek, w którym możemy pisać dowolny tekst. W liście wyników ukażą się pliki, które zawierają ten tekst. Skrót jest dostępny w Visual studio.

Ctrl + T == skrót dostępnych dzięki ReSharperow-i. Jest on tożsamy ze skrótem Ctrl + ,  z visual studio. Różnią się tylko tym, że ReSharper sortuje wyniki po częstość odwiedzin pliku, więc zawsze lista jest taką jaką się spodziewamy.

Alt + F12 == Peek Definition. W starszych wersjach VS aby wejść głąb klasy należało nacisnąć F12, dzięki temu mogliśmy dostać się do definicji danego obiektu. Minusem tego rozwiązania było to, że zawsze otwierał nową zakładkę co po jakimś czasie stworzyło mocny bałagan.

Nowością z VS 2012 lub 2013 jest właśnie Peek Definition. Otwiera się wtedy okno w oknie z definicją klasy, po analizie możemy zamknąć okno i pracować dalej. Bardzo wygodnie.

Ctrl + Shit + a == tworzenie nowego pliku. Otwiera okno „Add New Item”. Przydatny skrót na pewno dla każdego. Szybkie tworzenie nowych plików jest niezbędne aby zyskać sporo na czasie. Pewnym minusem jest, że plik jest tworzony w tej lokalizacji w której obecnie jesteśmy, jednak w 80% przypadków się to sprawdza.

Ctrl + u + d == uruchamianie testów jednostkowych w trybie Debug. To jest skrót ReSharpera i jego nakładki do testów NUnit-a. Gdy pisze testy lubię uruchamiać testy a przechodzenie między oknami i wybieranie odpowiednich przycisków jest dość męczące.

Ctrl + u + r == uruchamianie testów jednostkowych w trybie Run. Dzięki temu przenosimy się do okna przeglądania testów i w nim pozostajemy dzięki temu możemy zobaczyć jaki wyszedł błąd lub uruchomić inne testy. Bardzo wygodne.

Ostatnie dwa przydają się do pracy nad kodem.

Ctrl + d == duplikowanie wierszy. Skrót ReSharpera Bardzo długo nie używałem tego skrótu i to był mój błąd. Zamiast tego używałem Shift + End, Ctrl + c , Ctrl + v. Sporo tego. Polecam więc Ctrl +d

Ctrl + Alt + strzałki góra/dół == przesuwanie całej linj w górę lub w doł. Skrót ReSharpera. Uzywam go tylko do przenoszenia małych części kodu w obrębie metody. Tym skrótem można również przenosić większe bloki kodu jednak do takich zadań używam już kopiuj/wklej.

Używanie skrótów zdecydowanie podnosi szybkość kodowania. Wpływa również na szybkość szukania błędów w kodzie. Zrezygnować z myszki jednak nie można i nie warto. Są jednak czynności gdy myszką będzie szybciej.

Nigdy skrótów nie uczę się na pamięć. Gdy jest skrót, który chce używać zapisuje go na kartce i gdy przychodzi czas używam go lub patrze na kartkę jaki był. Te które używam często same zostają w głowie i stąd wiem, które są najważniejsze.

 UPDATE 16 sierpnia 2015

Ciekawy wpis o skrótach klawiszowych (w połączaniu z ReSharperem) pojawił się ostatnio na tym blogu:

http://www.pzielinski.com/?p=2719 – gorąco polecam

 

UPDATE 19 sierpnia 2015

Dodatkowe skróty, które również się przydają szczególe gdy klasy są duże:

Ctrl + m + a == zwijanie kodu. Zwija cały kod aż do definicji. Jeśli mamy dużą klasę to rozpoczęcie pracy od zwinięcia kodu jest dobrą praktyką.

Ctrl + m + m == rozwinięcie kodu. W zależności czy jesteśmy na klasie czy na metodzie to rozwinie się jedna sekcja.

 

 

 

15 przemyśleń nt. „Visual Studio – skróty klawiszowe, które używam

  1. Jeszcze szybciej między oknami mozna przechodzic przez Ctrl + W, Ctrl + …
    E – errors
    S – Solution explorer
    B – bookmarks
    O – Output
    itd.

  2. Jeżeli pracujesz nad przyspieszeniem edycji kodu polecam doinstalować darmowy extension VsVim. Opanowanie pracy z vim’em wymaga trochę czasu i na początku poczujesz spadek wydajności pewnie tak około 30-50% ale gdy wpadniesz w nawyk to czas zainwestowany w naukę zwróci się wielokrotnie.

    Wg mnie nie ma lepszego połączenia: VS + Resharper + VsVim

      1. Tak jest. Co prawda to dosyć świeża sprawa i dopiero nabieram płynności. Przekonał mnie kolega z team’u, który naprawdę wymiata i jest żywą reklamą takiego rozwiązania:). Gość naprawdę nie potrzebuje myszki.

        Poza tym tryb Vim można sobie dograć do innych tool’i i dostawać ten sam user exeperience już na starcie. Ja używam jeszcze w Notepad++ i przymierzam się do Chrome’a (ale narazie jestem sceptyczny).

        1. Prawdziwy Vi Master. Notepad++ spróbuje. Do przegladarki to już chyba fanatyzm ale dobrze wiedzieć, że istnieje taki dodatek : )

  3. Przy używaniu CTRL + TAB nie puszczaj CTRL i używąc strzałek można poruszać się po liście aktualnie otworzonych okien, czyli:
    #1. Wciśnij CTRL i trzymaj
    #2. Wcniśnij TAB i puść (cały czas trzymaj CTRL)
    #3. Używają strzałem poruszaj się po liście okien (po lewej stronie okna VS takie jak Solution Explorer, po prawej stronie okna z edytowanymi plikami)
    #4. Po ustawieniu kursora na odpowiednią pozycję puść CTRL, zostaniesz przeniesiony na wybrane okno.
    Miłego używania :)

    1. Hej, dzięki na info. Tak dokładnie o takie używanie tego skrótu mi chodziło. Dzięki temu można szybko przejść do okna errorów, bo nie zawsze focus okna ustawia się do tego okna po zrobieniu builda

  4. Czy do szukania plików nie lepiej używać r# ctrl + shift + n? A do szukania metod etc ctrl + n :)

    1. Zgadza się istnieje taki skrót ale nie używam go. Spróbuje w poniedziałek zobaczyć jak się z tym żyje : ) Dzięki za info

  5. Teraz dopiero widzę, że całe moje dotychczasowe życie było tylko nędzną wegetacją.
    Jak ja mogłem żyć bez Ctrl + Tab i Ctrl + , ?

    1. Ja sobie cenię jeszcze resharperowy CTRL + W, czyli zaznaczanie progresywne, tym bardziej, że działa w C#, js i HTML

  6. Pingback: dotnetomaniak.pl

Możliwość komentowania jest wyłączona.