टैब को स्पेस में बदलें
प्रति टैब स्पेस की संख्या:
टैब को स्पेस में बदलें का उपयोग कैसे करें
- 1
अपना टेक्स्ट पेस्ट करें
टैब अक्षरों वाला कोड या टेक्स्ट इनपुट बॉक्स में पेस्ट करें।
- 2
प्रति टैब स्पेस सेट करें
'Number of spaces per tab' फ़ील्ड का इस्तेमाल करके चुनें कि हर टैब कितने स्पेस बनना चाहिए, जैसे 2 या 4।
- 3
टैब बदलें
'Convert Tabs to Spaces' पर क्लिक करें और हर टैब आपकी चुनी हुई स्पेस संख्या से बदल दिया जाता है।
- 4
आउटपुट कॉपी करें
अपने एडिटर या दस्तावेज़ के लिए साफ़, स्पेस-इंडेंटेड टेक्स्ट लेने हेतु 'Copy Output' का इस्तेमाल करें।
एकसमान इंडेंटेशन के लिए टैब को स्पेस में बदलना
टूल क्या करता है
यह टूल आपके टेक्स्ट के हर टैब कैरेक्टर को उतने स्पेस से बदल देता है जितने आप चुनते हैं। प्रति-टैब-स्पेस वाले फ़ील्ड को 2, 4, या किसी भी मान पर सेट करें, और हर टैब ठीक उतने ही स्पेस बन जाता है। यह प्रतिस्थापन शाब्दिक और एक-के-बदले-एक होता है: एक टैब अंदर, आपकी चुनी हुई स्पेस-गिनती बाहर।
चूँकि एक टैब एक अकेला अदृश्य कैरेक्टर होता है जिसे कोई एडिटर किसी डिस्प्ले चौड़ाई पर रेंडर करता है, इसे एक तय संख्या में असली स्पेस से बदल देने से इंडेंटेशन ठोस बन जाता है और जहाँ भी टेक्स्ट देखा जाए वहाँ एक जैसा रहता है।
टैब और स्पेस मुश्किल क्यों खड़ी करते हैं
किसी टैब की कोई तय चौड़ाई नहीं होती; यह एक संकेत है जिसका मतलब होता है अगले टैब स्टॉप तक बढ़ जाओ। अलग-अलग एडिटर और व्यूअर उन स्टॉप को अलग-अलग तरह सेट करते हैं, आम तौर पर 2, 4, या 8 कॉलम पर। इसीलिए वही टैब-इंडेंटेड फ़ाइल किसी एक एडिटर में करीने से संरेखित दिखती है और किसी दूसरे में ऊबड़-खाबड़, और यही लंबे समय से चली आ रही टैब-बनाम-स्पेस बहस की जड़ है।
इसके उलट, स्पेस में कोई संदेह नहीं होता। चार स्पेस की एक कतार चार कॉलम चौड़ी ही रहती है, चाहे आप फ़ाइल कहीं भी खोलें। टैब को स्पेस में बदलना टैब के लचीलेपन के बदले एक गारंटीशुदा, पोर्टेबल एकरूपता दे देता है।
अपनी टैब चौड़ाई चुनना
आप जो संख्या चुनते हैं वह उस जगह की परंपरा से मेल खानी चाहिए जहाँ यह कोड जा रहा है। कई JavaScript और TypeScript प्रोजेक्ट 2 स्पेस इस्तेमाल करते हैं। Python की व्यापक रूप से अपनाई गई स्टाइल गाइड 4 तय करती है। कुछ C और Go कोडबेस ऐतिहासिक रूप से 8 के बराबर इस्तेमाल करते रहे हैं। बदलने से पहले, प्रोजेक्ट की स्टाइल गाइड या मौजूदा फ़ाइलें जाँच लें ताकि आपके स्पेस बाकी सबके स्पेस से मेल खाएँ।
अगर आप गिनती ग़लत कर देते हैं, तो आपका बदला हुआ कोड फिर भी मान्य रहेगा पर उसकी इंडेंटेशन गहराई आस-पास के कोड से मेल नहीं खाएगी, जो रिव्यू में खटकती है। पहले ही सही चौड़ाई की पुष्टि कर लेना सार्थक है।
हर टैब, सिर्फ़ इंडेंटेशन नहीं
यह टूल टेक्स्ट के सभी टैब कैरेक्टर बदल देता है, जिनमें किसी लाइन के बीच में आने वाले टैब भी शामिल हैं, न कि सिर्फ़ हर लाइन की शुरुआत वाला अग्रणी इंडेंटेशन। आम तौर पर आप यही चाहते हैं, क्योंकि लाइन के बीच इधर-उधर बिखरे टैब ठीक वैसी ही असंगत व्हाइटस्पेस होते हैं जो गड़बड़ संरेखण की वजह बनती है।
हालाँकि टैब-सेपरेटेड डेटा के लिए इसे ध्यान में रखें: अगर कोई लाइन टैब को कॉलम परिसीमक (delimiter) के रूप में इस्तेमाल करती है, तो उन्हें स्पेस में बदलने से यह बदल जाएगा कि वह डेटा किस तरह पार्स होता है। सोर्स कोड इंडेंटेशन के लिए यह सही बर्ताव है; TSV डेटा के लिए शायद नहीं।
वे भाषाएँ जहाँ यह वाकई मायने रखता है
Python में, इंडेंटेशन सिंटैक्स का हिस्सा होता है, और एक ही ब्लॉक में टैब और स्पेस मिलाना एक एरर है जिसे इंटरप्रेटर अस्वीकार कर देगा। सब कुछ स्पेस में सामान्यीकृत कर देने से उलझन भरी विफलताओं की एक पूरी श्रेणी ही हट जाती है। YAML भी इसी तरह सख़्त है और इंडेंटेशन के लिए टैब की बिलकुल भी इजाज़त नहीं देता, इसलिए किसी YAML फ़ाइल को मान्य बनाने के लिए अक्सर टैब को स्पेस में बदलना अनिवार्य होता है।
उन भाषाओं में भी जहाँ इंडेंटेशन सिर्फ़ दिखावटी होता है, एकसमान स्पेस diff को साफ़ रखते हैं और संरेखण को खिसकने से बचाते हैं जब कोई साथी अलग टैब सेटिंग के साथ फ़ाइल खोलता है।
लाइन ब्रेक और बाकी व्हाइटस्पेस सुरक्षित हैं
यह कन्वर्ज़न केवल टैब कैरेक्टर तक ही सीमित है। आपके लाइन ब्रेक, आपके मौजूदा स्पेस, और बाकी की आपकी सामग्री ठीक वैसी ही छोड़ दी जाती है जैसी थी। हर टैब को स्पेस में बदलने के अलावा कुछ भी न तो मिलाया जाता है, न काटा-छाँटा जाता है, न फिर से व्यवस्थित किया जाता है। इससे यह टूल पूरी फ़ाइल पर चलाने के लिए सुरक्षित हो जाता है, बिना इस चिंता के कि यह ढाँचे को बिगाड़ देगा।
अगर आप पाते हैं कि आपके कोड में अतिरिक्त स्पेस की कतारें भी हैं जिन्हें आप समेटना चाहते हैं, तो वह किसी व्हाइटस्पेस सफ़ाई टूल का अलग काम है; यह टूल टैब-से-स्पेस वाले प्रतिस्थापन पर ही केंद्रित रहता है।
इसे अपने वर्कफ़्लो में ढालना
एक आम इस्तेमाल यह है कि किसी ऐसे स्रोत से कॉपी किया कोई स्निपेट, जिसमें टैब इस्तेमाल हुए थे, ऐसे प्रोजेक्ट में पेस्ट करना जिसमें स्पेस ज़रूरी हैं, उसे प्रोजेक्ट की चौड़ाई में बदलना, और उसे पहले से ही सही इंडेंट किए रूप में डाल देना। यह तब एकबारगी सफ़ाई के लिए भी काम आता है जब किसी एडिटर का ऑटो-फ़ॉर्मेटर सेट न किया गया हो या उपलब्ध न हो।
चूँकि पूरी प्रक्रिया बिना किसी अपलोड के आपके ब्राउज़र में चलती है, आप मालिकाना (proprietary) या संवेदनशील कोड को भी सुरक्षित रूप से बदल सकते हैं, और नतीजा तुरंत मिलता है, इसलिए आप अलग-अलग चौड़ाइयाँ आज़मा सकते हैं और तब तक तुलना कर सकते हैं जब तक इंडेंटेशन मेल न खा जाए।
अक्सर पूछे जाने वाले प्रश्न
हर टैब कितने स्पेस में बदला जाता है?
कोड में टैब को स्पेस में क्यों बदलें?
क्या यह केवल शुरुआती इंडेंटेशन बदलता है या सभी टैब?
क्या यह मेरे लाइन ब्रेक या अन्य व्हाइटस्पेस बदलेगा?
क्या यह मुफ़्त है और क्या मेरा कोड कहीं अपलोड होता है?
संबंधित टूल्स
इन उपयोगी टूल्स के साथ आगे बढ़ें