- Notifications
You must be signed in to change notification settings - Fork32
brookhong/cscope.vim
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Cscove(new name for this plugin, since cscope.vim is used too widely.) is asmart cscope helper for vim.
It will try to find a proper cscope database for current file, then connect toit. If there is no proper cscope database for current file, you are prompted tospecify a folder with a string like --
Can not find proper cscope db, please input a path to create cscope db for.
Then the plugin will create cscope database for you, connect to it, and findwhat you want. The found result will be listed in a location list window. Nexttime when you open the same file or other file that the cscope database can beused for, the plugin will connect to the cscope database automatically. Youneed not take care of anything about cscope database.
When you have a file edited/added in those folders for which cscope databaseshave been created, cscove will automatically update the corresponding database.
Cscove frees you from creating/connecting/updating cscope database, let youfocus on code browsing.
The default key mappings has been removed from the plugin itself, since usersmay prefer different choices.So to use the plugin, you must define your own key mappings first.
Below is the minimum key mappings.
nnoremap <leader>fa :call CscopeFindInteractive(expand('<cword>'))<CR>nnoremap <leader>l :call ToggleLocationList()<CR>
Some optional key mappings to search directly.
" s: Find this C symbolnnoremap <leader>fs :call CscopeFind('s', expand('<cword>'))<CR>" g: Find this definitionnnoremap <leader>fg :call CscopeFind('g', expand('<cword>'))<CR>" d: Find functions called by this functionnnoremap <leader>fd :call CscopeFind('d', expand('<cword>'))<CR>" c: Find functions calling this functionnnoremap <leader>fc :call CscopeFind('c', expand('<cword>'))<CR>" t: Find this text stringnnoremap <leader>ft :call CscopeFind('t', expand('<cword>'))<CR>" e: Find this egrep patternnnoremap <leader>fe :call CscopeFind('e', expand('<cword>'))<CR>" f: Find this filennoremap <leader>ff :call CscopeFind('f', expand('<cword>'))<CR>" i: Find files #including this filennoremap <leader>fi :call CscopeFind('i', expand('<cword>'))<CR>
Please note that line number changes in location list after file saved.