2011-06-23 26 views
9

मैंने 11.4 खोल दिया है। विम संस्करण 7 है। अब मैं आमतौर पर लिनक्स कर्नेल स्रोत ब्राउज़ करने के लिए इसका उपयोग करता हूं। तो मैंने अपने घर फ़ोल्डर i.e./home/aijazbaig1/cscope_DB/के भीतर एक निर्देशिका के अंदर cscope डेटाबेस जेनरेट किया/और मुझे 3 फाइलें मिलीं। cscope.out, cscope.po.out और cscope.in.out cscope.files फ़ाइल के अलावा जिसमें सभी प्रासंगिक फ़ाइलों की सूची शामिल है जिन्हें मैं खोजना चाहता हूं।vim cscope डेटाबेस से कनेक्ट नहीं हो सकता

साथ ही मैं अपने .bashrc के लिए निम्न जोड़ लिया है:

CSCOPE_DB=/home/aijazbaig1/cscope_DB/cscope.out 
export CSCOPE_DB 

लेकिन यह कहते हैं कोई कनेक्शन नहीं है जब मैं vim के भीतर से एक :cscope show है। क्या कोई मुझे बता सकता है कि क्या गलत हो रहा है।

तुम से सुनने के इच्छुक,

+0

कई समस्याएं इसका कारण बन सकती हैं - इस साइट को सहायता के लिए देखें: http://vim.wikia.com/wiki/Cscope – Coffee

+2

हाँ मैंने यहां क्या उल्लेख किया था: http://stackoverflow.com/ प्रश्न/563616/vim-and-ctags-tips-and-tricks इसलिए मैंने 'ifs (' cscope ') ब्लॉक के भीतर से' cs $ CSCOPE_DB 'लाइन जोड़ दी है। अब ऐसा लगता है कि मैं काम कर रहा हूं लेकिन मैं अभी भी ctrl + '\' + s और ऐसे आदेशों का उपयोग नहीं कर सकता जहां सीधे मेरा कर्सर है। मुझे लगता है कि मुझे cscope_maps.vim फ़ाइल डाउनलोड करनी होगी और इसे मेरे .vim/प्लगइन/निर्देशिका में रखना होगा ?? लेकिन यह एक वर्चुअल मशीन और फ़ाइल साझाकरण काम नहीं कर रहा है :(। वैसे भी किसी अन्य अनुभाग के लिए कोई विषय है –

+0

हां मैं cscope_maps.vim फ़ाइल के डेटा को मेरे .vimrc में चिपके हुए काम कर रहे प्रमुख स्ट्रोक प्राप्त करने में सक्षम था। –

उत्तर

9

मैं समझ के बाद से मैं यात्रा करने के बाद, मैं जवाब की कोशिश करेंगे।

E567:

मैं जब Ctrl-Space रों (या उस बात के लिए किसी भी खोज) का उपयोग करके खोज इस त्रुटि हो रही थी कोई cscope कनेक्शन

मैं अंत में http://cscope.sourceforge.net/cscope_vim_tutorial.html पर पूर्ण समाधान नहीं मिला , चरण 11.

विचार यह है कि आप सीएससीओपी के दृश्य में शामिल करने के लिए स्रोत फ़ाइलों की एक सूची बनाते हैं, उसी स्थान पर 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/अन्य-शुरू कर-लिपि में इस डाल अगर तुम नहीं है (यह अपने स्रोत के आकार के आधार पर कुछ समय लग सकता है) जब भी आप टर्मिनल में लॉग इन करते हैं, तो इसे दोहराना चाहते हैं)
9

यह ऊपर दी गई टिप्पणियों में उल्लिखित है, लेकिन मैं यह सुनिश्चित करना चाहता हूं कि यह एक उत्तर में संरक्षित है।

मेरे लिए यह मुद्दा आया था कि विम को पता नहीं था कि कोस्कोप डेटाबेस कहां देखना है। जब मैंने

cs add $CSCOPE_DB 

को मेरे .vimrc में जोड़ा। सब कुछ ठीक हो गया।

+0

इससे मुझे अपने उबंटू पर भी मदद मिली –

0

मेरे पास मेरे पीसी पर एक ही समस्या है।

  1. टर्मिनल पर निष्पादित करें:: अभी के लिए, इस मुद्दे को हल करने के लिए which is cscope

  2. ओपन .vimrc फ़ाइल को संपादित करने के लिए: set csprg=/usr/bin/cscope

-1

आप एक "cscope कनेक्शन" जोड़ने की जरूरत है, इस तरह vim में:

:cscope add $PATH_TO_CSCOPE.out 

:help cs देखें और ज्यादा उदाहरण।

मैं अपने संपादक के रूप में vim का उपयोग करें:

0

यहाँ कैसे मैं cscope लिनक्स कर्नेल स्रोत का उपयोग का पता लगाने के लिए है।

  1. गिरी स्रोत रूट निर्देशिका के अंदर चली आ रही है, इंटरैक्टिव मोड में cscope चलाने जबकि रिकर्सिवली स्रोत फ़ाइलों के लिए खोज के दौरान उप निर्देशिकाओं से गुजर रही:

cscope -R

जब पहली बार के लिए चलाने के लिए यह, वर्तमान निर्देशिका के अंदर डेटाबेस फ़ाइल जेनरेट करेगा: cscope.out। कोई भी बाद वाला रन पहले से जेनरेट किए गए डेटाबेस का उपयोग करेगा।

  1. कुछ भी या किसी भी फ़ाइल के लिए खोजें और इसे खोलें।

:set cscopetag

  1. सेट cscope वर्तमान अंदर डेटाबेस:
  2. vim में सेट cscope टैग :tag और CTRL-] आदेशों पहले cscope माध्यम से खोज और फिर ctags 'टैग बनाने के लिए विम सत्र:

:cs add cscope.out

अब आप 012 का उपयोग कर सकतेऔर CTRL-t जैसा कि आप सीटीएजी में घूमने के लिए करेंगे! :)