Vim 명령어 가이드
모드 종류
- Normal 모드: 기본 모드로, 텍스트 탐색과 명령 실행에 사용된다.
- Inset 모드: 텍스트 입력에 사용된다.
- Visual 모드: 텍스트 블록 선택 및 수정 작업에 사용된다.
명령어 기본 구조
[횟수] 명령 대상
또는
명령 [횟수] 대상
모드 전환
i
→ Insert 모드로 전환 (커서 앞)Shift + i
→ Insert 모드로 전환 (줄의 맨 앞)a
→ Insert 모드로 전환 (커서 뒤)Shift + a
→ Insert 모드로 전환 (줄의 맨 뒤)Esc
→ Normal 모드로 돌아가기v
→ Visual 모드 (텍스트 선택):q
→ 저장하지 않고 종료:q!
→ 저장하지 않고 강제 종료:w
→ 파일 저장:w!
→ 파일 강제 저장:wq
→ 저장하고 종료:wq!
→ 강제 저장하고 종료u
→ 마지막 명령 실행 취소 (undo)Shift + u
→ 해당 줄을 원래 상태로 복귀Ctrl + r
→ undo 취소 (redo).
→ 이전 명령 반복
커서 이동
h
,j
,k
,l
→ 왼쪽, 아래, 위, 오른쪽 이동0
→ 줄의 맨 앞으로 이동$
→ 줄의 맨 끝으로 이동gg
→ 파일의 맨 위로 이동Shift + g
→ 파일의 맨 아래로 이동:n
또는nG
→ n번째 줄로 이동 (예::10
,10G
→ 10번째 줄)w
→ 다음 단어의 시작으로 이동nw
→ n단어 앞으로 이동b
→ 이전 단어의 시작으로 이동e
→ 현재 단어의 끝으로 이동Shift + h
→ 화면의 맨 위로 이동Shift + m
→ 화면의 중간으로 이동Shift + l
→ 화면의 맨 아래로 이동Ctrl + u
→ 위로 스크롤Ctrl + d
→ 아래로 스크롤{
→ 문단 시작으로 이동}
→ 문단 끝으로 이동- 괄호 위에서
%
→ 괄호 짝으로 이동
복사, 붙여넣기, 삭제
yy
→ 현재 줄 복사p
→ 붙여넣기*p
→ 클립보드 붙여넣기dd
→ 현재 줄 삭제 (잘라내기)2dd
→ 두 줄 삭제x
→ 커서 위치의 문자 삭제d$
→ 커서부터 줄 끝까지 삭제v
→ Visual 모드로 선택 후y
→ 복사Shift + v
→ 현재 줄 선택 후y
→ 복사daw
→ 한 단어 삭제d3w
→ 세 단어 삭제dit
→ 태그 안 내용 삭제di{
→{}
내부 삭제da(
→()
와 내용 삭제"_x
→ 저장하지 않고 문자 삭제
검색, 선택, 수정
/검색어
→ 검색?검색어
→ 뒤로 검색n
→ 다음 검색 결과로 이동N
→ 이전 검색 결과로 이동Ctrl + v
→ Visual Block 모드Shift + v
→ 현재 줄 선택r
→ 문자 수정ce
→ 커서부터 단어 끝까지 삭제하고 Insert 모드로 전환c$
→ 커서부터 줄 끝까지 삭제하고 Insert 모드로 전환Ctrl + v
→ Visual Block 모드로 선택 후Shift + i
→ Insert 모드로 전환:s/old/new
→ 현재 줄에서old
를new
로 수정:%s/old/new/g
→ 파일 전체에서 수정:#,#s/old/new/g
→ 두 줄#,#
사이에서old
를new
로 수정 (#
은 줄번호, 포함)c
옵션 추가 (:%s/old/new/gc
) → 확인 후 수정
매크로
매크로를 사용하면 반복 작업을 자동화할 수 있다.
- 매크로 녹화
q
+ 매크로 이름 (예:qa
→a
에 매크로 저장 시작)- 명령어 입력 (반복할 작업 수행)
q
→ 매크로 녹화 종료
- 매크로 실행
@
+ 매크로 이름 (예:@a
→a
매크로 실행)@@
→ 마지막 실행한 매크로 재실행n@a
→ 매크로를 n번 반복 실행
예시: 매크로로 줄 끝에 ;
추가하기
qa " 매크로 녹화 시작 (a에 저장)
$ " 줄 끝으로 이동
A; " 줄 끝에 ; 추가 (Insert 모드)
<Esc> " Normal 모드로 돌아감
q " 매크로 녹화 종료
@a " 매크로 실행
5@a " 매크로를 5번 반복 실행