Notepad++ में हिंदी टेक्स्ट की एन्कोडिंग ठीक करें

Notepad++ हिंदी की जगह हिंदी दिखाता है, या xE0 जैसे छोटे काले बक्से? तब चुनी गई एन्कोडिंग फ़ाइल से मेल नहीं खाती। आमतौर पर दो मेन्यू आइटम काफ़ी हैं – बशर्ते आप जानें कि कौन-सा चाहिए।

टेक्स्ट और ये फ़ाइलें चलती हैं:

  • CSV
  • TXT
  • JSON
  • XML
  • SRT
  • VTT
  • SMI
  • TSV
  • MD
  • HTML
  • SQL
  • LOG

जैसे Excel एक्सपोर्ट, डेटाबेस डंप, सबटाइटल या वेबसाइट का कोड।

ठीक करें

  1. फ़ाइल खींचकर लाएँ या टेक्स्ट पेस्ट करें
  2. अपने-आप ठीक हो जाता है
  3. कॉपी या डाउनलोड करें
या फ़ाइल यहाँ खींचकर लाएँ
  • कोई अपलोड नहीं। फ़ाइलें आपके ब्राउज़र में ही ठीक होती हैं और आपके डिवाइस से बाहर नहीं जातीं।

  • सर्वर EU में। Mojibuster फ़िनलैंड (EU) के एक सर्वर पर चलता है, इसलिए यूरोप का सामान्य डेटा संरक्षण विनियमन (GDPR) लागू होता है। GDPR पढ़ें (EUR-Lex, अंग्रेज़ी)

पहले एन्कोडिंग देखें

नीचे दाईं ओर स्टेटस बार में Notepad++ दिखाता है कि वह फ़ाइल को अभी कैसे पढ़ रहा है, जैसे UTF-8, UTF-8-BOM या ANSI। Encoding मेन्यू में दो तरह की प्रविष्टियाँ हैं, जिन्हें अक्सर गड़बड़ा दिया जाता है:

  • ANSI, UTF-8, UTF-8-BOM (मेन्यू के ऊपर): Notepad++ मौजूदा बाइट को नए तरीके से पढ़ता है, फ़ाइल नहीं बदलती – सिर्फ़ दिखाने की सेटिंग।
  • Convert to ANSI, Convert to UTF-8 … (मेन्यू के नीचे): Notepad++ अक्षरों को नई एन्कोडिंग में लिखता है। सेव करने पर फ़ाइल बदल जाती है।

मामला 1: हिंदी की जगह ह

फ़ाइल UTF-8 में सेव है, पर Notepad++ उसे ANSI पढ़ रहा है। Encoding → UTF-8 चुनें, हिंदी तुरंत सही दिखेगी। Convert न करें: “Convert to UTF-8” बिगड़े ह को असली अक्षर बनाकर सेव कर देगा।

मामला 2: हिंदी की जगह xE0 या बक्से

फ़ाइल ANSI (Windows-1252) में सेव है, पर UTF-8 की तरह पढ़ी जा रही है। पहले Encoding → ANSI चुनें ताकि अक्षर सही दिखें, फिर Convert to UTF-8। सेव के बाद फ़ाइल UTF-8 होगी। ध्यान रहे: असली हिंदी ANSI में रखी ही नहीं जा सकती – ANSI फ़ाइल में देवनागरी की जगह अक्सर ? होता है, और वह वापस नहीं आता।

मामला 3: गड़बड़ असल में फ़ाइल में है

अगर UTF-8 चुनने पर भी हिंदी दिखता है, तो टूटा टेक्स्ट पहले ही सेव हो चुका है। तब कोई मेन्यू आइटम भरोसे से काम नहीं करता – ख़ासकर जब सही और टूटी पंक्तियाँ मिली हों। और अगर हिंदी Kruti Dev जैसे फ़ॉन्ट में टाइप की गई है (fgUnh जैसे अंग्रेज़ी अक्षर), तो भी एन्कोडिंग नहीं, फ़ॉन्ट वजह है – देखें Kruti Dev से यूनिकोड। फ़ाइल ऊपर Mojibuster में डालें: वह सिर्फ़ टूटी जगहें ठीक करता है और हर बदलाव दिखाता है।

ऐसी फ़ाइल जिसमें गड़बड़ पहले ही सेव हो चुकी है

पहले

;g Q+kby fganh Hkk"kk esa fy[kh xbZ gS

बाद में

यह फ़ाइल हिंदी भाषा में लिखी गई है

नई फ़ाइलें हमेशा UTF-8 में बनाएँ

Settings → Preferences → New Document में नई फ़ाइलों की एन्कोडिंग UTF-8 रखें। जिन फ़ाइलों को Excel खोलेगा, उनके लिए UTF-8-BOM बेहतर है – विस्तार से Excel और CSV में हिंदी फ़ॉन्ट की समस्या। Windows PowerShell 5.1 की स्क्रिप्ट को भी BOM चाहिए, देखें PowerShell।

अक्सर पूछे जाने वाले सवाल

UTF-8 और UTF-8-BOM में क्या फ़र्क है?

दोनों अक्षर एक जैसे रखते हैं। UTF-8-BOM शुरुआत में तीन अदृश्य बाइट जोड़ता है, जिनसे Excel और पुराने प्रोग्राम UTF-8 पहचानते हैं।

Notepad++ कभी-कभी एन्कोडिंग गलत क्यों पहचानता है?

बिना BOM वाली फ़ाइल में अपनी एन्कोडिंग की कोई जानकारी नहीं होती, इसलिए Notepad++ को अंदाज़ा लगाना पड़ता है। छोटी फ़ाइलों और कम विशेष अक्षरों में गलती ज़्यादा होती है।

क्या कई फ़ाइलें एक साथ बदल सकते हैं?

Notepad++ में सिर्फ़ मैक्रो या प्लगइन से। Mojibuster में एक के बाद एक – हर फ़ाइल सेकंडों में हो जाती है।

और गाइड