लाइन एंडिंग क्या हैं?

एक लाइन एंडिंग (जिसे न्यूलाइन या एंड-ऑफ-लाइन सीक्वेंस भी कहा जाता है) एक विशेष वर्ण या वर्णों की जोड़ी है जो यह चिह्नित करती है कि एक पंक्ति का पाठ कहाँ समाप्त होता है और अगली शुरू होती है। ऑपरेटिंग सिस्टम में तीन अलग-अलग सम्मेलन मौजूद हैं: LF (\n, एक एकल लाइनफीड वर्ण), CRLF (\r\n, एक कैरिज रिटर्न के बाद लाइनफीड), और CR (\r, एक स्टैंडअलोन कैरिज रिटर्न)।

यह अंतर प्रारंभिक कंप्यूटिंग हार्डवेयर से उत्पन्न होता है। टाइपराइटर को एक नई लाइन शुरू करने के लिए दो भौतिक चरणों की आवश्यकता होती थी — कैरिज को शुरुआत में वापस ले जाना (CR) और कागज को एक लाइन आगे बढ़ाना (LF)। Unix सिस्टम ने 1970 के दशक में केवल LF को अपनाया, जबकि MS-DOS और बाद में Windows ने पूर्ण CR+LF सीक्वेंस को बनाए रखा। क्लासिक Mac OS (OS X से पहले) ने अकेले CR का उपयोग किया, हालांकि आधुनिक macOS Unix LF सम्मेलन का पालन करता है।

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

टूल विवरण

यह टूल पाठ या फाइल का विश्लेषण करता है और पता लगाता है कि कौन से लाइन एंडिंग प्रकार मौजूद हैं। यह प्रत्येक प्रकार को अलग-अलग गिनता है — CRLF, LF, और CR — और समग्र लाइन एंडिंग शैली की रिपोर्ट करता है (जिसमें यह भी शामिल है कि क्या फाइल में मिश्रित एंडिंग हैं)। यह बुनियादी लाइन सांख्यिकी भी प्रदान करता है: कुल लाइन गिनती, सबसे लंबी लाइन, सबसे छोटी लाइन, और औसत लाइन लंबाई।

विशेषताएं

  • सभी तीन लाइन एंडिंग प्रकारों का पता लगाता है: CRLF (Windows), LF (Unix/macOS), और CR (क्लासिक Mac)
  • मिश्रित लाइन एंडिंग की पहचान करता है और प्रमुख शैली को लेबल करता है
  • कोड एडिटर के माध्यम से पेस्ट किए गए पाठ और किसी भी पाठ प्रारूप की अपलोड की गई फाइलों दोनों को स्वीकार करता है
  • प्रत्येक लाइन एंडिंग प्रकार को स्वतंत्र रूप से गिनता है बिना दोहरी गिनती के
  • कुल लाइनें, सबसे लंबी लाइन, सबसे छोटी लाइन, और औसत लाइन लंबाई की रिपोर्ट करता है

उपयोग के मामले

  • क्रॉस-प्लेटफॉर्म बिल्ड विफलताओं को डीबग करना — अप्रत्याशित CRLF एंडिंग वाली स्क्रिप्ट या कॉन्फ़िगरेशन फाइलें अक्सर Unix सर्वर पर टूट जाती हैं; तैनाती से पहले लाइन एंडिंग की पुष्टि करने के लिए इस टूल का उपयोग करें
  • कोड समीक्षा की तैयारी — सत्यापित करें कि Windows मशीन से योगदान दी गई फाइल प्रतिबद्ध करने से पहले प्रोजेक्ट की अपेक्षित LF सम्मेलन का उपयोग करती है
  • पाठ फाइल ऑडिटिंग — लॉग फाइलें, CSV, या डेटा निर्यात को जल्दी से निरीक्षण करें ताकि उन्हें प्रोग्रामेटिक रूप से पार्स करने से पहले उनकी संरचना को समझ सकें

यह कैसे काम करता है

CRLF सीक्वेंस (\r\n) का पता लगाया जाता है और regex मैच का उपयोग करके पहले गिना जाता है। मिलान की गई जोड़ियों को फिर स्टैंडअलोन LF (\n) और CR (\r) वर्णों को अलग से गिनने से पहले string से हटा दिया जाता है। यह एक एकल \r\n को CR और LF दोनों के रूप में गिने जाने से रोकता है। लाइन सांख्यिकी मूल पाठ को सभी तीन लाइन एंडिंग पैटर्न पर विभाजित करके प्राप्त की जाती है।