꼭 알아야 할 단축키
Windows·Linux·macOS별 단축키, Mac에서 VS Code·IntelliJ 비교와 충돌 진단
먼저 외울 작업
처음에는 Command Palette, Quick Open, 정의·사용처, Rename, Quick Fix를 익힙니다. 파일 탐색기를 반복해서 여는 대신 호출 경로를 따라가며 작은 변경을 완성하는 데 사용합니다. 단축키는 확장을 설치하는 명령이 아닙니다. F12·F2 같은 언어 기능은 해당 언어 서비스가 준비되어야 동작합니다.
운영체제별 기본 단축키
기본 US 키보드 기준이며 확인일은 2026-09-06입니다. →는 앞 조합을 누른 뒤 다음 조합을 누르는 순차 입력입니다. macOS의 F키에는 Fn이 필요할 수 있습니다. Linux의 Peek Definition·Go Back·Format Document는 Windows와 다릅니다.
| 작업·명령 | Windows | Linux | macOS |
|---|---|---|---|
| 명령 찾기 · Command Palette | Ctrl+Shift+P | Ctrl+Shift+P | Cmd+Shift+P |
| 파일 찾기 · Quick Open | Ctrl+P | Ctrl+P | Cmd+P |
| 전체 검색 · Search | Ctrl+Shift+F | Ctrl+Shift+F | Cmd+Shift+F |
| 파일 심볼 · Go to Symbol in Editor | Ctrl+Shift+O | Ctrl+Shift+O | Cmd+Shift+O |
| 프로젝트 심볼 · Go to Symbol in Workspace | Ctrl+T | Ctrl+T | Cmd+T |
| 정의 이동 · Go to Definition | F12 | F12 | F12 |
| 정의 미리 보기 · Peek Definition | Alt+F12 | Ctrl+Shift+F10 | Option+F12 |
| 사용처 · Go to References | Shift+F12 | Shift+F12 | Shift+F12 |
| 이전 위치 · Go Back | Alt+Left | Ctrl+Alt+- | Ctrl+- |
| 심볼 이름 변경 · Rename Symbol | F2 | F2 | F2 |
| 빠른 수정 · Quick Fix | Ctrl+. | Ctrl+. | Cmd+. |
| 다음 진단 · Go to Next Error or Warning | F8 | F8 | F8 |
| 문서 포맷 · Format Document | Shift+Alt+F | Ctrl+Shift+I | Shift+Option+F |
| 줄 이동 · Move Line Up/Down | Alt+Up/Down | Alt+Up/Down | Option+Up/Down |
| 다음 일치 선택 · Add Selection to Next Find Match | Ctrl+D | Ctrl+D | Cmd+D |
| 줄 주석 · Toggle Line Comment | Ctrl+/ | Ctrl+/ | Cmd+/ |
| 문제 목록 · Problems | Ctrl+Shift+M | Ctrl+Shift+M | Cmd+Shift+M |
| 통합 터미널 · Toggle Integrated Terminal | Ctrl+Backtick | Ctrl+Backtick | Ctrl+Backtick |
| 키보드 설정 · Keyboard Shortcuts | Ctrl+K → Ctrl+S | Ctrl+K → Ctrl+S | Cmd+K → Cmd+S |
| 중단점 · Toggle Breakpoint | F9 | F9 | F9 |
| 디버깅 시작·계속 · Start/Continue Debugging | F5 | F5 | F5 |
| 다음 줄 · Step Over | F10 | F10 | F10 |
| 함수 안으로 · Step Into | F11 | F11 | F11 |
| 함수 밖으로 · Step Out | Shift+F11 | Shift+F11 | Shift+F11 |
| 디버깅 종료 · Stop Debugging | Shift+F5 | Shift+F5 | Shift+F5 |
출처: 기본 명령 표, Windows PDF, Linux PDF, macOS PDF.
Mac에서 VS Code와 IntelliJ IDEA 비교
기본 macOS 키맵끼리 비교한 표입니다. IntelliJ IDEA에서 ⌥를 두 번 누른다는 표기는
Option 키를 빠르게 두 번 누른 뒤 두 번째 누름을 유지한 채 화살표 키를 누르는 동작입니다.
VS Code의 Cmd+Option+↑/↓와 이름은 비슷하지만 같은 키 조합은 아닙니다. 언어 서버나
프로젝트 분석이 준비되지 않은 상태에서는 정의 이동·리팩터링 결과가 달라질 수 있습니다.
| 작업 | VS Code (macOS) | IntelliJ IDEA (macOS 기본 키맵) | 메모 |
|---|---|---|---|
| 명령 찾기 | Cmd+Shift+P | Cmd+Shift+A | IntelliJ에서는 Find Action |
| 파일 찾기 | Cmd+P | Cmd+Shift+O | IntelliJ의 Navigate to File |
| 프로젝트 심볼 찾기 | Cmd+T | Cmd+O(클래스) / Cmd+Option+O(심볼) | 대상 종류를 나누어 찾음 |
| 정의로 이동 | F12 | Cmd+B | IntelliJ는 선언 이동 명령 |
| 사용처 찾기 | Shift+F12 | Option+F7 | 의미 기반 사용처 검색 |
| 이름 변경 | F2 | Shift+F6 | 적용 전 preview와 외부 계약을 검토 |
| 빠른 수정·Intention | Cmd+. | Option+Enter | 현재 위치의 제안 목록을 엶 |
| 변수 추출 | Refactor 메뉴에서 Extract Variable | Cmd+Option+V | IntelliJ의 Extract Variable; 선택 표현식을 지역 변수로 분리 |
| 메서드 추출 | Refactor 메뉴에서 Extract Method | Cmd+Option+M | 언어별 제공 여부와 결과를 확인 |
| 문서 포맷 | Shift+Option+F | Cmd+Option+L | 선택한 formatter·code style을 실행 |
| 줄 이동 | Option+↑/↓ | Option+Shift+↑/↓ | IntelliJ는 Shift가 추가됨 |
| 다음 일치 항목 추가 | Cmd+D | Ctrl+G | 심볼 Rename을 대체하지 않음 |
| 위·아래에 커서 추가 | Cmd+Option+↑/↓ | Option을 두 번 누른 채 ↑/↓ | IntelliJ의 Clone Caret Above/Below |
| 선택한 각 줄에 커서 추가 | Shift+Option+I | Option+Shift+G | 여러 줄을 동시에 편집 |
| 줄 주석 | Cmd+/ | Cmd+/ | 동일한 기본 키 |
IntelliJ IDEA의 기본 키맵은 macOS 키맵 문서, 변수 추출의 선택·적용 흐름은 Extract Variable 안내를 기준으로 확인했습니다. IntelliJ IDEA Keymap을 변경했거나 VS Code에 IntelliJ Keymap 확장을 적용했다면 이 표 대신 각 편집기의 Keyboard Shortcuts/Keymap에서 실제 할당을 확인합니다.
동작하지 않는 키 찾기
Keyboard Shortcuts에서 명령을 검색하고 키 기록 버튼으로 실제 입력을 확인합니다. 같은 키의 다른 할당과 when 조건을 비교합니다. 터미널에 초점이 있으면 편집기 명령과 결과가 다를 수 있고, OS·입력기가 키를 먼저 사용할 수도 있습니다. Developer: Toggle Keyboard Shortcuts Troubleshooting으로 입력 해석 로그를 확인한 뒤 다시 꺼 둡니다. 키 바인딩 진단
IntelliJ·Vim 키맵을 사용한다면 이 표보다 현재 Keyboard Shortcuts 표시를 우선합니다. 팀 저장소에 개인 키맵을 강제하기보다 Profile에 보관합니다.
5분 반복 실습
- Quick Open에서 실제 파일 이름 뒤에
:42를 붙여 줄로 이동합니다. - 함수의 정의와 사용처를 확인하고 Go Back으로 복귀합니다.
- 함수 이름을 F2로 변경하고 테스트를 실행합니다. Ctrl+D는 텍스트 다중 선택이므로 심볼 Rename을 대신하지 않습니다.
- 중단점을 설정하고 F5 → F10 → F11 → Shift+F11 순서로 변수 변화를 봅니다. 함수 호출 줄에서 실습하며 비동기·외부 코드는 디버거 설정에 따라 건너뛸 수 있습니다.
- Format Document 후 diff를 확인합니다. 이 명령은 선택된 formatter를 실행하며 타입 검사나 모든 lint 규칙을 해결하지 않습니다.
테스트 실행·개별 테스트 디버깅·import 정리는 언어 확장의 명령 또는 CodeLens에서 시작합니다. 모든 언어에 같은 기본 단축키가 있다고 가정하지 않습니다. 언어별 확장 구성과 프로젝트 탐색 실습으로 이어갑니다.