| 명령 | 기능 |
|---|---|
| vim [파일명] | Vim 실행, 파일명을 지정하면 파일 열기 |
| :q | 종료 기능, 작업 내용이 없다면 바로 종료 |
| :q! | 작업한 내용을 저장하지 않고 종료 |
| :w [파일명] | 저장 기능, 파일명을 지정하면 새 파일로 저장 |
| :wq, wq! | 작업한 내용을 저장하고 종료 |
| ZZ | 작업한 내용을 저장하고 종료 |
| 명령 | 기능 |
|---|---|
| i | 현재 커서 앞에 입력 |
| a | 현재 커서 다음 자리에 입력 |
| o | 커서가 위치한 행의 다음 행에 입력 |
| I(대문자 i) | 커서가 위치한 행의 첫 칼럼으로 이동 후 입력 |
| A | 커서가 위치한 행의 마지막 컬럼으로 이동 후 입력 |
| O | 커서가 위치한 행의 이전 행에 입력 |
| 명령 | 기능 |
|---|---|
| h, ← | 커서를 한 문자 왼쪽으로 이동 |
| j, ↓ | 커서를 한 행 아래로 이동 |
| k, ↑ | 커서를 한 행 위로 이동 |
| l, → | 커서를 한 문자 오른쪽으로 이동 |
| ^, 0(숫자) | 커서를 행의 첫번째 칼럼으로 이동 |
| $ | 커서를 행의 마지막 칼럼으로 이동 |
| - | 커서를 이전 행의 첫번째 칼럼으로 이동 |
| +, 엔터 | 커서를 다음 행의 첫번째 칼럼으로 이동 |
| w | 커서를 다음 단어의 첫 글자 위치로 이동 |
| b | 커서를 앞 단어의 첫 글자 위치로 이동 |
| e | 커서를 다음 단어의 마지막 글자 위치로 이동 |
| 명령 | 기능 |
|---|---|
| G | 마지막 행으로 이동 |
| gg | 처음 행으로 이동 |
| 숫자+G | 지정한 행으로 이동 |
| :숫자 | 지정한 행으로 이동 |
| :$ | 마지막 행으로 이동 |
| Ctrl + u | 반 화면 위로 이동 |
| Ctrl + d | 반 화면 아래로 이동 |
| Ctrl + b | 한 화면 위로 이동 |
| Ctrl + f | 한 화면 아래로 이동 |
| Ctrl + y | 화면을 한 행 위로 이동 |
| Ctrl + e | 화면을 한 행 아래로 이동 |
| 명령 | 기능 |
|---|---|
| x, 숫자+x | 커서가 위치한 문자 삭제, 숫자는 삭제할 문자 수 |
| dw, 숫자+dw | 커서가 위치한 단어를 삭제, 숫자는 삭제할 단어 수 |
| dd, 숫자+dd | 커서가 위치한 행 삭제, 숫자는 삭제할 행 수 |
| u | 방금 수행한 명령 취소 |
| U | 한 행에 수행한 모든 명령 취소 |
| :e! | 마지막 저장한 내용 말고 전부 취소 |
| yy, 숫자+yy | 커서가 위치한 행을 복사, 숫자는 복사할 행 수 |
| p | 커서가 위치한 행의 아래쪽에 붙임 |
| P | 커서가 위치한 행의 위쪽에 붙임 |
| 명령 | 기능 |
|---|---|
| /string | string을 아래 방향으로 검색 |
| ?string | string을 위 방향으로 검색 |
| n | 원래 찾는 방향으로 다음 문자열 검색 |
| N | 역방향으로 다음 문자열 검색 |
| :s/string/string2 | 커서가 위치한 행의 string1을 string2로 바꿈 |
| :%s/string1/string2/g | 파일 전체에서 모든 string1을 string2로 바꿈 |
| :<범위>s/string1/string2/ | <범위> 안의 모든 행에서 모든 string1을 string2로 바꿈 |
| :<범위>s/string1/string2/g | <범위> 안의 모든 행에서 모든 string1을 string2로 바꿈 |
| :<범위>s/string1/string2/gc | <범위> 안의 모든 행에서 모든 string1을 string2로 바꿈, 하지만 바꾸기 전에 수정 여부를 묻는다. |
| 명령 | 기능 |
|---|---|
| v | 현재 커서 위치부터 블록 지정 |
| V | 현재 커서의 위치에서 행 단위로 블록 지정 |
| Ctrl + v | 현재 커서의 위치에서 열 단위로 블록 지정 |
| y | 블록 복사 |
| d | 블록 삭제 |
| p | 블록 붙여넣기 |
| 명령 | 기능 |
|---|---|
| :set nu | 행 번호 표시 |
| :set nonu | 행 번호 숨기기 |
| :set list | 특수문자 표시 |
| :set nolist | 특수문자 숨기기 |
| :set showmode | 현재 모드 표시 |
| :set noshowmode | 모드 표시를 숨기기 |
| :set | Set으로 설정한 모든 vim 변수 출력 |
| :set all | 모든 vim 변수와 현재 값 출력 |
| ^l(소문자 L) | 화면 다시 출력 |
| J | 현재 행과 아래 행을 연결하여 하나의 행으로 만듬 |
| . | 직전에 했던 명령 반복 |