首先安装cscope
[root@cutbag sys]#tar jxvf cscope-15.7a.tar.bz2[root@cutbag sys]#cd cscope-15.7a[root@cutbag sys]#./configure --prefix=/usr&&make&&make install |
---|
然后安装vim
[root@cutbag sys]#tar jxvf vim-7.2.tar.bz2 [root@cutbag sys]#GUI_INC_LOC="" GUI_LIB_LOC="" CC="" CPPFLAGS="" CFLAGS="-O2 -pipe " LDFLAGS="" srcdir="." ./configure --enable-cscope --prefix=/usr[root@cutbag sys]#make&&make install |
---|
然后安装ctags
[root@cutbag sys]#tar zxvf ctags-5.8.tar.gz[root@cutbag sys]#cd ctags-5.8[root@cutbag sys]#./configure --prefix=/usr[root@cutbag sys]#make&&make install |
---|
接着做一个脚本,专门用来生成源代码阅读工程的
[root@cutbag sys]#vi /bin/mktags.sh[root@cutbag sys]#chmod u+x /bin/mktags.sh |
---|
脚本里的内容如下:
find . -name "*.c" -o -name "*.h" -o -name "*.cpp" > cscope.filescscope -Rbkq -i cscope.filesctags -R |
---|
Written by Liuqi
因为习惯,设置一下~/.vimrc
" When started as "evim", evim.vim will already have done these settings.if v:progname =~? "evim" finishendif" Use Vim settings, rather then Vi settings (much " This must be first, because it changes other options as a side effect.set nocompatible" allow backspacing over everything in insert modeset backspace=indent,eol,startif has("vms") set nobackup " do not keep a backup file, use versions insteadelse set backup " keep a backup fileendifset history=50 " keep 50 lines of command line historyset ruler " show the cursor position all the timeset showcmd " display incomplete commandsset incsearch " do incremental searching" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries" let &guioptions = substitute(&guioptions, "t", "", "g")" Don't use Ex mode, use Q for formattingmap Q gq" CTRL-U in insert mode deletes a lot. Use CTRL-G u to first break undo," so that you can undo CTRL-U after inserting a line break.inoremap u" In many terminal emulators the mouse works just fine, thus enable it." Switch syntax highlighting on, when the terminal has colors" Also switch on highlighting the last used search pattern.if &t_Co > 2 || has("gui_running") syntax on set hlsearchendif" Only do this part when compiled with support for autocommands.if has("autocmd") " Enable file type detection. " Use the default filetype settings, so that mail gets 'tw' set to 72, " 'cindent' is on in C files, etc. " Also load indent files, to automatically do language-dependent indenting. filetype plugin indent on " Put these in an autocmd group, so that we can delete them easily. augroup vimrcEx " For all text files set 'textwidth' to 78 characters. autocmd FileType text setlocal textwidth=78 " When editing a file, always jump to the last known cursor position. " Don't do it when the position is invalid or when inside an event handler " (happens when dropping a file on gvim). " Also don't do it when the mark is in the first line, that is the default " position when opening a file. autocmd BufReadPost * \ if line("'\"") > 1 && line("'\"") <= line("$") | \ exe "normal! g`\"" | \ endif augroup ENDelse set autoindent " always set autoindenting onendif " has("autocmd")" Convenient command to see the difference between the current buffer and the" file it was loaded from, thus the changes you made." Only define it when not defined already.if !exists(":DiffOrig") command DiffOrig vert new | set bt=nofile | r # | 0d_ | diffthis \ | wincmd p | diffthisendifset nulet Tlist_Use_Right_Window=1let Tlist_File_Fold_Auto_Close=1map :TlistTogglenoremap :makenoremap :make clean;makenoremap :Tlistnoremap :TlistSyncnoremap :!./vitags.sh:cs resetnoremap :!cvs upnnoremap @=((foldclosed(line('.')) < 0) 'zc' : 'zo')if has("multi_byte") set encoding=utf-8 set fileencoding=chinese set fileencodings=ucs-bom,utf-8,chineseendifset wrapset hlsearchfiletype plugin oncolorscheme elflordsyntax onset nocpfiletype plugin onfiletype indent onset nuset ts=4set sw=4set ruset hlsset isset smset cinset cino=:0g0t0(susset autoread " read open files again when changed outside Vimset incsearch " use incremental searchset nowrap " do not wrap linesset nobackupset nowritebackup |
---|