Reparar rápidamente el código fuente
: Establezca cscopequickfix=s-, c-, d-, i-, t-, e-
Esto es para establecer si use la ventana de corrección rápida para mostrar los resultados de cscope, el uso se mencionará más adelante.
Al igual que con Ctags, para utilizar su funcionalidad primero debes generar una base de datos cscope para tu código y ejecutar el siguiente comando en el directorio raíz de tu proyecto:
$ cd / home/ wooin/vim71/
$ cscope -Rbq
#Después de eso, se generan tres archivos.
$ ll cscope. *
-rw-rw-r - 1 wooin wooin
-rw-rw-r-1 wooin wooin 6,7 metros
-rw-rw-r -1 wooin wooin 5.1M 2007-09-30 10:56 cscope .po out
#Abre el archivo y comienza a codificar.
$ cd src
Parte principal de seis dólares c
Lo primero que debe hacer después de ingresar a vim es importar el archivo cscope recién generado a vim y usar el siguiente comando:
:cs add/home/woo in/vim 71/cscope out/home/woo in/vim 71
El comando anterior es muy importante y debe ejecutarse. completado por completo Escríbalo, no solo la primera mitad:
:cs add/home/woo in/vim 71/cscope out
Porque el código fuente está en un formato múltiple. directorio de nivel, si esto escribe, cscope no funciona en el código fuente en el subdirectorio. Por supuesto, no importa si su código fuente está en el mismo directorio de nivel. Si desea utilizar cscope con frecuencia, puede agregar la oración anterior a ~/.vimrc.
Practiquemos, busquemos la definición de la función vim_strsave() y usemos el comando:
:cs find g vim_strsave
Después de presionar la tecla Enter, Saltará automáticamente a la definición de vim_strsave(). En este punto, definitivamente dirás que ctag también puede hacer esto, entonces el ctag que se menciona a continuación no puede hacerlo. Quiero saber dónde se llama a vim_strsave() y usar el comando:
:cs find c vim_strsave
Después de presionar la tecla Intro, vim saltará automáticamente al primero Dónde Se cumplen los requisitos, la barra de comandos mostrará cuántos resultados cumplen los requisitos.
Si no está satisfecho con la posición de salto automático y desea ver otros resultados, puede utilizar el siguiente comando para abrir la ventana QuickFix:
:en sentido horario
Entonces puedes elegir lentamente_
La función principal de cscope se implementa mediante el mismo subcomando "buscar"
Uso de "búsqueda de cscope":
cs busca c|d|e|f|g|i|s|t nombre
0 o s
Busca este símbolo C (puedes saltarte el comentario)
1 o g
Encuentra esta definición
2 o d
Encuentra la función llamada por esta función.
3 o c
Encuentra la función que llama a esta función.
4 o t
encontrar esta cadena
6 o e
encontrar este patrón egrep
7 o f
encuentro este archivo
8 o yo
encuentro el archivo que contiene este archivo.
Sería realmente molesto si tuvieras que introducir una larga lista de comandos cada vez que buscas. El manual de ayuda de Cscope recomienda utilizar algunas teclas de acceso directo. A continuación se muestra uno de ellos que también uso. Agregue lo siguiente a ~/.
vimrc y reinicie vim:
nmap <c-_>s:cs find s<c-R>= expand("<cword>)<CR><CR>
nmap & ltc-_ & gt;g :cs buscar g & ltc-R & gt;= expandir(" & lt;cword >)& ltCR & gt& ltCR & gt
nmap & ltc-_ & gt;c :cs buscar c & ltc-R & gt;= expandir(" & lt;cword >)& ltCR & gt& ltCR & gt
nmap & ltc-_ & gt;t:cs buscar t & ltc-R & gt;= expandir(" & lt;cword >)& ltCR & gt& ltCR & gt
nmap & ltc-_ & gt;e:cs buscar e & ltc-R & gt;= expandir(" & lt;cword >)& ltCR & gt& ltCR & gt
nmap & ltc-_ & gt;f :cs buscar f & ltc-R & > & lt;cfile >)& ltCR & gt$ & ltCR & gt
nmap & ltc-_ & gt;d :cs buscar d & ltc-R & gt;= expandir(" & lt;cword >)& ltCR & gt& ltCR & gt p>
Cuando el cursor esté sobre la palabra que deseas buscar, presiona
Existe un pequeño truco para presionar esta combinación de teclas. La forma de presionar
& ltc-_ & gt;G es presionar "Ctrl+Shift+-" primero y luego presionar rápidamente "G".
Lo extraño es que esta oración:
nmap <c-_>i:cs find I ^<c-R>= expand("<cfile >)& ltCR & gt$ & ltCR & gt
No funcionó en mi vim pero lo cambié a:
nmap & ltc-_ & gt; ;= expand("<cfile>)& ltCR>& ltCR>
funciona bien. No sé por qué. Si alguien lo sabe, por favor dímelo.
Puedes aprender lentamente otras funciones de cscope por ti mismo a través del manual de ayuda.
Restablecer: Reinicializa todas las conexiones.
Uso: reinicio de cs