vim的cscope脚本会自动加载工作目录下的cscope.out数据库。但是在工作目录下放一个数据库,在使用grep时每次都需要手动exclude,很麻烦。因此将数据放入其它目录,在工作目录只放入一个文本文件,内容和数据库的路径,让vim启动时自动根据该文本文件加载数据库。
创建数据库的脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #!/bin/sh DB_PATH= /work/cscope [ $ # -lt 2 ] && { echo "require path and cscope name" exit 1 } [ -d $1 ] || { echo "path $1 not exists" exit 1 } cd $1 cscope -bkRqv -f $DB_PATH/$2 echo $DB_PATH/$2 > .cscopedb |
.vimrc autoload配置
1 2 3 4 5 6 7 8 | function! LoadCscope() let db = findfile(".cscopedb", ".;") if (!empty(db)) let a = readfile(".cscopedb", ".;") exe "cs add ". a[0] endif endfunction call LoadCscope() |
参考
http://vim.wikia.com/wiki/Autoloading_Cscope_Database