स्रोत-कोड संपादक

सोर्स-कोड एडिटर एक पाठ संपादक प्रोग्राम है जिसे विशेष रूप से कंप्यूटर प्रोग्राम के सोर्स कोड को संपादित करने के लिए डिज़ाइन किया गया है। यह एक स्टैंडअलोन एप्लिकेशन हो सकता है या इसे एक एकीकृत विकास वातावरण (आईडीई) या वेब ब्राउज़र में बनाया जा सकता है। स्रोत-कोड संपादक एक मूलभूत प्रोग्रामिंग उपकरण हैं, क्योंकि प्रोग्रामर का मौलिक कार्य स्रोत कोड को लिखना और संपादित करना है।

विशेषताएं
स्रोत-कोड संपादकों में विशेष रूप से स्रोत कोड के टाइपिंग को सरल और तेज करने के लिए डिज़ाइन की गई विशेषताएँ होती हैं, जैसे वाक्य - विन्यास पर प्रकाश डालना, इंडेंटेशन शैली, स्वतः पूर्ण और ब्रेस मिलान कार्यक्षमता। ये संपादक सॉफ़्टवेयर-विकास प्रक्रिया के लिए प्रासंगिक एक संकलक, दुभाषिया (कंप्यूटिंग), डिबगर, या अन्य प्रोग्राम चलाने का एक सुविधाजनक तरीका भी प्रदान करते हैं। इसलिए, जबकि माइक्रोसॉफ्ट नोटपैड जैसे कई पाठ संपादकों का उपयोग स्रोत कोड को संपादित करने के लिए किया जा सकता है, अगर वे कोड के संपादन को बढ़ाते, स्वचालित या आसान नहीं करते हैं, तो वे स्रोत-कोड संपादक नहीं हैं।

संरचना संपादक स्रोत-कोड संपादक का एक अलग रूप है, जहां कच्चे पाठ को संपादित करने के बजाय, कोड की संरचना में हेरफेर किया जाता है, आमतौर पर सार वाक्य रचना का पेड़ इस मामले में सिंटैक्स हाइलाइटिंग, सत्यापन और कोड स्वरूपण जैसी विशेषताएं कंक्रीट सिंटैक्स ट्री या अमूर्त सिंटैक्स ट्री से आसानी से और कुशलता से लागू की जाती हैं, लेकिन संपादन अक्सर फ्री-फॉर्म टेक्स्ट की तुलना में अधिक कठोर होता है। संरचना संपादकों को भी प्रत्येक भाषा के लिए व्यापक समर्थन की आवश्यकता होती है, और इस प्रकार पाठ संपादकों की तुलना में नई भाषाओं का विस्तार करना कठिन होता है, जहां मूल समर्थन के लिए केवल सिंटैक्स हाइलाइटिंग या इंडेंटेशन का समर्थन करने की आवश्यकता होती है। इस कारण से, सख्त संरचना संपादक स्रोत कोड संपादन के लिए लोकप्रिय नहीं हैं, हालांकि कुछ आईडीई समान कार्यक्षमता प्रदान करते हैं।

एक स्रोत-कोड संपादक कोड दर्ज करते समय सिंटैक्स की जांच कर सकता है और तुरंत सिंटैक्स समस्याओं की चेतावनी दे सकता है। कुछ स्रोत-कोड संपादक स्रोत कोड को संपीड़ित करना, आम तौर पर सामान्य खोजशब्दों को सिंगल-बाइट टोकन में परिवर्तित करना, अनावश्यक व्हाट्सएप को हटाना और संख्याओं को बाइनरी रूप में परिवर्तित करना। इस तरह के टोकनिंग संपादक बाद में इसे देखते समय स्रोत कोड को असम्पीडित करते हैं, संभवतः इसे लगातार कैपिटलाइज़ेशन और रिक्ति के साथ सुंदर रूप से प्रिंट करते हैं। कुछ स्रोत-कोड संपादक दोनों करते हैं। माइक्रोसॉफ्ट के विजुअल स्टूडियो कोड में पहली बार उपयोग किया जाने वाला भाषा सर्वर प्रोटोकॉल, स्रोत कोड संपादकों को एलएसपी क्लाइंट को लागू करने की अनुमति देता है जो एलएसपी सर्वर के साथ किसी भी भाषा के बारे में सिंटैक्स जानकारी पढ़ सकता है। यह स्रोत कोड संपादकों को सिंटैक्स हाइलाइटिंग, रीफैक्टरिंग और संदर्भ खोज के साथ आसानी से अधिक भाषाओं का समर्थन करने की अनुमति देता है। कई स्रोत कोड संपादक जैसे कि नियोविम और कोष्ठक एक अंतर्निहित LSP क्लाइंट जोड़ा है जबकि अन्य संपादकों जैसे Emacs, क्योंकि, और उदात्त पाठ एक अलग प्लग-इन के माध्यम से LSP क्लाइंट के लिए समर्थन है।

इतिहास
1985 में, IBM के माइक काउलिशॉ ने ऑक्सफोर्ड यूनिवरसिटि प्रेस के लिए secondment करते हुए LEXX (टेक्स्ट एडिटर) बनाया। LEXX (पाठ संपादक) हाइलाइटिंग के लिए लाइव पार्सिंग और इस्तेमाल किए गए रंग और फोंट का इस्तेमाल किया। आईबीएम का एलपीईएक्स (लाइव पार्सिंग एक्स्टेंसिबल एडिटर) LEXX पर आधारित था और VM (ऑपरेटिंग सिस्टम) | VM/CMS, OS/2, IBM i|OS/400, Microsoft Windows, और जावा वर्चुअल मशीन पर चलता था हालांकि विम (पाठ संपादक) की प्रारंभिक सार्वजनिक रिलीज़ 1991 में हुई थी, सिंटैक्स हाइलाइटिंग फीचर को 1998 में संस्करण 5.0 तक पेश नहीं किया गया था। 2003 में, विंडोज के लिए एक स्रोत कोड संपादक, नोटपैड ++, डॉन हो द्वारा जारी किया गया था। इरादा जावा-आधारित स्रोत कोड संपादक, जेईएक्सटी के लिए एक विकल्प बनाना था 2015 में, माइक्रोसॉफ्ट ने विजुअल स्टूडियो कोड को उनके विजुअल स्टूडियो आईडीई के हल्के और क्रॉस-प्लेटफॉर्म विकल्प के रूप में जारी किया। 2016 में, विजुअल स्टूडियो कोड भाषा सर्वर प्रोटोकॉल का उपयोग कर माइक्रोसॉफ्ट उत्पाद बन गया।

आईडीई के साथ तुलना
एक स्रोत-कोड संपादक एक एकीकृत विकास परिवेश का एक घटक है। एक स्टैंडअलोन स्रोत-कोड संपादक के विपरीत, एक IDE में आमतौर पर डिबगर और बिल्ड टूल भी शामिल होते हैं। कुछ डेवलपर्स द्वारा स्टैंडअलोन स्रोत कोड संपादकों को आईडीई पर पसंद किया जाता है, जब उनका मानना ​​​​है कि आईडीई उन विशेषताओं से फूला हुआ है जिनकी उन्हें आवश्यकता नहीं है।

उल्लेखनीय उदाहरण

 * परमाणु (पाठ संपादक)
 * कोष्ठक (पाठ संपादक) * ग्रहण (सॉफ्टवेयर)
 * Emacs
 * जीएडिट
 * NetBeans
 * नोटपैड++ (केवल विंडोज़)
 * चालाक संपादित करें एडिट
 * उदात्त पाठ
 * टेक्स्टमैट (केवल macOS)
 * अल्ट्राएडिट *vi/विम (पाठ संपादक)
 * विजुअल स्टूडियो कोड

विवाद
कई स्रोत-कोड संपादक और आईडीई चल रहे उपयोगकर्ता तर्कों में शामिल रहे हैं, जिन्हें कभी-कभी प्रोग्रामिंग समुदाय द्वारा पवित्र युद्ध के रूप में संदर्भित किया जाता है। उल्लेखनीय उदाहरणों में संपादक युद्ध | vi बनाम Emacs और ग्रहण (सॉफ़्टवेयर) बनाम NetBeans शामिल हैं। इन तर्कों ने इंटरनेट संस्कृति का एक महत्वपूर्ण हिस्सा बना लिया है और वे अक्सर तब शुरू होते हैं जब किसी भी संपादक का कहीं भी उल्लेख किया जाता है।

यह भी देखें

 * एकीकृत विकास पर्यावरण
 * एकीकृत विकास वातावरण की तुलना
 * ऑनलाइन स्रोत कोड खेल के मैदानों की तुलना
 * जावास्क्रिप्ट-आधारित स्रोत कोड संपादकों की तुलना
 * हेक्स संपादकों की तुलना
 * HTML संपादकों की तुलना
 * पाठ संपादकों की सूची
 * संपादक युद्ध
 * संपादक युद्ध