빠른 참조

Vimscript 스니펫 치트시트

Vimscript 스니펫 빠른 참조 가이드: 키 매핑, autoload 가드, 입력 모드 표현식 레지스터, 버전 검사 등.

· 게시일

플러그인 개발 및 vimrc 설정을 위한 실용적인 Vimscript 관용구와 보일러플레이트 스니펫 모음입니다.

키 및 명령 매핑

" 사용자 정의 명령을 스크립트 로컬 함수에 바인딩
command! YoFunctionHere call s:YoFunctionHere()

" 노멀 모드에서 알림 없이 키 매핑
nnoremap <silent> x :call <SID>FunctionHere()<CR>

function! s:FunctionHere()
  " 구현 로직
endfunction

입력 모드에서 함수 호출

" 표현식 레지스터(=)를 사용하여 결과 삽입
inoremap X <C-R>=script#myfunction()<CR>
inoremap <F2> <C-R>=MyVimFunc()?'':''<CR>

플러그인 설치 여부 확인

if globpath(&rtp, "plugin/commentary.vim") != ""
  " Commentary 플러그인이 설치되어 있는 경우
endif

자동 로딩 (Autoloading)

" autoload/hello.vim
if exists("g:hello_loaded") | finish | endif
let g:hello_loaded = 1

function! hello#method()
  echo "autoload 함수에서 보내는 메시지입니다!"
endfunction

hello#method()를 호출하면 필요할 때 autoload/hello.vim이 자동으로 소싱됩니다.

기타

버전 검사

if v:version < 704
  echom "이 플러그인은 Vim >= 7.4가 필요합니다"
  finish
endif

관련 주제