이 글은 Vim/Neovim 단축키 시리즈의 세 번째 글입니다.
- Vi/Vim 단축키 종합 가이드: 기본부터 실전까지
- Neovim 단축키 가이드: Vim을 넘어서는 기능들
- LazyVim 키맵 치트시트 ← 현재 글
함께 읽기: LazyVim distro로 갈아타기
들어가며
LazyVim에서 키 외울 일은 사실 거의 없어요. <Space>를 누르고 잠깐 기다리면 which-key가 카테고리별 메뉴를 띄워 주고, <Space>sk로 키맵을 검색할 수도 있어요. 그래도 매일 자주 누르는 키는 손이 기억하는 편이 빨라요. 이 글은 그 “매일 누르는 키"만 모아 둔 치트시트예요.
Leader 키는 Space입니다. 아래 표의 <Space>가 모두 leader라고 보면 됩니다.
직전 수동 셋업의 키맵과는 다른 기본값이 많습니다. 새로 외우거나 같은 키에 다른 의미를 매핑하지 말고, LazyVim 기본을 그대로 쓰는 편을 권장합니다. 이미 합의된 컨벤션을 그대로 쓰는 편이 손이 덜 갑니다.
파일 트리 (neo-tree)
| 키 | 동작 |
|---|---|
<Space>e | 트리 토글 (열기/닫기 + 포커스) |
<Space>E | cwd 기준 트리 (root와 다를 때) |
트리 안에서:
| 키 | 동작 |
|---|---|
<CR> | 파일 열기 |
a | 추가 |
d | 삭제 |
r | 이름 변경 |
q | 닫기 |
H | 숨김파일 토글 |
<Space>e는 가장 자주 누르는 키 중 하나입니다. 토글이라 한 번 더 누르면 닫힙니다.
창 이동 (트리 ↔ 에디터)
| 키 | 동작 |
|---|---|
<C-h> / <C-l> | 왼/오 창 이동 (트리 ↔ 에디터 복귀에 가장 자주) |
<C-j> / <C-k> | 아래/위 창 |
<C-w>= | 창 크기 균등화 |
<C-w>q | 현재 창 닫기 |
<C-w> 접두사를 누르고 다음 키를 눌러도 같은 동작이지만, <C-h/j/k/l> 직접 매핑이 손가락에 더 빠릅니다. LazyVim이 이미 잡아 준 키입니다.
파일/검색 (snacks.picker)
| 키 | 동작 |
|---|---|
<Space><Space> | 파일 찾기 (가장 빠른 진입) |
<Space>ff / <Space>fF | 파일 찾기 (root / cwd) |
<Space>sg | 내용 grep (live grep) |
<Space>fr | 최근 파일 |
직전 셋업에서 Telescope의 <leader>ff/<leader>fg 조합을 썼다면 의미가 거의 그대로 옮겨 옵니다. 차이는 두 가지입니다. leader는 동일하게 Space이고, grep 키는 <Space>fg 대신 <Space>sg로 옮겨졌습니다(s = search 카테고리).
가장 짧은 진입은 **<Space><Space>**입니다. 두 번 두드리면 바로 파일 picker가 뜹니다.
버퍼/탭
| 키 | 동작 |
|---|---|
<S-h> / <S-l> | 이전/다음 버퍼 |
<Space>, | 버퍼 목록에서 선택 |
<Space>bd | 현재 버퍼 닫기 |
<S-h>/<S-l>은 Shift + h/l. 이게 LazyVim에서 버퍼 전환의 표준입니다. 바로 옆 버퍼로 점프할 일이 압도적으로 많아서 두 키만 외워도 대부분 커버됩니다.
코드 (LSP)
| 키 | 동작 |
|---|---|
gd | 정의로 점프 |
gr | 참조 찾기 |
gI | 구현으로 점프 |
K | 호버 문서 |
<Space>ca | 코드 액션 |
<Space>cr | rename |
<Space>cf | 포맷 |
]d / [d | 다음/이전 진단 |
gd로 점프한 뒤 <C-o>로 직전 위치로 돌아옵니다. 이건 Vim 자체의 점프 리스트라 LazyVim과 무관하게 동작합니다.
<Space>c 접두사는 Code 그룹이라 외우기 쉽습니다. ca = code action, cr = code rename, cf = code format.
Git
| 키 | 동작 |
|---|---|
<Space>gg | lazygit 실행 |
]h / [h | 다음/이전 hunk |
<Space>gb | line blame |
<Space>gg를 가장 자주 누릅니다. lazygit TUI 안에서 stage, commit, push까지 다 처리합니다. nvim 본체로 돌아오면 gitsigns가 변경된 줄에 사이드 마커를 자동으로 표시해 주고, ]h/[h로 hunk 사이를 점프합니다.
기타
| 키 | 동작 |
|---|---|
<C-/> | 터미널 토글 (snacks.terminal, <Esc> 두 번 또는 <C-\><C-n>으로 빠져나옵니다) |
<C-;> | floaterm 토글 (사용자 추가) |
<Space>l | Lazy 플러그인 매니저 |
<Space>cm | Mason (LSP/포매터 매니저) |
<Space>w | 저장 |
<Space>qq | 전체 종료 |
<Space>uC | 컬러스킴 변경 (UI에서 라이브 프리뷰) |
<Space>h | search highlight 끄기 (사용자 추가) |
<C-/>와 <C-;>는 둘 다 터미널 토글이지만 띄우는 플러그인이 다릅니다(snacks.terminal vs vim-floaterm).
<Space>uC는 테마를 라이브 프리뷰로 바꿔 본 뒤 마음에 드는 것을 영구화할 때 편리합니다. 자세한 컬러스킴 셋업은 distro 갈아타기 글을 참고합니다.
자주 쓰는 명령
치트시트는 키 위주로 정리했지만, : 명령으로 자주 들어가는 곳도 같이 외워 두면 좋습니다.
| 명령 | 동작 |
|---|---|
:LazyExtras | 추가 언어팩 ON/OFF UI |
:Mason | LSP/포매터/린터 설치 상태 |
:LazyHealth, :checkhealth | 의존성/문제 진단 |
:RenderMarkdown toggle | 마크다운 렌더링 잠시 끄기 |
:colorscheme <name> | 테마 즉시 전환 |
학습 팁
키를 외우려고 할 필요 없습니다. 다음 두 가지만 습관화하면 자동으로 박힙니다.
<Space>누르고 잠시 기다리기. f(파일)/b(버퍼)/c(코드)/g(git)/s(검색)/u(UI 토글) 메뉴가 뜨면 첫 글자 한 번 보고 다음 키를 누릅니다. 한 번에 다 외우려 하지 말고 매일 한 카테고리씩 훑어보면 됩니다.<Space>sk로 키맵 검색. “버퍼 닫는 키가 뭐였더라?” 싶을 때<Space>sk→ “buffer close"를 입력하면 매핑이 바로 뜹니다.
:verbose map <key>도 디버깅 단계에선 유용합니다. 어떤 플러그인이 해당 키를 가져갔는지 표시해 줍니다.
마치며
LazyVim의 키맵은 이미 합의된 컨벤션입니다. Telescope 시절의 <leader>ff/fg, neo-tree의 <leader>e, gitsigns의 ]h/[h 같은 묶음이 그대로 살아 있고, 거기에 snacks 계열 picker, dashboard, terminal이 같은 카테고리에 얹혀 있습니다. 손이 헷갈릴 일이 거의 없습니다.
새 머신에 LazyVim을 깔고 가장 먼저 손에 익히면 좋은 6개:
<Space><Space> — 파일 찾기
<Space>sg — 내용 grep
<Space>e — 트리 토글
<S-h> / <S-l> — 버퍼 이전/다음
gd — 정의 점프
<Space>gg — lazygit
이 여섯 개만 손에 박히면 매일 쓰는 키는 거의 다 커버됩니다. 나머지는 <Space> 누르고 기다리면 which-key가 알려줍니다.
전체 셋업 맥락은 LazyVim distro로 갈아타기 글에 정리해 두었어요.