32

वर्तमान में वीएस में एक बहुत उपयोगी सुविधा है: सॉर्टिंग्स (सी #)। config फाइल में एक्सएमएल नोड्स -विजुअल स्टूडियो संदर्भ मेनू से चयनित टेक्स्ट को क्रमबद्ध करें

मैं किसी भी यादृच्छिक पाठ के लिए ही कार्यक्षमता, उदाहरण के लिए चाहते हैं।

इसे कार्यान्वित करने में कितना जटिल है? वीएस एडिन, है ना? क्या कुछ वीएस एपीआई को कॉल करना संभव है जिसका प्रयोग यूजिंग को सॉर्ट करने के लिए किया जाता है?

उत्तर

11

बस पाया एक अच्छा मुक्त एडऑन: Menees VS Tools 2012 (या 2010 ver) - वास्तव में है और एक करता है कुछ और पाठ चालें। जब मैंने इसे स्थापित किया, तो कुछ मामूली नकारात्मक थे, लेकिन समीक्षा पृष्ठ पर टिप्पणी छोड़ने के बाद यह दिनों के भीतर तय हो गया। जाने के लिए Waay! Menees VS Tools 2017

22

संपादित करें: ध्यान दें कि यह समाधान VS2013 या उच्चतर पर काम नहीं करता है, क्योंकि मैक्रोज़ के लिए समर्थन हटा दिया गया था। आरंभ करने के लिए, मैक्रो, रिकार्ड अस्थाई मैक्रो दृश्य स्टूडियो में बनाया गया मैक्रो है उपयोग उपकरण:

आप जरूरी यह करने के लिए एक वी.एस. ऐड कोड करने की आवश्यकता नहीं है।।

यहाँ एक 'क्रमबद्ध लाइन्स' कमांड मैं एक साथ कोड के आधार पर अनाधिकृत प्रवेश किया है रिकॉर्ड अस्थाई मैक्रो मुझे दिया है कि:

Imports System 
Imports EnvDTE 

Public Module TimModule 
    Sub SortLines() 
     Dim Selection As TextSelection = DTE.ActiveDocument.Selection 
     Dim Lines() As String = Selection.Text.Replace(Environment.NewLine, Chr(13)).Split(Chr(13)) 
     Array.Sort(Lines) 
     DTE.UndoContext.Open("Sort Lines") 
     ' Edit - see comments 
     ' Selection.Text = String.Join(Environment.NewLine, Lines) 
     Selection.Delete 
     Selection.Insert(String.Join(Environment.NewLine, Lines)) 
     DTE.UndoContext.Close() 
    End Sub 
End Module 
+5

आप TextSelection.Text संपत्ति का उपयोग कर रहे बदलने के लिए ये पाठ। यह आमतौर पर बहुत धीमी निष्पादन का कारण होता है। इसमें कई सेकंड लग सकते हैं। TextSelection का उपयोग करना बेहतर तरीका है। विधियों को हटाएं और हटाएं। मैंने इसका परीक्षण नहीं किया है, लेकिन मैं लाइन को प्रतिस्थापित करने की सलाह देता हूं: चयन। टेक्स्ट = स्ट्रिंग। जॉइन (पर्यावरण। न्यूलाइन, लाइन्स) 2 लाइनों के साथ: चयन। हटाएं चयन। प्रविष्ट करें (स्ट्रिंग.जॉइन (पर्यावरण। न्यूलाइन, लाइन्स)) तो फिर तुम उपकरण पट्टी या मेनू पर अपने मैक्रो जगह कर सकते हैं (http://www.helixoft.com/blog/archives/7) या (यह करने के लिए कुंजी शॉर्टकट असाइन http://www.helixoft.com/blog/अभिलेखागार/8) –

+2

@ पीटर, धन्यवाद। मैंने इसे लंबे समय तक लिखने में खर्च नहीं किया - अगर आप ओपी का जवाब जोड़ते हैं तो मैं इसे –

+0

वोट दूंगा। पीटर के सुझाव ने मेरे चलने का समय ~ 30 सेकंड से लगभग तात्कालिक तक बदल दिया है, और कुछ कचरा-रेखाएं उत्पन्न होने से भी रोक दी हैं। –

5

आप, उदात्त पाठ में कोड कॉपी कर सकते हैं कोड की धारा का चयन करें और F9 मारा (या संपादित करने के लिए जाना> क्रमबद्ध लाइन्स): =)

एक 2017 संस्करण अब नहीं है। फिर आप उसे विजुअल स्टूडियो में कॉपी कर सकते हैं।

+0

अच्छा विचार के साथ उपयोग कर रहा हूं। emacs के साथ ही: क्षेत्र चिह्नित करें, फिर Alt-X सॉर्ट-लाइन – user829755

2

मैं व्यक्तिगत रूप से मैड्स Kristensen द्वारा Web Essentials एक्सटेंशन का उपयोग कर रहा हूँ। आप बस उन लाइनों का चयन करते हैं जिन्हें आप सॉर्ट करना चाहते हैं और Alt + 3 या Alt + 4 (asc/desc)।

13

दृश्य स्टूडियो के लिए एक अच्छा AddOn Code Maid

आप कुछ लाइनों "क्रमबद्ध लाइंस"

enter image description here

और देखा, अपने लाइनों वर्णमाला के क्रम में अच्छी तरह से हल कर रहे हैं का चयन करें और संदर्भ मेनू से चुना है:

enter image description here

+0

यह C++ स्रोत फ़ाइल संपादित करते समय VisualStudio 2013 पर कोड मैड 10.2 के लिए काम नहीं करता है। चयनित लाइनें अपरिवर्तित बनी हुई हैं। – Eponymous

संबंधित मुद्दे