जैसा कि शीर्षक कहता है, मैं एक वीएस एक्सटेंशन बनाना चाहता हूं जो संपादक विंडो (विभिन्न भाषाओं के लिए) पर किए गए कुछ परिवर्तनों पर प्रतिक्रिया करने में सक्षम हो। जरूरी नहीं कि एक अलंकरण हो।

ऐसा करने के लिए मैं रोजलिन सेवा एपीआई के माध्यम से संपादक दस्तावेज़ का विश्लेषण करने में सक्षम होना चाहता हूं (कि अगर मैं अच्छी तरह से समझ गया तो अब Microsoft.CodeAnalysis के लिए हिस्सा है)।

क्या कोई कुछ दस्तावेज इंगित कर सकता है? ऐसा करने का सबसे अच्छा अभ्यास क्या है?

एमईएफ के माध्यम से आयात करने के लिए इंटरफेस क्या हैं?

4
tanathos 21 सितंबर 2017, 14:28

1 उत्तर

सबसे बढ़िया उत्तर

उदाहरण के तौर पर आप लाइट बल्ब में नई सुविधा जोड़ने के लिए एक कस्टम ISuggestedActionsSourceProvider निर्यात कर सकते हैं, आप एक नया रिफैक्टरिंग जोड़ने के लिए ExportCodeRefactoringProviderAttribute का उपयोग कर सकते हैं, आप भी पाठ संपादक में तत्वों को वर्गीकृत करने के लिए IClassifierProvider और ITagProvider को निर्यात कर सकते हैं, वर्तमान VS दस्तावेज़ को पुनः प्राप्त करने के लिए ITextDocumentFactoryService आयात कर सकते हैं ITextBuffer और आदि द्वारा।

इसके अलावा, आप किसी प्रकार के विश्लेषण के लिए केवल Microsoft.CodeAnalysis का उपयोग करने के लिए पर्याप्त नहीं होंगे, इसलिए आपको इन मामलों में कुछ अतिरिक्त पैकेज जोड़ने की आवश्यकता होगी। उदाहरण के तौर पर ये पैकेज Microsoft.CodeAnalysis.EditorFeatures.Text, Microsoft.CodeAnalysis.Workspaces.Common और आदि हो सकते हैं।

यदि आप समुदाय से अधिक ठोस उत्तर प्राप्त करना चाहते हैं तो आपको यह स्पष्ट करना चाहिए कि आप प्रश्न में वास्तव में क्या चाहते हैं।

इसके अलावा, आप अधिक उपयोगी लिंक और उदाहरण देख सकते हैं: Roslynator एक कोड को फिर से तैयार कर रहा है और उसका विश्लेषण कर रहा है, संपादक एक्सटेंशन प्रारंभ करना, लाइट बल्ब गाइड, हाइलाइट करने के लिए वर्गीकरण तत्व

4
George Alexandria 22 सितंबर 2017, 09:53