SOFTMOA TECHNOLOGY

Vim 에디터 기초와 생산성 향상

소프트모아가 정리한 기술 기록입니다.

Contents
작성일 2025. 11. 30.

Vim 에디터 기초와 생산성 향상


Vim은 터미널 기반의 강력한 텍스트 에디터입니다. 서버 작업이나 빠른 편집에 필수적이며, 모드 기반 편집으로 키보드만으로 모든 작업이 가능합니다.



언제 사용하나요?



  • SSH로 서버 접속 시 파일 편집

  • Git 커밋 메시지 작성

  • 빠른 설정 파일 수정

  • 마우스 없이 효율적인 코딩



Vim 모드 이해


Normal Mode (기본) - 명령 실행, 이동
Insert Mode (i) - 텍스트 입력
Visual Mode (v) - 텍스트 선택
Command Mode (:) - 저장, 종료 등

# 모드 전환
i Insert 모드 진입
Esc Normal 모드로 복귀
v Visual 모드 (문자 단위)
V Visual Line 모드 (줄 단위)
: Command 모드 진입


기본 이동


# 커서 이동
h 왼쪽 j 아래 k 위 l 오른쪽

# 단어 단위 이동
w 다음 단어 시작
b 이전 단어 시작
e 단어 끝으로

# 줄 내 이동
0 줄 맨 앞
$ 줄 맨 끝
^ 첫 문자로

# 화면 이동
gg 파일 맨 위
G 파일 맨 아래
:n n번 줄로 이동
Ctrl+d 반 페이지 아래
Ctrl+u 반 페이지 위


편집 명령


# 삽입
i 커서 앞에 삽입
a 커서 뒤에 삽입
I 줄 맨 앞에 삽입
A 줄 맨 뒤에 삽입
o 아래 새 줄
O 위에 새 줄

# 삭제
x 한 문자 삭제
dd 한 줄 삭제
dw 단어 삭제
d$ 커서부터 줄 끝까지
D d$와 동일

# 복사/붙여넣기
yy 한 줄 복사 (yank)
yw 단어 복사
p 커서 뒤에 붙여넣기
P 커서 앞에 붙여넣기

# 변경
cw 단어 변경 (삭제 + 삽입)
cc 줄 전체 변경
c$ 커서부터 줄 끝 변경

# 실행 취소/재실행
u 실행 취소
Ctrl+r 재실행


검색과 치환


# 검색
/pattern 앞으로 검색
?pattern 뒤로 검색
n 다음 결과
N 이전 결과
* 커서 위 단어 검색

# 치환
:s/old/new/ 현재 줄 첫 번째만
:s/old/new/g 현재 줄 전체
:%s/old/new/g 파일 전체
:%s/old/new/gc 확인하며 치환


Visual 모드


v       문자 단위 선택
V 줄 단위 선택
Ctrl+v 블록 선택 (열 편집)

# 선택 후
d 삭제
y 복사
c 변경
> 들여쓰기
< 내어쓰기


저장과 종료


:w          저장
:q 종료
:wq 저장 후 종료
:q! 저장 안하고 종료
:x 변경시만 저장 후 종료
ZZ :x와 동일

:w filename 다른 이름으로 저장
:e filename 다른 파일 열기


유용한 명령


# 줄 번호
:set number 줄 번호 표시
:set nonumber 줄 번호 숨기기

# 문법 강조
:syntax on

# 들여쓰기
:set tabstop=4
:set expandtab
:set shiftwidth=4

# 검색 하이라이트
:set hlsearch
:nohlsearch 하이라이트 제거

# 분할 창
:split 수평 분할
:vsplit 수직 분할
Ctrl+w w 창 전환
Ctrl+w q 창 닫기


.vimrc 설정 예시


" ~/.vimrc
set number " 줄 번호
set relativenumber " 상대적 줄 번호
syntax on " 문법 강조
set tabstop=4 " 탭 = 4칸
set shiftwidth=4 " 들여쓰기 = 4칸
set expandtab " 탭을 스페이스로
set autoindent " 자동 들여쓰기
set hlsearch " 검색 하이라이트
set incsearch " 점진적 검색
set ignorecase " 대소문자 무시
set smartcase " 대문자 있으면 구분
set mouse=a " 마우스 사용
set clipboard=unnamedplus " 시스템 클립보드


자주 쓰는 조합


ciw     단어 변경
ci" 따옴표 안 변경
di( 괄호 안 삭제
yiw 단어 복사
dd 줄 삭제
5dd 5줄 삭제
. 마지막 명령 반복
gg=G 전체 들여쓰기 정리


Vim vs Nano








항목VimNano
학습곡선가파름완만
기능강력기본
속도빠름보통
커스터마이징무한제한적
Share this

Tool

Have a questions?

견적 및 기술문의

mobile : 010-7931-4813

Contact Form