동작하는 코드
index.html과 style.css를 동시에 편집해야 한다고 상상해보세요. Vim에서는 화면을 나눠서 양쪽 파일을 동시에 볼 수 있어요.
:e index.html ← index.html 열기
:vs style.css ← 세로로 화면을 나누고 style.css 열기
화면이 이렇게 나뉘어요:
┌──────────────┬──────────────┐
│ index.html │ style.css │
│ │ │
│ <div> │ .container { │
│ <h1> │ margin: 0; │
│ </h1> │ } │
│ </div> │ │
└──────────────┴──────────────┘
왼쪽과 오른쪽 사이를 Ctrl+w h(왼쪽)와 Ctrl+w l(오른쪽)로 오갈 수 있어요.
직접 수정하기
터미널에서 여러 파일을 한 번에 열어보세요.
vim index.html style.css app.js
Vim이 열리면 아래 명령들을 순서대로 실행해보세요.
:ls ← 열려 있는 버퍼 목록 확인
:bn ← 다음 버퍼(style.css)로 이동
:bn ← 다음 버퍼(app.js)로 이동
:bp ← 이전 버퍼(style.css)로 돌아가기
:b index ← 이름으로 버퍼 찾기 (일부만 입력해도 됨)
이제 화면 분할을 시도해보세요.
:sp ← 가로 분할 (같은 파일)
:vs ← 세로 분할 (같은 파일)
Ctrl+w j ← 아래쪽 윈도우로 이동
Ctrl+w k ← 위쪽 윈도우로 이동
Ctrl+w = ← 모든 윈도우 크기 균등하게
:close ← 현재 윈도우 닫기 (버퍼는 유지)
탭도 써보세요.
:tabnew app.js ← 새 탭에서 app.js 열기
gt ← 다음 탭으로
gT ← 이전 탭으로
:tabclose ← 현재 탭 닫기
"왜?"
이 세 가지 개념은 책상 위의 문서 작업으로 비유할 수 있어요.
버퍼는 책상 위에 펼쳐놓은 문서예요. 10개의 파일을 열면 10개의 버퍼가 만들어져요. 눈에 보이지 않아도 메모리에 떠 있어요. :bd(buffer delete)로 치우기 전까진 계속 열려 있어요.
윈도우는 문서를 보는 화면 영역이에요. 같은 버퍼를 두 개의 윈도우에 동시에 표시할 수도 있어요. 윈도우를 닫아도(:close) 버퍼는 사라지지 않아요 — 그냥 보이지 않을 뿐이에요.
탭은 작업 데스크예요. 각 탭은 윈도우 배치를 독립적으로 가지고 있어요. "HTML/CSS 작업용 탭"과 "JavaScript 작업용 탭"을 따로 만들어서 전환할 수 있어요.
핵심 관계를 기억하세요: 버퍼 ⊃ 윈도우 ⊃ 탭이 아니에요. 탭은 윈도우 레이아웃이고, 윈도우는 버퍼의 뷰이고, 버퍼는 파일 내용이에요. 서로 독립적인 개념이에요.
심화 학습
버퍼 관련 명령어 정리
| 명령 | 동작 |
|---|---|
:e {파일} | 파일을 버퍼로 열기 |
:ls | 열린 버퍼 목록 보기 |
:bn / :bp | 다음/이전 버퍼 |
:b {이름} | 이름으로 버퍼 전환 (부분 일치) |
:bd | 현재 버퍼 삭제 |
:b# | 직전 버퍼로 전환 |
윈도우 이동 단축키
Ctrl+w 다음에 이동 방향 키를 누르면 돼요.
| 키 | 동작 |
|---|---|
Ctrl+w h | 왼쪽 윈도우 |
Ctrl+w j | 아래쪽 윈도우 |
Ctrl+w k | 위쪽 윈도우 |
Ctrl+w l | 오른쪽 윈도우 |
Ctrl+w w | 다음 윈도우 (순환) |
Ctrl+w = | 크기 균등하게 |
Ctrl+w _ | 현재 윈도우 높이 최대화 |
Ctrl+w | | 현재 윈도우 너비 최대화 |
아래 시나리오를 직접 해보세요.
vim을 실행하세요 (파일 없이):e ~/.vimrc로 설정 파일을 열어보세요:vs로 세로 분할하세요- 오른쪽 윈도우에서
:e ~/.bashrc를 열어보세요 :ls로 두 버퍼가 모두 열려 있는지 확인하세요Ctrl+w h와Ctrl+w l로 양쪽을 오가보세요:close로 현재 윈도우를 닫고,:ls로 버퍼가 여전히 살아있는지 확인하세요
핵심 포인트: 윈도우를 닫아도 버퍼는 사라지지 않아요.
question: Vim에서 버퍼(buffer)란 무엇인가요? answers:
question: 화면을 세로로 분할하는 명령은? answers:
question: 윈도우를 닫으면 해당 파일의 버퍼도 함께 사라지나요? answers: