본문 바로가기
IT

[리눅스 기초 #32] Vim에서 Neovim까지: 터미널 에디터를 나만의 IDE로 변신시키기

by sunyjiny 2026. 2. 6.
반응형

리눅스 기초 시리즈의 32번째 시간입니다! 지난 시간에는 터미널 멀티태스킹의 핵심인 tmux를 통해 작업 효율을 극대화하는 방법을 다뤘습니다. 이제 화면도 쪼개 썼고 폰트도 예쁘게 바꿨으니, 그 안에서 실제로 '코딩'을 할 차례입니다.

보통 리눅스 에디터라고 하면 Vim을 떠올리며 "입력조차 어렵다"고 겁을 먹곤 합니다. 하지만 2026년 현재, 우리는 단순한 텍스트 편집기를 넘어 VS Code 부럽지 않은 성능을 내는 Neovim의 시대에 살고 있습니다. 오늘은 메모장 수준의 기본 에디터를 나만의 커스텀 IDE로 변신시키는 과정을 저의 경험담과 함께 풀어보겠습니다.


1. 나의 경험담: "VS Code가 무거워질 때 찾은 탈출구"

최근 제 사이트인 sunyjini.com의 백엔드 로직을 수정하던 중이었습니다. 가벼운 수정인데도 VS Code를 띄우면 수백 메가의 램을 잡아먹고 로딩 시간이 걸리는 게 못내 아쉬웠죠. 특히 저사양 클라우드 서버에 직접 접속해서 작업할 때는 GUI 에디터를 쓰는 게 사치처럼 느껴졌습니다.

그때 결심했습니다. "터미널 에디터를 제대로 써보자!" 처음에는 Neovim의 복잡한 설정에 당황했지만, Lua 기반의 현대적인 설정을 하나씩 추가하다 보니 놀라운 일이 벌어졌습니다. 0.1초 만에 실행되면서도 자동 완성, 문법 강조, 깃 연동까지 완벽하게 지원하는 '터미널 IDE'가 완성된 것이죠. 이제는 마우스 없이 키보드만으로 소스 코드를 종횡무진 누비는 그 속도감에 완전히 매료되었습니다.


2. Before: 투박하고 기능 없는 기본 Vim

설정 전의 기본 Vim은 말 그대로 '텍스트 입력기'일 뿐입니다. 코드 색상도 칙칙하고, 오타를 내도 알려주지 않으며, 폴더 구조를 한눈에 볼 수도 없죠. 현대적인 개발 환경에 익숙한 우리에게는 매우 불친절한 상태입니다.

기본 에디터 확인 코드:

Terminal
# 리눅스에 기본 내장된 vim 실행 vi test.py

아무런 설정이 없다면 문법 강조조차 되어 있지 않습니다.

(▲ Before: 리눅스 커널 위에서 번역기를 거쳐 일하고 있던 셈이죠. 이 투박한 화면을 최신 개발 환경으로 업그레이드할 시간입니다.)


3. Action: Neovim 설치와 현대적 설정 (init.lua)

이제 구버전 Vim의 한계를 넘어 최신 Neovim을 설치하고, Lua 언어를 이용해 설정을 영구 저장해 보겠습니다. 플러그인 관리자인 lazy.nvim을 쓰면 설치도 아주 간편합니다.

Neovim 설치 및 초기화 코드:

Bash Terminal
# 1. Neovim 설치 (Ubuntu 기준) sudo apt update && sudo apt install neovim

2. 설정 디렉토리 생성
mkdir -p ~/.config/nvim

3. 설정 파일 작성 (init.lua)
nano ~/.config/nvim/init.lua

아래 내용 추가: 행 번호 표시 및 탭 설정
vim.opt.number = true vim.opt.shiftwidth = 4 vim.opt.expandtab = true vim.opt.termguicolors = true 

(▲ Action: --set-version 명령어를 입력하면 리눅스 시스템 전체를 가상 하드 디스크(VHD) 형식으로 변환하는 과정이 진행됩니다. 파일이 많을수록 시간이 걸리니 커피 한 잔 마시며 기다려주세요.)


4. After: 터미널에서 만나는 화려한 IDE 환경

업그레이드를 마치고 다시 Neovim을 실행해보면 화면 하단에 예쁜 상태표시줄이 생기고, 코드가 형형색색으로 빛납니다. 윈도우 커널 위에서 번역기를 거쳐 일하던 답답함은 사라지고 리얼 리눅스 환경의 속도가 체감됩니다.

달라진 점들:

  • LSP 지원: 코드 작성 중 실시간으로 문법 오류를 잡아주고 함수 정의로 바로 이동합니다.
  • 파일 탐색기: Nvim-tree 같은 플러그인을 통해 왼쪽 사이드바에서 프로젝트 구조를 확인합니다.
  • 초고속 로딩: 아무리 플러그인을 많이 깔아도 VS Code보다 수십 배 빠르게 켜집니다.

5. 실험 요약 및 팁

용어/명령어 역할 비유
nvim Neovim 실행 명령어 최신형 엔진 장착하기
init.lua Neovim의 메인 설정 파일 나만의 조리법 작성하기
LSP 언어 서버 프로토콜 (자동 완성) 옆에서 도와주는 천재 조수
lazy.nvim 플러그인 매니저 필요한 도구 상자 관리자

6. 마치며: 최신 엔진으로 달릴 준비가 되었나요?

리눅스 기초 32단계를 거치며 우리는 이제 시스템 환경을 넘어 개발의 본질인 '도구'를 장악했습니다. 엔진(커널)이 좋아졌으니 이제 그 위에서 돌아가는 우리의 손가락도 더 자유로워져야겠죠? Neovim은 처음에는 낯설지만, 한 번 익숙해지면 마우스로 손을 옮기는 시간조차 아까워지는 마법을 부립니다.

오늘의 인사이트: "최고의 에디터는 내가 가장 편하게 숨 쉴 수 있도록 커스터마이징된 에디터다."


32번째 이야기를 마칩니다. 이제 우리만의 '슈퍼 리눅스 IDE'가 탄생했습니다. 다음 시간에는 이 쾌적한 환경에서 'Docker 컨테이너를 한 줄의 명령어로 띄우고 관리하는 실전 도커 활용법'에 대해 본격적으로 다뤄보겠습니다.

이 글이 여러분의 코딩 속도를 올리는 데 도움이 되었나요? 혹시 Vim 단축키가 너무 어려워 포기하고 싶으셨나요?

Vim 초보를 위한 '생존 단축키 10선'을 다음 포스팅 부록으로 준비해 드릴까요? 여러분의 댓글이 다음 주제를 결정합니다!

반응형