vi 명령어로 편집기를 시작할 시, 단축키를 사용하여 커서의 이동, 수정, 삭제, 복사 & 붙이기 등 다양한 명령을 수행할 수 있다.
입력모드에 진입한 후, 다시 명령모드로 돌아오려면 [ESC]키를 누르면 명령모드로 다시 되돌아올 수 있다.
명령모드 상태에서 i, a, o, I, A, O 의 단축키를 입력하여 입력모드로 전환할 수 있다. 입력모드에서는 직접 글이나 코드를 작성할 수 있는 상태이다.
마지막 행 모드는 명령모드 상태일 때, ':' (콜론)을 입력하면 화면 맽 밑에서 명령을 수행하는 모드이다.저장, 종료, 치환, 탐색 등의 기능을 수행할 수 있
| 명령어 | 기능 |
|---|---|
| i | - 현재 커서의 위치부터 입력 |
| I | - 현재 커서 줄의 맨 앞에서부터 입력 |
| a | - 현재 커서의 다음 줄에 입력 |
| A | - 현재 커서 줄의 맨 뒤에서부터 입력 |
| o | - 현재 커서의 다음 줄에 입력 |
| O | - 현재 커서의 이전 줄에 입력 |
| s | - 현재 커서 위치의 한 글자를 지우고 입력 |
| S | - 현재 커서의 한 줄을 지우고 입력 |
입력모드로 전환하는 명령어의 종류는 여러개가 있지만, 나는 보통 i 로만 쓴다. 이 정도로만 써도 충분한 것 같다.
| 명령어 | 기능 |
|---|---|
| x | - 현재 커서가 위치한 문자를 삭제 (Del과 같다) |
| dw | - 현재 커서가 위치한 곳부터 단어 삭제 |
| dd | - 현재 커서가 위치한 곳의 한 줄을 삭제 |
| 숫자 + dd | - 현재 커서가 위치한 곳부터 숫자만큼의 줄을 삭제 - 5dd |
| yy | - 현재 커서가 위치한 곳의 한 줄을 복사 |
| 숫자 + yy | - 현재 커서가 위치한 곳부터 숫자만큼의 줄을 복사 - 5yy |
| p (소문자 | - 현재 커서가 위치한 곳의 다음 줄의 내용 붙여넣기 |
| P (대문자 | - 현재 커서가 위치한 곳의 이전 줄의 내용 붙여넣기 |
| u | - 직전에 내린 명령을 취소 |
| 명령어 | 기능 |
|---|---|
| h | - 커서를 왼쪽으로 한칸 이동 (방향키 ←) |
| j | - 커서를 한줄 아래로 이동 (방향키 ↓) |
| k | - 커서를 한줄 위로 이동 (방향키 ↑) |
| l | - 커서를 오른쪽으로 한칸 이동 (방향키 →) |
| w | - 다음 단어의 처음으로 이동 |
| ^ | - 줄의 첫 문자로 이동 |
| $ | - 현재 커서가 위치한 줄의 맨 끝으로 이동 (Home) |
| 0 | - 현재 커서가 위치한 줄의 맨 앞으로 이동 (End) |
| G | - 제일 끝 줄로 이동 |
| gg | - 제일 처음 줄로 이동 |
| nG | - n번째 줄로 이동 (n= 숫자) |
| H | - 화면의 첫 줄로 이동 |
| M | - 화면의 중간으로 이동 |
| L | - 화면이 끝 줄로 이동 |
| Ctrl + b | - 이전 화면으로 이동 (Page Up) |
| Ctrl + f | - 다음 화면으로 이동 (Page Down) |