I am using cscope to get familiar with all the keywords used in socket programming. I went to the directory with c files. I used cscope. and then I searched for AF_INET. I got this :
#define AF_FILE PF_FILE
#define AF_INET PF_INET
#define AF_AX25 PF_AX25
This was a full page. I only published part of it. Now I want to know from where this PF_INET is coming? what command I should use. I have seen a guy to double click on PF_INEt and using some command to find it. I don't know what the command is? Kindly help me in this.
The second thing is when i quit the page with :q command. I come to this page :
Global definition: AF_INET
File Line
0 socket.h 119 #define AF_INET PF_INET
Find this C symbol:
Find this global definition:
Find functions called by this function:
Find functions calling this function:
Find this text string:
Change this text string:
Find this egrep pattern:
Find this file:
Find files #including this file:
here the cursor is blinking at 0. If I want to search again something, how I will do? How to navigate from here. I tried to google it but unable to understand anything from the tutoials. Please help me in this regard as I am complete noob to linux operating system and c programming. Thanks in advance.
I agree that cscope documentation is not very clear.
Use tab to move to the interactive part. Type your symbol name in “find this C symbol” or “Find this egrep pattern” and validate pressing RETURN.
If you want to call it from vim, type
:help if_cscop.txt
; hoping it helps!This will make a new quickfix list. use
:cn
and:cp
to navigate,:cnf
and:cpf
to navigate from file to file in the results, and:colder
and:cnewer
to restore previous quickfix lists.To exit from cscope interactive prompt, type
Ctrl-d
. If you just want to rebuild cscope's database, and not invoke cscope's interactive prompt, pass it the -b option. I usually invoke cscope ascscope -bcqR
.As for jumping around in vim using cscope, it really depends on your vim config.
Most probably, jump to tag (
Ctrl-]
) will use cscope first, then ctags (see:help cst
and:help csto
). UseCtrl-T
to go back.There are some useful mappings for cscope that you can find by typing
:help cscope-suggestions
in vim. After adding those mappings to your .vimrc, you will be able to jump to symbols usingCtrl-_ s
, the calling function usingCtrl-_ c
, etc...You can access vim's cscope documentation by typing
:help cscope
.I mostly use the following. These are very basic to understand the cscope.
Brief tutorial for beginners: http://cscope.sourceforge.net/cscope_vim_tutorial.html