안녕하세요!
비주얼 스튜디오 (2017, 커뮤니티 버전) 에서 유용하게 사용할 수 있는 단축키 10가지를 알려 드립니다.
개발 고수분들은 뒤로가기를 눌러주시고 ^^;;
비주얼 스튜디오에 익숙지 않은 입문자 분들께 도움되었으면 합니다.
(1) 함수 정의로 이동하기
>> Ctrl + 마우스 클릭 or F12
작은 프로그램을 만들 때는 크게 필요성을 못 느낄 수도 있지만,
프로그램 규모가 조금만 커져도 코드 간의 이동 및 일괄 편집 작업은 단축키 없이는 굉장히 귀찮습니다.
이미 만들어둔 함수가 어떻게 생겼는지, 전달 인자는 어떤 값을 받고 역할은 무엇인지, 함수 내로 이동하여 직접 수정을 해야 할 경우에 한 번에 그 함수로 이동하기 위한 단축키입니다.
정의부로 이동을 하려는 함수 (혹은 변수) 를 키보드 Ctrl 키를 누른 상태에서 마우스 클릭을 하거나, 단순히 키보드 F12 를 누르시면 됩니다.
(2) 뒤로 탐색, 앞으로 탐색
>> Ctrl + (-), Ctrl + Shift + (-)
위 설명 (1) 에서 함수로 이동하는 방법은 설명 드렸지요. 그런데 함수가 1 depth 가 아니라 함수 밑에 함수, 그거 밑에 또다른 함수, 그 밑에 또... 함수를 몇 단계 밑으로 들어가다 보면, 어... 이 함수 내가 어디서 호출했더라....??? 어느 코드에서 내가 여기로 들어왔지...? 다시 돌아가자! 하실 때가 있을 겁니다.
그럴 땐 기억을 되살리셔서 처음 호출했던 파일을 Visual Studio 내에 열려 있는 Tab 들 사이에서 찾으실 수도 있지만, 그러지 마시고...
Ctrl 키를 누른 상태에서 - 를 누르시면 바로 한단계씩 빠져나오게 됩니다.
근데 나왔다가 어!! 다시 들어갈래!! 하시면 Ctrl 키와 Shift 키를 누른 상태에서 - 누르시면 됩니다.
키가 맘에 안드시는 분은 이클립스 (또다른 개발툴) 에서 사용하는 방식인 Alt 왼쪽 방향키, Alt 오른쪽 방향키 등으로 변경해서 사용하셔도 좋습니다. (단축키 설정은 맨 밑에 10번에서 설명 드리겠습니다)
(3) 문장 위아래 위치 바꾸기
>> Alt + 방향키
문장 위치를 변경하실 때가 있습니다. 여러 함수를 사용하면서 "동작 순서가 바껴야 겠는걸..? 이 동작을 먼저 해야겠네?" 하실 때가 있을 텐데요, 그럴 땐 그 줄을 블럭 설정하시고 잘라내기 하셔서 원하는 위치에 갖다 놓으시는 방법이 일반적이지만, Alt 키를 누르신 상태에서 그냥 방향키 위 아래로 바꿔보시면 순식간에 위치를 변경할 수 있습니다. 종종 쓰입니다 ^^
그리고, Alt 얘기 나온 김에, 일반적으로 블럭 설정을 하면 문장 길이만큼 서로 다르게 블럭 지정이 되는데, Alt 키를 누른 상태에서는 직사각형 형태로, 문장의 길이 상관 없이 사용자가 지정하는 범위가 사각형 형태로 지정됩니다. 아래 이미지처럼 말이죠.
그리고 아래 예제처럼 일괄적으로 동일한 문장을 한 방에 바꾸실 필요가 있을 때, Alt 를 통해 영역 지정하시고 키보드 입력을 하시면 동시에 여러 줄에 해당하는 문장이 바뀌도록 할 수가 있어요 .
(4) 문자열 찾기, 한번에 바꾸기
>> Ctrl + F
이건 꼭 필요하지요. 그 변수가 어딨더라, 그 함수가 어딨더라, 그 함수 이름 잘 기억 안나는데.. Get.. 뭐더라... Search.. 뭐더라.. 할 때!
찾기 기능을 통해 쉽게 찾으실 수 있습니다. Ctrl + F 를 누르면 오른쪽 상단에 찾기 다이얼로그가 나타나구요, 찾으시려는 글자를 입력하시면 그 글자와 매칭되는 녀석들을 쉽게 찾으실 수 있습니다. 그리고 찾으신 문자를 다른 문자로 한 번에 바꾸실 수도 있어요!
만약 "저희나라는..." 라고 입력한 문자를 일괄적으로 바꾸려면 다이얼로그 맨 왼쪽의 아래 방향 버튼을 클릭하시고,
찾기... : "저희나라",
바꾸기... : "우리나라"
이렇게 입력하시고 맨 오른쪽 버튼을 클릭하시면 한방에 바뀐답니다.
(5) 문자열 모조리 찾기
>> Ctrl + Shift + F
위 (4)번에서 설명드린 방식은 솔루션이건 현재 프로젝트건 열려 있는 문서들이건 간에 하나씩 찾아 나가는 방식인데요,
이렇게 보지 않고 입력한 문자와 매칭되는 모든 문장들을 일괄적으로 좍! 찾으시려면 Ctrl + Shift + F 를 사용하시면 됩니다.
그러면 찾아진 문자들은 찾기 결과 창에 파일명(경로)과 함께 표시가 되어 보기가 편합니다.
그리고 클릭을 통해 그 위치로 바로 이동을 할 수도 있어요 !
(6) 함수명 쉽게 변경하기
>> Ctrl + R + R
개발을 하실 때 작명이 가장 힘들지요. 함수나 변수명을 지을 때 참 많은 고민을 해야 하는데, 이전에 지었던 함수명이 마음에 안든다면 바꿔야겠죠?
그럴 때 Ctrl F 를 통해 찾은 다음 바꿀 수도 있고, Ctrl Shift F 를 통해 바꿀 수도 있습니다.
하지만 이는 문자열을 바꾸는 방식이라서, 어쩌면 함수명 외에도 그냥 사용하려고 했던 String 문자열 자체도 실수로 바꾸게 될 수가 있어요.
만약 함수명이 end() 이라고 합시다. 근데 저는 이 이름을 finish() 으로 바꾸고 싶어요. 이 때 Ctrl F 를 통해 'end' 을 'finish' 으로 바꿨다가는, 다른 데서 사용 중인 send() 라는 함수마저 sfinish() 로 바뀔 수가 있는 것이죠.
이 때는 Ctrl R R 을 통해 Rename 을 해주시면 쉽게 해결 됩니다.
(7) 자동 정렬하기
>> Ctrl + K + F
작명 만큼이나 중요한 것이 가독성이지요. 특히 줄바꿈과 indent !!
if (A) {
...
}
이것과
if (A)
{
...
}
이것은 흔히 개발자들이 스타일을 논할 때 자주 나오는 예입니다 ㅎㅎ
근데 괄호의 줄바꿈 말고도 앞 들여쓰기가 엉망인 경우 코드 보기가 너무 힘들어서, 습관적으로 indent 를 맞추지 않는 경우 나중에 일일이 indent 를 바꿔주어야 하게 될 수도 있어요. (나중에 이 코드를 볼 누군가를 위해?)
이 때는 범위를 지정하고 나서 Ctrl + K + F 를 해주시면 한방에 들여쓰기를 딱 맞춰서 예쁘게 해준답니다.
(8) 코드 자동 완성
>> Tab (혹은 Tab 2번)
if 나 for 나 while 등과 같은 조건 / 분기문은 기본적으로 맞춰줘야 하는 포맷이 있어요.
근데 일일이 작성하기가 ~~ 으~~ 귀찮을 때가 있지요?
그럴 땐 if, for, while 등 까지만 입력하시고 tab 을 탁! 눌러주시면 (언어에 따라 2번 눌러주는 경우도 있어요) 한방에 포맷이 완성됩니다.
switch case, try catch 를 사용하실 때에도 유용할 거에요! ^^
(9) 주석 설정 및 해제
>> Ctrl + K + C / Ctrl + K + U
주석은 /* */ 혹은 // 로 설정하지요.
근데 문장이 길다거나.. 파일 전체를 주석 처리 해야 한다거나? 그럼 /* */ 로 한다고 해도 파일 맨 시작 부분과 맨 끝부분을 방문해야 하는 불편함이 있습니다. 이 때는 그냥 Ctrl A 를 통해 전체 설정하시고 (혹은 원하시는 만큼만) Ctrl K C 를 하시면 한방에 주석 처리가 됩니다. 거꾸로 주석 해제를 하실 때에는 Ctrl K U 를 하시면 (주석 설정된 영역이 지정되어 있어야겠죠) 한방에 주석 해제가 됩니다.
(10) 모든 참조 찾기
>> Ctrl + Shift + G (사용자 설정)
마지막으로, 어느 함수를 참조하는 곳이 어디 어디 인지 확인해야 할 때가 굉장히 많아요.
함수 내용을 좀 바꿔야 겠는데 이미 이 함수를 사용하고 있는 곳이 있다면 영향을 미치는지 봐야겠죠?
만약 1군데에서만 참조한다면 크게 걱정할 필요 없이 원하시는대로 바꾸면 되겠지만,
참조하는 곳이 100군데다.. 이러면 얘기가 달랍니다 ㅎㅎ 단순한 get / set 함수면 모르겠지만 그게 아니라면.....
그래서 일단은 이 함수(혹은 변수) 내용을 바꾸기 전에 어디서 참조를 하는지를 쉽게 확인해보자구요!
버전에 따라 Ctrl K R 로 단축키가 이미 지정된 경우도 있지만 비주얼 스튜디오 커뮤니티 2017 에서는 지정이 안되어 있어요
이 때는 옵션을 통해서 단축키 설정을 직접 하실 수가 있답니다.
상단 메뉴 : 도구 > 옵션
옵션 다이알로그 내 : 환경 > 키보드
이렇게 진입을 하신 후 원하는 동작 (여기서는 '모든참조찾기') 을 입력합니다.
그러고 나서 원하시는 단축키, Ctrl Shift G 등으로 입력하신 후 할당 버튼을 누르시면 이후부터는 그 단축키로 기능을 사용하실 수 있게 됩니다.
주의하실 점은, 다른 단축키과 겹치는 경우가 있을 수 있으니, 겹치는 기능의 단축키를 제거하거나 아니면 겹치지 않는 단축키로 사용하셔야 해요!
비주얼 스튜디오로 개발하시는 분들께 작은 도움 되면 좋겠습니다 ^^
이 외에도 '이건 왜 소개가 안되어 있지?? 꼭 필요한데?' 하는 단축키 있으면 같이 공유해주셔도 좋겠어요~~!!
아래는 코드 실습과 함께 10가지 단축키를 설명드리는 영상입니다 ^^
감사합니다.
Fira Code 도 추천
소문자 L, 대문자 I, 바 |, 숫자 1 의 모호함...
감사합니다~
주석 설정/해제는 한 손으로(왼손) 할 수 없는 게 불편해 안 써왔는데 단축키 변경을 하면 되겠네요~
저는 Ctrl + F 보다 Ctrl + I 를 더 많이 써요
(자 이제.. VIM , EMACS 선수들..나올때가 됐는데..?)
그런데 비주얼 스튜디오 코드에서도 단축키가 동일한가요?
뒤로 탐색, 앞으로 탐색은 Alt 왼쪽방향키 / 오른쪽방향키로 설정되어 있고, Rename 은 Ctrl + F2 로 되어 있네요
그 외에는 10번 빼고는 제가 설명 드린 부분에 대해서 모두 동일하게 사용 가능해 보입니다 ^^
명령어가 실행될 조건을 설정이 가능해서 훨씬 더 개인에 맞게 효율적으로 커스텀이 가능하죵
ctrl + +, ctrl + -는 마우스에서 손을떼야해서 한쪽손으로 하는걸 선호하는데 아주 편합니다.
암튼 정리해 주셔서 감사합니다.