Opensuse11.4をインストールしました。 Vimはバージョン7です。今では通常、Linuxカーネルソースを参照するために使用しています。そのため、ホームフォルダ内のディレクトリ(/ home/aijazbaig1/cscope_DB /)内にcscopeデータベースを生成し、3つのファイルを取得しました。検索したいすべての関連ファイルのリストを含むcscope.filesファイルのほかに、cscope.out、cscope.po.out、およびcscope.in.out。
さらに、.bashrcに以下を追加しました。
CSCOPE_DB=/home/aijazbaig1/cscope_DB/cscope.out
export CSCOPE_DB
しかし、私が:cscope show
vim内から、接続がないと表示されます。誰かが私に何が悪いのか教えてもらえますか?.
あなたからの連絡に熱心です、
これは上記のコメントで言及されていますが、回答に保存されていることを確認したいと思います。
私が思いついた問題は、vimがcscopeデータベースを探す場所を知らなかったということでした。追加したとき
cs add $CSCOPE_DB
わたしの .vimrc
。すべてがうまくいった。
私は訪問したので、私は応答しようと思います。
Ctrl-spaceを使用して検索すると(またはその問題を検索すると)、このエラーが発生していました。
E567:cscope接続なし
私はついに完全な解決策を http://cscope.sourceforge.net/cscope_vim_tutorial.html 、ステップ11で見つけました。
アイデアは、cscopeのビューに含まれるソースファイルのリストを作成し、同じ場所にcscope.outを生成し、それに応じてエクスポートパスを更新することです。
find /my/project/dir -name '*.c' -o -name '*.h' > /foo/cscope.files
cscope -R -b
(ソースのサイズによっては時間がかかる場合があります)export CSCOPE_DB=/foo/cscope.out
(ターミナルにログインするたびにこれを繰り返したくない場合は、これを.bashrc/.zshrc/other-starting-scriptに入れてください)Vimで次のような「cscope接続」を追加する必要があります。
:cscope add $PATH_TO_CSCOPE.out
見る :help cs
その他の例。
Cscopeを使用してLinuxカーネルソースを探索する方法は次のとおりです。
私はエディターとしてvimを使用しています。
cscope
を実行し、ソースファイルの検索中にサブディレクトリを再帰的に調べます。cscope -R
初めて実行すると、現在のディレクトリ内にcscope.out
という名前のデータベースファイルが生成されます。以降の実行では、すでに生成されたデータベースが使用されます。
:tag
コマンドとCTRL-]
コマンドが最初にcscopeを検索し、次にctagsのタグを検索するようにします。:set cscopetag
:cs add cscope.out
これで、ctagsで使用するのと同じように、CTRL-]
とCTRL-t
を使用してナビゲートできます。 :)
PCでも同じ問題が発生します。今のところ、問題を解決するには:
ターミナルで実行:which is cscope
編集する.vimrcファイルを開きます:set csprg=/usr/bin/cscope
Ubuntu 18.04でcscope接続がないという同様の問題が発生した後、.vimrcファイルがCSCOPE_DB変数をロードしないことを発見しました。少し見て回って、 解決策 を見つけました。
これを.vimrcファイルに直接コピーするだけです。
コードの一部は、ディレクトリからcscopeファイルをロードします。キーバインドは素晴らしいボーナスです。お役に立てれば。