Neovim을 어디서 시작할까 — Vanilla / kickstart.nvim / LazyVim 비교
Neovim 환경을 새로 만들거나 다시 익히려 할 때 선택지인 세 가지 시작점의 정체·학습 곡선·추천 맥락 비교 (2026-06 기준)
Neovim 환경을 새로 만들거나 다시 익히려 할 때 선택지인 세 가지 시작점의 정체·학습 곡선·추천 맥락 비교 (2026-06 기준)
부팅 시 Gradle 실패로 빈 classpath가 kls_database.db에 박히면 import가 전부 unresolved — 캐시 삭제
sudo jekyll 빌드가 남긴 root 소유 캐시 파일이 다음 빌드를 EACCES로 죽인다 — find로 잡아 삭제
Neovim 0.9+ 기준 exrc 옵션 동작, 공식 검색 파일명(.nvim.lua/.nvimrc/.exrc), secure·trust 시스템, 글로벌 dotfiles의 lua 모듈을 .nvim.lua에서 require하는 메커니즘, jdtls 크로스플랫폼 처리, 흔히 빠지는 함정까지 한 번에 정리.
error/assert로 던지고, pcall/xpcall로 잡기. error 객체 패턴, Neovim 플러그인의 에러 관행과 vim.notify 표시까지.
Vim 8의 legacy Vimscript 기준 문법을 한 번에 정리. 8개 타입과 스코프 prefix, 비교 연산자의 함정, 함수/람다/Funcref, List·Dict, 자주 쓰는 관용구까지.
Neovim 설정·플러그인을 읽고 고치는 수준까지 Lua 문법을 한 번에 정리. 타입·스코프·테이블·문자열 패턴, 자주 쓰는 vim.* 헬퍼와 함정까지.
require/package.path, local M = {} return M 패턴, require 캐시, Neovim lua/ 디렉토리 자동 등록과의 연결.
__index/__newindex/__call 같은 메타메서드, OOP 클래스 패턴, 문자열 메서드 호출의 비밀, Neovim vim.opt가 일반 테이블처럼 보이는 이유.
헤드리스 nvim + sleep + get_clients로 LSP attach를 한 줄 스크립트로 검증한다 — sleep은 충분히 길게