web-dev-qa-db-ja.com

cscopeの使い方は?

私はcscopeを使用して、ソケットプログラミングで使用されるすべてのキーワードに精通しています。私はcファイルのあるディレクトリに行きました。私はcscopeを使用しました。次に、AF_INETを検索しました。私はこれを得た :

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

これは全ページでした。その一部しか公開していません。このPF_INETがどこから来ているのか知りたいですか?どのコマンドを使用する必要がありますか。 PF_INEtをダブルクリックし、コマンドを使用してそれを見つける人を見たことがあります。コマンドが何なのかわかりませんか?親切にこれで私を助けてください。

2つ目は、:qコマンドでページを終了したときです。私はこのページに来ます:

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:

ここではカーソルが0で点滅しています。何かをもう一度検索したい場合はどうすればよいですか?ここからナビゲートする方法。私はそれをグーグルしようとしましたが、tutoialsから何も理解できませんでした。私はLinuxオペレーティングシステムとCプログラミングに完全に精通しているので、この点で私を助けてください。前もって感謝します。

10
narayanpatra

Cscopeのドキュメントがあまり明確ではないことに同意します。

タブを使用して、インタラクティブな部分に移動します。 「このCシンボルを検索」または「このegrepパターンを検索」にシンボル名を入力し、RETURNキーを押して検証します。

Vimから呼び出す場合は、:help if_cscop.txtと入力します。それが役立つことを願っています!

:cscope add your_cscope_database
:cscope find s [your_symbol]

これにより、新しいクイックフィックスリストが作成されます。 :cn:cpを使用してナビゲートし、:cnf:cpfを使用して結果のファイル間をナビゲートし、:colder:cnewerを使用して復元します以前のクイックフィックスリスト。

14
Benoit

Cscopeインタラクティブプロンプトを終了するには、Ctrl-dと入力します。 cscopeのデータベースを再構築するだけで、cscopeの対話型プロンプトを呼び出さない場合は、-bオプションを渡します。私は通常、cscopeをcscope -bcqRとして呼び出します。

Cscopeを使用してvimでジャンプすることに関しては、実際にはvimの設定によって異なります。

ほとんどの場合、タグ(Ctrl-])にジャンプすると、最初にcscopeが使用され、次にctagsが使用されます(:help cstおよび:help cstoを参照)。戻るにはCtrl-Tを使用します。

Vimで:help cscope-suggestionsと入力すると、cscopeに役立つマッピングがいくつか見つかります。これらのマッピングを.vimrcに追加すると、Ctrl-_ sを使用してシンボルにジャンプしたり、Ctrl-_ cを使用して関数を呼び出したりすることができます。

:help cscopeと入力すると、vimのcscopeドキュメントにアクセスできます。

13
ninjalj

私は主に以下を使用します。これらは、cscopeを理解するための非常に基本的なものです。

  1. 「cscope-R」次に、オプションが表示されます。
  2. 下矢印を押します。次に、必要なオプションに移動します。それぞれのオプションで必要なものを入力します。
  3. 検索結果から。矢印(上下)を使用し、「Enterキー」を押して詳細ファイルを表示します。
  4. 「:q」でファイルを終了します。
  5. 「Tabキー」を押して、cscopeオプションを表示します。
  6. 「ctrl + d」でcscopeを終了します。
6

初心者向けの簡単なチュートリアル: http://cscope.sourceforge.net/cscope_vim_tutorial.html

0
Ravi