Intellij IDEA 단축키

산뜻한 월요일 출근길 아침에 한통의 메시지를 받았다.

얼마전에 요런 이벤트에 응모했는데

오오…? 당첨된 것이다. 신가하게 개발 서적 혹은 강의 관련된 이벤트에 자주 당첨되는것 같다. 자세히 보니 5명 뽑는 이벤트에 15명이 지원한건가…
그래도 당첨됐다는 사실에 기뻤다!
평소에 자주보는 페이지이기도 하고 위의 IntelliJ 강의는 처음 나왔을 때, 들어보고 싶었다는 생각이 있었지만 공부할게 너무 많아 미뤄놨었는데 마침 당첨된 기념으로 월요일 퇴근 후 바로 끝장을 보았다.

어디에 도움이 될까?

대부분의 개발자는 자신만의 개발 환경을 구축해서 사용한다. 예를 들면, 자신만의 dot file 들을 만들어 사용한다던가 IDEA의 세팅들을 커스터마이징해서 사용하는 것들이 있다.
나도 처음에는 IDEA의 “자동 정렬”과 같은 가장 간단한 단축키부터 사용하기 시작해 현재는 IntelliJ에 IdeaVim 플러그인 설치해서 사용할 정도로 나만의 개발환경을 구축하는데 적지 않은 시간을 쏟았다.

처음에는 물론 사용하기 쉽지 않다. 그러나 적응하기 시작하는 순간 엄청난 생산성의 향상을 가져온다. 손이 마우스로 가지 않고 vim을 사용하면 심지어 방향키 까지도 손이 가지 않는다.

이런 개발 환경을 구축하는데 있어 한가지 문제가 있다. 어떤 기능들이 있는지 알아야 찾아서 사용할텐데 어떤 기능들이 있는지 조차 파악하기가 마냥 쉬운게 아니라는 것이다. 대부분 내가 모르는 기능을 누군가 사용할때는 “이런 기능이 있었어?” 라는 반응이 많은데 이게 문제다! 한 번 사용하면 계속 사용하게 되는데 처음 사용하기가 어려운 이유이기도 하다.

다행히도 위의 강의는 이런 문제를 해소해준다! IntelliJ를 처음 사용하는 사람도! 이미 사용하고 있던 사람도! 모두 도움이 될 것이다. 어떤 기능이 있는지, 해당 기능을 어떤 단축키를 통해 사용할 수 있는지 강의를 보고 배워보자!

강의는 인프런을 통해서 수강할 수 있다. -> IntelliJ를 시작하는 분들을 위한 가이드

강의를 수강하며 새롭게 알게된 기능중 라인 합치기의 경우 Vim의 Shift + J 단축키를 이용해 사용하고 있었는데, 단순히 두 라인을 합쳐주는 기능하는 걸 넘어서, IntelliJ의 Shift + Cmd + J는 문자열을 합칠 경우 더 유용하게 사용 가능했다. 그래서 Shift + Cmd + J를 Shift + J로 변경해버렸다!

단축키

수강하며 실습해 볼 수 있는 단축키 리스트

  • 코드 템플릿
    메인 메소드 : psvm
    System.out.println() : sout
  • 실행환경 실행
    현재 포커스 : Ctrl + Shift + R
    이전 실행 : Ctrl + R
  • 코드 Edit
    메인 메소드 실행 :
    라인 복사 : Cmd + D
    라인 삭제 : Cmd + 백스페이스
    라인 합치기 : Ctrl + Shift + J
    라인 이동 : Shfit + Option + 위 (아래)
    구문 이동 : Shift + Cmd + 위 (아래)
    Element 단위 이동 : Option + Shift + Cmd + 좌 (우)
    인자값 즉시 보기 : Cmd + P
    코드 구현부 즉시 보기 : Option + Space
    Doc 즉시 보기 : F1
  • 포커스
    단어별 이동 : Option + <, >
    단어별 선택 : Shift + Option + <, >
    라인 첫/끝 이동 : Fn + <, >
    라인 전체 선택 : Shift + Cmd + <, > / Shift + Fn + <, >
    Page Up/Down : Fn + 위/아래
    포커스 범위 한 단계씩 늘리기 : Option + 위 (아래)
    포커스 뒤로/앞으로 가기 : Cmd + [, ]
    멀티 포커스 : Option + Option + 아래
    오류 라인 자동 포커스 : F2
  • 검색
    현재 파일에서 검색 : Cmd + F
    현재 파일에서 교체 : Cmd + R
    전체에서 검색 : Shift + Cmd + F
    전체에서 교체 : Shift + Cmd + R
    정규표현식으로 검색, 교체 : Regex 체크
    파일 검색 : Shift + Cmd + O
    메소드 검색 : Option + Cmd + O
    Action 검색 : Shift + Cmd + A
    최근 열었던 파일 목록 보기 : Cmd + E
    최근 수정했던 파일 목록 보기 : Shift + Cmd + E
  • 자동완성
    스마트 자동 완성 : Shift + Ctrl + Space
    스태틱 메소드 자동 완성 : Ctrl + Space + Space
    Getter/Setter/생성자 자동 완성 : Cmd + N
    Override 메소드 자동완성 : Ctrl + I
    Live Template 목록 보기 : Cmd + J
  • 리팩토링
    변수 추출하기 : Cmd + Option + V
    파라미터 추출하기 : Cmd + Option + P
    메소드 추출하기 : Cmd + Option + M
    이너클래스 추출하기 : F6
    이름 일괄 변경하기 : Shift + F6
    타입 일괄 변경하기 : Shift + Cmd + F6
    Import 정리하기 : Ctrl + Option + O
    코드 자동 정렬하기 : Cmd + Option + L
  • 디버깅
    Debug 모드로 실행하기 (현재 위치의 메소드) : Shift + Ctrl + D
    Debug 모드로 실행하기 (이전에 실행한 메소드) : Ctrl + D
    Resume (다음 브레이크 포인트로 이동하기) : Cmd + Option + R
    Step Over (현재 브레이크에서 다음 한줄로 이동하기) : F8
    Step Into (현재 브레이크의 다음 메소드로 이동) : F7
    Step Out (현재 메소드의 밖으로 이동) : Shift + F8
    Evaluate Expression (브레이크된 상태에서 코드 사용하기) : Option + F8
    Watch (브레이크 이후의 코드 변경 확인하기) : 단축키 X
  • Git
    Git View On : Cmd + 9
    Git Option Popup : Ctrl + V
    Git History : Ctrl + V => 4
    Branch : Ctrl + V => 7
    Commit : Cmd + K
    Push : Shift + Cmd + K
    Pull : Shift + Cmd + A => git pull
    Github 연동하기 : Shift + Cmd + A => share GitHub