2011-12-27 15 views
5

के लिए कोडरश शैली टाइप किए गए टेम्पलेट्स मैं कोडरश और टेम्पलेट के चारों ओर उनके दर्शन का एक बड़ा प्रशंसक हूं। मेरे वर्तमान काम पर, हम बड़ी मात्रा में जोड़ी कर रहे होंगे और सर्वसम्मति रीशेर्पर (v6) के लिए प्राथमिकता है, जो मुझे काफी जगह पर रखती है जहां मुझे इसका उपयोग करना चाहिए।ReSharper

मैं यहां कोडरश/रिशेर्पर युद्ध शुरू करने की तलाश नहीं कर रहा हूं। Resharper के बारे में बहुत सारी चीज़ें पसंद हैं, लेकिन एक बात है कि मुझे रीशेर्पर में अतीत में मुश्किल हो रही है।

रीशेर्पर का लाइव टेम्पलेट तंत्र, अच्छा अच्छा, कोडरश के तरीके को टाइप करने के लिए अंतर्निहित विचार नहीं है (कम से कम मैं बता सकता हूं)। इस प्रकार एक सरल उदाहरण है। जनरल के लिए निम्न कोड:

public String MyStringProperty { get; set; } 

CodeRush में ... मैं "के रूप में" टाइप कर सकते ('एक' AutoProperty और स्ट्रिंग के लिए 'एस' के लिए) तो बस गुण का नाम बदल जाते हैं।

रीशेपर में, मुझे "प्रोप" (संपत्ति के लिए) टाइप करने की आवश्यकता है, फिर प्रकार और नाम सेट करें।

रीशेर्पर के लाइव टेम्पलेट्स में टाइप जागरूकता या प्रकार शॉर्टकट के लिए एक समान धारणा प्रतीत नहीं होती है। ऐसे में, आपको पूर्व-टाइप किए गए चर, गुण, विधियां इत्यादि प्राप्त करने के लिए कई दो और तीन वर्ण टेम्पलेट्स के समान कुछ नहीं दिखता है ...

तो आखिर में उस पृष्ठभूमि के बाद प्रश्न। क्या प्रत्येक टेम्पलेट/प्रकार संयोजन के लिए नया लाइव टेम्पलेट बनाये बिना रीशेर्पर में "टाइप किए गए टेम्पलेट्स" की इस धारणा को दोहराने का कोई तरीका है?

उत्तर

4

वर्तमान में, ReSharper करता है आप जिस उपयोग पैटर्न का जिक्र कर रहे हैं उसका समर्थन नहीं करते हैं। हालांकि, ऐसे दो विकल्प हैं जिन्हें मैं संभव बनाने के लिए सोच सकता हूं।

  • एक विकल्प सभी सामान्य उपयोग मामलों के लिए लाइव टेम्पलेट जेनरेट करना है। मैं this file का उपयोग करता हूं, लेकिन कृपया ध्यान दें कि इसका परीक्षण R # 6.1 के साथ नहीं किया गया है।
  • एक और विकल्प यह करने के लिए बस प्लग-इन लिखना होगा। ReSharper एसडीके में एक HTMLZen उदाहरण है जो कुछ बहुत समान करता है, यानी कोड के एक टुकड़े में एक डीएसएल स्ट्रिंग का विस्तार करें। आप आसानी से निमोनिक विस्तार के लिए भी ऐसा कर सकते हैं।

ध्यान दें कि जो भी विकल्प चुनें, आप अंतरिक्ष — दबाने यह बस ReSharper में संभव अभी नहीं है द्वारा टेम्पलेट्स का विस्तार करने की क्षमता नहीं मिल जाएगा।

यदि आपके पास और प्रश्न हैं तो कृपया मुझे बताएं।

दमित्री

+0

दिमित्री, जानकारी के लिए धन्यवाद। में देखता हूँ में क्या कर सकता हूँ। अंतरिक्ष के साथ एक टेम्पलेट का विस्तार करना वास्तव में मेरे लिए एक मुद्दा नहीं है। वास्तव में प्रक्रिया का वर्णन करने के लिए वास्तव में इसका इस्तेमाल किया गया था। टैब, या कोई अन्य विस्तार तंत्र बस ठीक है। –

+0

मैंने उपरोक्त फ़ाइल को 6.1 में आयात करने का प्रयास किया, ऐसा लगता है कि यह अच्छी तरह से काम करता है। –

3

मुझे नहीं लगता कि रिशेर्पर को एक टेम्पलेट प्राप्त करना संभव है जो एक अक्षर का नाम एक अक्षर प्रकार के बाद लेता है। आपको प्रत्येक प्रकार के लिए एक नया टेम्पलेट बनाना होगा, उदा। '' के रूप में और के रूप में यह निर्धारित करें:

public string $NAME$ { get; set; } 

जहां उपलब्ध होने पर आप बदलना चाहते सकते हैं, अर्थात सी # फ़ाइलों जहां प्रकार सदस्य घोषणा अनुमति दी है।

आप 'सहारा' templete नाम बदलने सकता है सिर्फ 'एक' है, तो आप टाइप करेंगे करने के लिए: 'एक', टैब, 'एस', टैब, टैब, 'property_name', टैब

+0

हाँ, कि काफी मैं क्या खोज की है है। धन्यवाद। –