2010-09-30 15 views
7

Ich benutze Cscope, um sich mit allen Schlüsselwörtern vertraut zu machen, die bei der Socket-Programmierung verwendet werden. Ich ging in das Verzeichnis mit c-Dateien. Ich habe cscope benutzt. und dann habe ich nach AF_INET gesucht. Ich habe das:Wie benutze ich cscope?

#define AF_FILE   PF_FILE 
#define AF_INET   PF_INET 
#define AF_AX25   PF_AX25 

Dies war eine ganze Seite. Ich habe nur einen Teil davon veröffentlicht. Jetzt möchte ich wissen, woher dieser PF_INET kommt? Welchen Befehl sollte ich verwenden? Ich habe einen Typen gesehen, der auf PF_INET doppelklickt und einen Befehl benutzt, um ihn zu finden. Ich weiß nicht, was der Befehl ist? Bitte hilf mir dabei.

Die zweite Sache ist, wenn ich die Seite mit beenden: q Befehl. Ich komme auf diese Seite:

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: 

Hier blinkt der Cursor bei 0. Wenn ich wieder etwas suchen möchte, wie mache ich das? So navigieren Sie von hier aus. Ich habe versucht, es zu googeln, aber ich konnte nichts von den Tutoials verstehen. Bitte helfen Sie mir in dieser Hinsicht, wie ich vollständig bin, Linux-Betriebssystem und c-Programmierung. Danke im Voraus.

+0

Nur ein schneller und nützlicher Tipp: Cscope verwendet vi als Standardeditor. Das bedeutet keine Farben, keine Syntax-Hervorhebung ... Um das zu ändern und stattdessen VIM zu verwenden: export CSCOPE_EDITOR = vim – pbn

Antwort

10

Ich stimme zu, dass cscope Dokumentation nicht sehr klar ist.

Verwenden Sie die Registerkarte, um zum interaktiven Teil zu wechseln. Geben Sie Ihren Symbolnamen in "finde dieses C-Symbol" oder "Finde dieses egrep-Muster" ein und bestätige mit RETURN.

Wenn Sie es von vim aus aufrufen möchten, geben Sie :help if_cscop.txt ein; hoffe, es hilft!

:cscope add your_cscope_database 
:cscope find s [your_symbol] 

Dies wird eine neue Quickfix-Liste erstellen. Verwenden Sie :cn und :cp zum Navigieren, :cnf und :cpf, um in den Ergebnissen von Datei zu Datei zu navigieren, und :colder und :cnewer, um vorherige Quickfix-Listen wiederherzustellen.

+0

Vielen Dank Kumpel. Ich habe die Antwort für meine zweite Frage bekommen. Aber können Sie mir sagen, wie ich dieses Wort direkt suchen kann, wie ich in meiner Frage erwähnt habe, doppelklicken Sie auf das Wort und geben Sie einen Befehl, um dieses Wort zu finden. Was ist das für ein Befehl? – narayanpatra

+0

in Vim? Doppelklicken Sie nicht. Setzen Sie den Cursor auf dieses Wort und geben Sie Folgendes ein: cscope find s . Sie können es neu zuordnen mit: noremap : cscope finden s (dies wird F3 zu ihm zuordnen). – Benoit

11

Geben Sie zum Verlassen der interaktiven cscope-Eingabeaufforderung Ctrl-d ein. Wenn Sie nur die Datenbank von cscope neu erstellen und die interaktive Eingabeaufforderung von cscope nicht aufrufen möchten, geben Sie ihr die Option -b. Normalerweise rufe ich cscope als cscope -bcqR auf.

Um in vim mit cscope herumzuspringen, hängt es wirklich von Ihrer vim-Konfiguration ab.

Höchstwahrscheinlich, Sprung zum Tag (Ctrl-]) wird zuerst cscope, dann ctags (siehe :help cst und :help csto). Verwenden Sie Ctrl-T, um zurückzugehen.

Es gibt einige nützliche Zuordnungen für cscope, die Sie finden können, indem Sie :help cscope-suggestions in vim eingeben. diese Zuordnungen zu Ihrem .vimrc Nach dem Hinzufügen können Sie auf Symbole springen Ctrl-_ s verwenden, die anrufende Funktion Ctrl-_ c verwenden, etc ...

Sie können durch Eingabe von :help cscope cscope Dokumentation zugreifen Vims.

0

ich meist nur die folgenden. Diese sind sehr einfach, um das Oszilloskop zu verstehen.

  1. "cscope -R" Dann erhalten Sie Optionen.
  2. Drücken Sie den Pfeil nach unten. Dann werden Sie zu Ihrer gewünschten Option wechseln.Tippen Sie bei der jeweiligen Option ein, was Sie wollen.
  3. Aus dem Suchergebnis. Verwenden Sie die Pfeiltasten (Nach oben und Nach unten) und drücken Sie dann die Eingabetaste, um die detaillierte Datei anzuzeigen.
  4. ": q" zum Beenden der Datei.
  5. Drücken Sie die Tabulatortaste, um zu den Optionen des Oszilloskops zu gelangen.
  6. "Strg + d" zum Verlassen des Oszilloskops.