तो दृश्य स्टूडियो 2010 में और बाद में , आप जिस एक्स्टेंसिबिलिटी एपीआई को चालू करना चाहते हैं वह माइक्रोसॉफ्ट के तहत हैं। विज़ुअल स्टूडियो.भाषाएं। इंटेलिसेन्स नेमस्पेस। एक उच्च स्तर पर, आप एक ICompletionSourceProvider
निर्यात करना चाहते हैं जो आपको आवश्यक वस्तुओं को प्रदान करेगा। दो अच्छी ब्लॉग पोस्ट here और here हैं जो मूल तकनीक का प्रदर्शन करती हैं।
यदि आप अपने स्क्रीनशॉट को वास्तविकता बनाना चाहते हैं तो आप दो समस्याएं चलाएंगे। (यही कारण है कि मैंने परिदृश्य की मांग की, क्योंकि मेरी सलाह यहां बदल जाएगी।) सबसे पहले, यह विधि कानूनी रूप से आपको मौजूदा समापन सेट में शामिल नहीं होने देती है, बल्कि एक नया प्रदान करती है। यूआई में यह दो टैब के रूप में दिखाई देता है, जैसे विजुअल बेसिक एडिटर में कॉमन/ऑल टैब। यह वर्तमान एपीआई की एक सीमा है। आप अपने AugmentCompletionSource
में मौजूदा समापन सेट में से किसी एक को संशोधित करने का प्रयास कर सकते हैं, लेकिन मुझे नहीं पता कि यह काम करेगा या नहीं। किसी भी मामले में यह निश्चित रूप से असमर्थित है।
दूसरा, यह जानना वाकई मुश्किल है कि चीजें कब और कहां सुझाएं। आपके उदाहरण में, आपने कहा "IntelliSense के लिए string
"। अफसोस की बात है, वीएस में कोई भी एपीआई (वर्तमान में) नहीं है जो आपको बताए कि डॉट से पहले क्या बात है। आप कुछ सरल हेरिस्टिक्स कर सकते हैं या अपने परिदृश्य के लिए कुछ पार्सर को लागू करने का प्रयास कर सकते हैं, लेकिन अब आपको स्वीकार करना होगा कि आपके पास सही परिणाम नहीं होंगे।
Roslyn प्रोजेक्ट का उद्देश्य दूसरे मुद्दे को ठीक करना है, इसलिए आपको थोड़ा और पता लगाने में उपयोगी लग सकता है। चूंकि हम उम्मीद करते हैं कि बहुत से लोग पूरा करना चाहते हैं, हम अन्य एक्स्टेंसिबिलिटी एपीआई की पेशकश करने के बारे में भी सोच रहे हैं, इसलिए आपको स्क्रैच से ICompletionSourceProvider
रोल करने की आवश्यकता नहीं है, लेकिन ऐसे एपीआई वर्तमान सीटीपी में नहीं हैं।
[अस्वीकरण:। मैं रोसलिन टीम है जो IntelliSense पर काम करता है के एक सदस्य हूँ]
स्रोत
2012-05-10 03:47:51
बस कुछ ही घंटे बिताए ive @oded गूगल के माध्यम से देख, MSDN ect और विस्तार पर कुछ भी खोजने के लिए सक्षम किया गया नहीं किया इंटेलिजेंस, क्या आपके पास इसकी सिफारिशें भी हैं कि इसे कहां देखना है? –
क्षमा करें ल्यूक, मैं नहीं [दृश्य स्टूडियो एक्सटेंसिबिलिटी फोरम] (http://social.msdn.microsoft.com/Forums/en-US/vsx/threads) एक अच्छी शुरुआत जगह होगी। लेकिन आप लिंक को पूछने के लिए सवाल नहीं उठाते हैं और वास्तव में एक विषय-वस्तु प्रोग्रामिंग प्रश्न बनते हैं। – Oded
इसके अलावा, इंटेलिजेंस में जो जोड़ना है, उसका एक उदाहरण बहुत मदद करेगा। कई अलग-अलग तकनीकों की आवश्यकता हो सकती है ... –