[Vim/Linux] cscope DB 파일 자동 로딩 (Auto-Loading cscope DB File)

예전에 cscope Database (DB) 파일을 생성하는 방법에 대해서 정리하였다 (출처 1참조). 해당 글에서는 cscope Database 파일을 절대 경로(Absolute Path)로 변경하여서 vim에서 로딩하도록 설정하였다. 하지만 절대 경로로 변경하지 않고 현재 위치한 경로 아래에 있는 모든 cscope DB 파일을 자동으로 로딩하는 방법이 있어서 정리하였다.

방법은 아주 간단하다. 아래에 있는 코드를 .vimrc 파일에 추가하면 된다. 보통 .vimrc는 /home/USER_NAME/.vimrc에서 찾을 수 있다. 아래 코드는 출처 2에서 가져온 코드이다.

function! LoadCscope()
  let db = findfile("cscope.out", ".;")
  if (!empty(db))
    let path = strpart(db, 0, match(db, "/cscope.out$"))
    set nocscopeverbose " suppress 'duplicate connection' error
    exe "cs add " . db . " " . path
    set cscopeverbose
  " else add the database pointed to by environment variable 
  elseif $CSCOPE_DB != "" 
    cs add $CSCOPE_DB
  endif
endfunction
au BufEnter /* call LoadCscope()

출처

  1. https://mkblog.co.kr/2019/04/07/vim-linux-cscope-cmd/
  2. https://vim.fandom.com/wiki/Autoloading_Cscope_Database

Leave a Comment