2009-10-21 13 views
13

मेरे सामान्य उपकरण अपना शोध एल्गोरिथम को लागू करना जी ++ एक Linux सिस्टम पर साथ Emacs हैं। पिछले कुछ सालों से, मैंने काफी बुनियादी तरीके से एमएक्स का उपयोग किया है। मैं सी या सी ++ फाइलें खोलता हूं, उन्हें अपनी पसंद की सिंटैक्स हाइलाइटिंग स्कीम के साथ संपादित करता हूं और डिबगिंग के लिए एमएसीबी के भीतर जीडीबी का उपयोग करके एमएसी (या शायद टर्मिनल से) के भीतर से अन्य सामान करता हूं। मैं etags और ctags के बारे में जानता हूं और etags और emacs के साथ थोड़ा सा खेला है लेकिन उपकरण के साथ "मीठा स्थान" नहीं लग रहा है।Emacs, etags और Emacs का उपयोग कर

मैं सोच रहा था, अन्य लोग इमैक को कॉन्फ़िगर करने के लिए क्या करते हैं ताकि यह ईटैग और अन्य उपकरणों के साथ अच्छी तरह से मेल खा सके? इसे बेहतर आईडीई बनाने के लिए emacs को क्या करने की आवश्यकता है?

उत्तर

16

सिर्फ जानकारी टैगिंग के लिए, मैं भी GNU Global सलाह देते हैं। CScope भी बहुत कुछ कर सकते हैं। दोनों मामलों में, वे नाम से टैग के स्थान, और किसी विशेष टैग के उपयोग को खोजने का एक तरीका प्रदान करते हैं।

"आईडीई स्टफ" के लिए केवल टैगिंग सिस्टम की तुलना में इसके लिए और भी कुछ है। इसके लिए, मैं Emacs के लिए CEDET उपकरण सेट करने की अनुशंसा करता हूं। यह एक प्रोजेक्ट मैनेजमेंट सिस्टम (ईडीई) प्रदान करता है जो आपके लिए आपके कोड को संकलित करने के लिए मेकफ़ाइल बना सकता है। एक पार्सिंग और कोड विश्लेषण भाग भी है (अर्थपूर्ण) जो स्मार्ट पूर्णता प्रदान करता है। एक टेम्पलेट/कोड जनरेशन सिस्टम (एसआरकोड) है जो टैग को अर्थात् बैक से कोड में परिवर्तित कर सकता है। यहां तक ​​कि एक यूएमएल आरेख संपादक (सीओजीआरई) भी है जो आप Emacs में खींचे गए क्लास आरेख से कोड उत्पन्न कर सकते हैं।

सीडीईटी का उपयोग करने वाले अधिकांश लोग केवल ECB के साथ संयोजन में पार्सर और स्मार्ट समापन सिस्टम का उपयोग करते हैं, और सीडीईटी का केवल एक सबसेट उपयोग करना ठीक है।

अच्छी माप के लिए सीईडीईटी जीएनयू ग्लोबल डेटाबेस के साथ भी एकीकृत होगा ताकि आप एमएसीएस के लिए नियमित जीएनयू ग्लोबल इंटरफेस के साथ टैग स्थानों के अलावा प्रतीक उपयोगों का संदर्भ दे सकें।

+0

2samix: आप CEDET - http://xtalk.msk.su/~ott के बारे में मेरा आलेख उपयोगी पाएंगे /en/writings/emacs-devenv/EmacsCedet.html –

3

हमने हाल ही में GNU Global का उपयोग ईटैग के प्रतिस्थापन के रूप में करना शुरू कर दिया है, और मैं बहुत प्रभावित हूं। हम idutils का भी उपयोग करते हैं जो स्रोत कोड में किसी भी स्ट्रिंग को खोजने का तेज़ तरीका प्रदान करता है।

+0

क्या आप थोड़ा सा विस्तार कर सकते हैं कि आप जीएनयू ग्लोबल को ईटैग पर क्यों पसंद करते हैं? असल में, यह पहली बार है जब मैं जीएन ग्लोबल के बारे में सुन रहा हूं और इसके बारे में कुछ भी नहीं जानता। मुझे आश्चर्य है कि यह इटैग के साथ तुलना कैसे करता है। जीएनयू ग्लोबल की वेबसाइट से मुझे पता है कि यह कम भाषाओं का समर्थन करता है, लेकिन मुझे ज्यादातर सी और सी ++ में दिलचस्पी है, इसलिए यह एक प्रबल नहीं है। धन्यवाद। – user193272

+1

बहुत तेज खोज, सीडीईटी में gtags का भी उपयोग किया जाता है और विशिष्ट कार्यों, आदि के लिए कॉल खोजने की अनुमति देता है .. –

+1

मैं एलेक्स से सहमत हूं, gtags etags से अधिक तेज़ हैं और आमतौर पर अधिक सटीक हैं। मुझे कुछ समस्याएं मिलीं, जहां यह गलत तरीके से पार्सिंग कोड था, लेकिन अधिकांश भाग के लिए यह अच्छी तरह से काम करता है। – MikeT