टेक्स्ट एन्कोडिंग
क्या मेरा रीडर जानता है कि फ़ाइल किस एन्कोडिंग में है, या अंदाज़ा लगा रहा है?
text-encoding प्रीसेट एक कमांड में इस सवाल के लिए असली टेस्ट फ़ाइलों का पूरा सेट बनाता है,
और उनके बगल में एक manifest.json जो बताता है कि आपके सिस्टम को हर फ़ाइल पर क्या
प्रतिक्रिया देनी चाहिए। नीचे सब कुछ इस संस्करण के डिफ़ॉल्ट पर प्रोग्राम से पढ़ा गया है।
यह आम तौर पर क्या पकड़ता है?
- ऐसा रीडर जो UTF-8 मान लेता है और UTF-16 फ़ाइल को तीन में से एक अक्षर या डिब्बों की पंक्तियों की तरह दिखाता है
- बाइट ऑर्डर मार्क जो सामग्री की तरह पढ़ा जाता है, जिससे इंपोर्ट का पहला फ़ील्ड तीन अनजान अक्षरों से शुरू होता है
- ऐसा इंपोर्टर जो शुरुआती बाइट से एन्कोडिंग का अंदाज़ा लगाता है और लंबी फ़ाइल पर अलग अंदाज़ा लगाता है
- CRLF फ़ाइल जो हर पंक्ति के बाद खाली पंक्ति के साथ बँट जाती है, या कैरिज रिटर्न जो आख़िरी फ़ील्ड में रह जाता है
सेट में क्या है?
डिफ़ॉल्ट पर, जैसा tfg preset show text-encoding बताता है:
| फ़ाइलें | 20 |
|---|---|
| इसकी रेसिपी में टार्गेट | 20 |
| कुल आकार | 81 920 B |
| फ़ॉर्मैट | csv, log, md, txt, xml |
और उस सेट का मैनिफ़ेस्ट आपके सिस्टम से क्या अपेक्षा रखता है:
| अपेक्षित | अर्थ | फ़ाइलें |
|---|---|---|
accept | आपके सिस्टम को फ़ाइल मंज़ूर करनी चाहिए। | 10 |
unspecified | यह आपके सिस्टम के नियमों पर निर्भर है। आप तय करें, फिर जाँचें कि जो होता है वही है जो आप चाहते थे। | 10 |
आप क्या बदल सकते हैं?
| सेटिंग | लेती है | डिफ़ॉल्ट | क्या करती है |
|---|---|---|---|
--sample |
2mb जैसा आकार | 4kb |
सेट की हर फ़ाइल कितनी बड़ी है। UTF-16 हर अक्षर के लिए दो बाइट रखता है, इसलिए विषम संख्या अस्वीकार हो जाती है। |
इसे कैसे चलाएँ?
देखें कि सेट की क़ीमत क्या होगी, उसे बनाएँ, या संपादन के लिए उसकी रेसिपी लें:
tfg preset show text-encoding
tfg generate --preset text-encoding --out ./text-encoding
tfg preset eject text-encoding > text-encoding.yaml
या अपनी रेसिपी में, अपने टेस्ट के बगल में, इस पर आगे बनाएँ:
version: 1
extends: preset:text-encoding