उबंटू में गड़बड़ टेक्स्ट को ठीक करने के लिए पूर्ण गाइड | कारण, समाधान, और कॉन्फ़िगरेशन परिवर्तन

目次

1. परिचय

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

  • Ubuntu के शुरुआती उपयोगकर्ता जो अभी तक जापानी डिस्प्ले सेटिंग्स सेटअप नहीं कर पाए हैं
  • विकृत पाठ के मूल कारणों को समझने और मौलिक समाधान खोजने वाले उपयोगकर्ता
  • टर्मिनल या GUI वातावरण में विकृत पाठ का अनुभव करने वाले और इसे ठीक करने के तरीके जानने वाले उपयोगकर्ता

Ubuntu में विकृत पाठ के मुख्य कारणों की जांच करके शुरू करते हैं।

侍エンジニア塾

2. विकृत पाठ के मुख्य कारण

गलत लोकेल सेटिंग्स

Ubuntu में लोकेल सिस्टम भाषा और तिथि फॉर्मेटिंग सेटिंग्स को परिभाषित करते हैं। यदि ये ठीक से कॉन्फ़िगर नहीं हैं, तो जापानी पाठ सही ढंग से प्रदर्शित नहीं हो सकता, जिससे विकृत अक्षर हो सकते हैं।
उदाहरण के लिए, यदि आप locale कमांड चलाते हैं और आउटपुट में “C” या “POSIX” दिखाई देता है, तो आपकी लोकेल सेटिंग्स गलत हो सकती हैं:

$ locale
LANG=C
LC_ALL=

आदर्श रूप से, जापानी वातावरण के लिए इसे LANG=ja_JP.UTF-8 पर सेट किया जाना चाहिए।

लacking या अपर्याप्त फ़ॉन्ट्स

डिफ़ॉल्ट रूप से, Ubuntu में जापानी फ़ॉन्ट्स इंस्टॉल नहीं हो सकते। इसके परिणामस्वरूप, जापानी पाठ ठीक से रेंडर नहीं हो सकता और इसके बजाय वर्गाकार बॉक्स (□) या यादृच्छिक प्रतीकों के रूप में प्रदर्शित हो सकता है।
फ़ॉन्ट मुद्दों की पहचान निम्नलिखित मामलों में की जा सकती है:

  • GUI एप्लिकेशन्स के मेनू और बटनों में विकृत पाठ दिखाई देता है
  • टेक्स्ट एडिटर में जापानी पाठ विकृत दिखाई देता है

अक्षर एन्कोडिंग का असंगति

जबकि Ubuntu मुख्य रूप से UTF-8 को अपनी मानक एन्कोडिंग के रूप में उपयोग करता है, बाहरी स्रोतों से Shift_JIS या EUC-JP में एन्कोडेड फाइलें खोलने से विकृत पाठ हो सकता है।
उदाहरण के लिए, Windows वातावरण में बनाई गई फाइल को Ubuntu पर खोलने से निम्नलिखित हो सकता है:

  • टेक्स्ट एडिटर में खोलने पर अपठनीय अक्षर
  • टर्मिनल में cat कमांड का उपयोग करते समय विकृत पाठ

गलत कॉन्फ़िगर किए गए टर्मिनल या एडिटर सेटिंग्स

भले ही फाइल UTF-8 में एन्कोडेड हो, गलत टर्मिनल या एडिटर सेटिंग्स के कारण पाठ ठीक से रेंडर नहीं हो सकता।

  • टर्मिनल एन्कोडिंग UTF-8 के अलावा कुछ और पर सेट है
  • Vim या VSCode जैसे टेक्स्ट एडिटर सही एन्कोडिंग को ऑटो-डिटेक्ट करने में विफल रहते हैं
  • less या cat के साथ प्रदर्शित जापानी अक्षर “?” या “◇” के रूप में दिखाई देते हैं

3. लोकेल सेटिंग्स की जाँच और सुधार

अपनी लोकेल सेटिंग्स की जाँच कैसे करें

अपनी वर्तमान लोकेल सेटिंग्स की जाँच करने के लिए, निम्नलिखित कमांड चलाएँ:

locale

उदाहरण आउटपुट:

LANG=C
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=

यदि LANG=C प्रदर्शित होता है, तो आपका सिस्टम जापानी के लिए ठीक से सेटअप नहीं है। सही कॉन्फ़िगर किया गया जापानी वातावरण इस प्रकार दिखना चाहिए:

LANG=ja_JP.UTF-8
LC_ALL=ja_JP.UTF-8

जापानी लोकेल की स्थापना और कॉन्फ़िगरेशन

1. जापानी लोकेल की जाँच और जोड़ें

जापानी लोकेल इंस्टॉल है या नहीं जाँचने के लिए, चलाएँ:

locale -a | grep ja_JP

उदाहरण आउटपुट:

ja_JP.eucJP
ja_JP.utf8

यदि ja_JP.utf8 गायब है, तो जापानी लोकेल इंस्टॉल करें:

sudo apt update
sudo apt install -y language-pack-ja

फिर, लोकेल जेनरेट करें और सिस्टम सेटिंग्स अपडेट करें:

sudo locale-gen ja_JP.UTF-8
sudo update-locale LANG=ja_JP.UTF-8

2. सिस्टम-वाइड लोकेल सेट करें

परिवर्तनों को सिस्टम-वाइड लागू करने के लिए, चलाएँ:

export LANG=ja_JP.UTF-8
export LC_ALL=ja_JP.UTF-8

इन परिवर्तनों को स्थायी बनाने के लिए, उन्हें ~/.bashrc या ~/.profile में जोड़ें:

echo 'export LANG=ja_JP.UTF-8' >> ~/.bashrc
echo 'export LC_ALL=ja_JP.UTF-8' >> ~/.bashrc
source ~/.bashrc

सिस्टम-वाइड परिवर्तनों के लिए, संपादित करें:

sudo nano /etc/default/locale

और निम्नलिखित जोड़ें या संशोधित करें:

LANG=ja_JP.UTF-8
LC_ALL=ja_JP.UTF-8

सेटिंग्स लागू करने के लिए, लॉग आउट करें और फिर लॉग इन करें या अपना सिस्टम रीस्टार्ट करें।

4. फ़ॉन्ट्स इंस्टॉल करना और कॉन्फ़िगर करना

जापानी फ़ॉन्ट्स क्यों आवश्यक हैं

डिफ़ॉल्ट रूप से, उबुन्टू में जापानी फ़ॉन्ट्स इंस्टॉल नहीं हो सकते। इससे जापानी टेक्स्ट ठीक से प्रदर्शित नहीं होता, जो वर्गाकार बॉक्स (□) या अपठनीय प्रतीकों के रूप में दिखाई दे सकता है। फ़ॉन्ट-संबंधी समस्याओं को निम्नलिखित मामलों में देखा जा सकता है:

  • GUI एप्लिकेशनों में मेनू और बटन गार्बल्ड दिखाई देते हैं
  • टेक्स्ट एडिटर में जापानी टेक्स्ट गलत तरीके से प्रदर्शित होता है

अनुशंसित जापानी फ़ॉन्ट्स

यहाँ उबुन्टू के लिए कुछ अनुशंसित जापानी फ़ॉन्ट्स हैं:

Font Name

विशेषताएँ

Noto Sans CJK JP

एक उच्च-गुणवत्ता वाला जापानी फ़ॉन्ट, जिसे गूगल द्वारा प्रदान किया गया है (डिफ़ॉल्ट के रूप में अनुशंसित)

Takao Fonts

पहले Ubuntu के लिए डिफ़ॉल्ट फ़ॉन्ट (पतले और बोल्ड संस्करणों में उपलब्ध)

IPA Fonts

उच्च-गुणवत्ता वाले फ़ॉन्ट्स सूचना-प्रौद्योगिकी प्रचार एजेंसी (IPA) द्वारा प्रदान किए गए हैं

VL Gothic

उच्च पठनीय और टर्मिनल उपयोग के लिए अनुकूलित

फ़ॉन्ट्स कैसे इंस्टॉल करें

1. Noto Sans CJK JP इंस्टॉल करें (अनुशंसित डिफ़ॉल्ट फ़ॉन्ट)

sudo apt update
sudo apt install -y fonts-noto-cjk

2. Takao फ़ॉन्ट्स इंस्टॉल करें

sudo apt install -y fonts-takao

3. IPA फ़ॉन्ट्स इंस्टॉल करें (Information-technology Promotion Agency)

sudo apt install -y fonts-ipafont

4. VL Gothic इंस्टॉल करें (टर्मिनल के लिए अनुकूलित)

sudo apt install -y fonts-vlgothic

फ़ॉन्ट्स इंस्टॉल करने के बाद, अपना सिस्टम रीस्टार्ट करें या फ़ॉन्ट कैश को निम्नलिखित से रिफ़्रेश करें:

fc-cache -fv

फ़ॉन्ट्स कैसे कॉन्फ़िगर करें

GUI एप्लिकेशनों में फ़ॉन्ट्स सेट करना

  1. “Settings” एप्लिकेशन खोलें
  2. “Fonts” सेक्शन पर जाएँ
  3. “Standard Font,” “Document Font,” और “Monospace Font” को अपनी पसंदीदा फ़ॉन्ट में बदलें
  4. सेटिंग्स लागू करने के लिए लॉग आउट करें और फिर लॉग इन करें

टर्मिनल में फ़ॉन्ट्स सेट करना

  1. टर्मिनल खोलें
  2. “Preferences” → “Profile Preferences” पर जाएँ
  3. “Use custom font” के लिए चेकबॉक्स को चेक करें
  4. पसंदीदा फ़ॉन्ट चुनें (उदाहरण के लिए, Noto Sans Mono CJK JP)
  5. सेटिंग्स सेव करें और टर्मिनल रीस्टार्ट करें

फ़ॉन्ट सेटिंग्स लागू करना और सत्यापित करना

फ़ॉन्ट सेटिंग्स सही तरीके से लागू हुई हैं या नहीं यह सत्यापित करने के लिए, निम्नलिखित आज़माएँ:

  1. fc-list कमांड का उपयोग करके इंस्टॉल्ड फ़ॉन्ट्स चेक करें
fc-list | grep "Noto"
  1. टर्मिनल में जापानी टेक्स्ट डिस्प्ले का परीक्षण करें
echo "こんにちは、Ubuntuの文字化け対策"
  1. GUI एप्लिकेशनों (Firefox, LibreOffice, आदि) में जापानी टेक्स्ट सही से प्रदर्शित होता है या नहीं चेक करें

5. कैरेक्टर एन्कोडिंग चेक करना और कन्वर्ट करना

कैरेक्टर एन्कोडिंग क्या है?

कैरेक्टर एन्कोडिंग एक सिस्टम है जो कैरेक्टर्स को डिजिटल कोड असाइन करता है। कुछ सामान्यतः उपयोग की जाने वाली एन्कोडिंग्स में शामिल हैं:

Encoding

Features

Primary Usage

UTF-8

Supports multiple languages, the standard for Linux

Ubuntu, Web development

Shift_JIS

Japanese-specific, commonly used in Windows

Windows applications, legacy systems

EUC-JP

Used in UNIX-based systems

Older Linux systems

ISO-2022-JP

Used for emails and specific environments

Email communication

चूंकि उबुन्टू मुख्य रूप से UTF-8 का उपयोग करता है, इसलिए अन्य एन्कोडिंग्स (जैसे Shift_JIS) में फाइलें खोलने से टेक्स्ट गार्बल्ड हो सकता है।

किसी फाइल की कैरेक्टर एन्कोडिंग कैसे चेक करें

1. file कमांड का उपयोग करें

file -i sample.txt

उदाहरण आउटपुट:

sample.txt: text/plain; charset=iso-8859-1

2. nkf कमांड का उपयोग करें

sudo apt install -y nkf
nkf --guess sample.txt

उदाहरण आउटपुट:

Shift_JIS (CRLF)

कैरेक्टर एन्कोडिंग कैसे कन्वर्ट करें

1. iconv कमांड का उपयोग करके कन्वर्ट करें

Shift_JIS को UTF-8 में कन्वर्ट करें:

iconv -f SHIFT_JIS -t UTF-8 sample.txt -o sample_utf8.txt

EUC-JP को UTF-8 में कन्वर्ट करें:

iconv -f EUC-JP -t UTF-8 sample.txt -o sample_utf8.txt

2. nkf कमांड का उपयोग करके कन्वर्ट करें

Shift_JIS को UTF-8 में कन्वर्ट करें:

nkf -w sample.txt > sample_utf8.txt

EUC-JP को UTF-8 में कन्वर्ट करें:

nkf -w --overwrite sample.txt

टर्मिनल और एडिटर्स में गार्बल्ड टेक्स्ट को रोकना

1. less कमांड का उपयोग करके ठीक से डिस्प्ले करें

export LESSCHARSET=utf-8
less sample.txt

2. vim में कैरेक्टर एन्कोडिंग निर्दिष्ट करें

vim -c "set encoding=utf-8" sample.txt

3. gedit या VSCode में एन्कोडिंग बदलें

  • gedit (GNOME का डिफ़ॉल्ट एडिटर)
  1. gedit sample.txt से फाइल खोलें
  2. सेव करते समय, एन्कोडिंग को UTF-8 में बदलें
  • VSCode (Visual Studio Code)
  1. स्क्रीन के नीचे “Encoding” पर क्लिक करें
  2. UTF-8 चुनें

6. टर्मिनल और एडिटर सेटिंग्स चेक करना

टर्मिनल सेटिंग्स चेक करना और ठीक करना

1. टर्मिनल एन्कोडिंग सेटिंग्स चेक करें

अपने वर्तमान पर्यावरण चर चेक करने के लिए, निम्नलिखित कमांड चलाएँ:

echo $LANG
echo $LC_ALL

उदाहरण आउटपुट (सही सेटिंग्स):

ja_JP.UTF-8
ja_JP.UTF-8

यदि आउटपुट C या POSIX है, तो आपको locale सेटिंग्स को ja_JP.UTF-8 में बदलना होगा।

2. टर्मिनल फ़ॉन्ट कॉन्फ़िगर करें

GNOME Terminal (डिफ़ॉल्ट टर्मिनल)

  1. टर्मिनल खोलें
  2. “Preferences” पर जाएँ
  3. “Profile Preferences” खोलें और “Text” टैब पर जाएँ
  4. “Use custom font” सक्षम करें और निम्नलिखित में से एक चुनें:
  • Noto Sans Mono CJK JP
  • VL Gothic
  • Takao Gothic
  1. सेटिंग्स सहेजें और टर्मिनल को पुनः आरंभ करें

टेक्स्ट एडिटर्स में कैरेक्टर एन्कोडिंग सेट करें

1. Vim एन्कोडिंग कॉन्फ़िगर करें

अपनी वर्तमान सेटिंग्स की जाँच करने के लिए, Vim खोलें और चलाएँ:

:set encoding?
:set fileencoding?

अपेक्षित आउटपुट:

encoding=utf-8
fileencoding=utf-8

यदि यह utf-8 पर सेट नहीं है, तो ~/.vimrc फ़ाइल में निम्नलिखित जोड़ें ताकि UTF-8 डिफ़ॉल्ट हो:

set encoding=utf-8
set fileencodings=utf-8,sjis,euc-jp
set fileformats=unix,dos,mac

2. Nano एन्कोडिंग कॉन्फ़िगर करें

डिफ़ॉल्ट सेटिंग बदलने के लिए, ~/.nanorc में निम्नलिखित पंक्ति जोड़ें:

set encoding "utf-8"

3. VSCode एन्कोडिंग कॉन्फ़िगर करें

  1. VSCode विंडो के नीचे दाएँ कोने में “Encoding” पर क्लिक करें
  2. UTF-8 चुनें
  3. यदि आवश्यक हो, तो “Save with Encoding” का उपयोग करें

UTF-8 को डिफ़ॉल्ट एन्कोडिंग बनाने के लिए, अपनी settings.json फ़ाइल में निम्नलिखित जोड़ें:

"files.encoding": "utf8"

7. विशिष्ट मामलों की समस्या निवारण

GUI एप्लिकेशन्स में गार्बल्ड टेक्स्ट ठीक करना

1. Firefox और Chrome में जापानी डिस्प्ले समस्याएँ

समाधान:

  1. आवश्यक फ़ॉन्ट इंस्टॉल करें
sudo apt install -y fonts-noto-cjk fonts-ipafont
  1. ब्राउज़र फ़ॉन्ट सेटिंग्स जाँचें
  • Firefox:
    1. about:preferences पर जाएँ, फिर “Fonts & Colors” → “Advanced” खोलें
    2. “Proportional” और “Monospace Fonts” को Noto Sans CJK JP में बदलें
  • Chrome:
    1. chrome://settings/fonts पर जाएँ
    2. “Standard Font” और “Monospace Font” को Noto Sans CJK JP में बदलें

2. LibreOffice में गार्बल्ड टेक्स्ट ठीक करना

समाधान:

  1. fonts-noto-cjk और fonts-ipafont इंस्टॉल करें
  2. LibreOffice फ़ॉन्ट सेटिंग्स बदलें
  • “Tools” → “Options” → “LibreOffice” → “Fonts” पर जाएँ
  • डिफ़ॉल्ट फ़ॉन्ट को Noto Sans CJK JP में बदलें

CUI वातावरण में गार्बल्ड टेक्स्ट ठीक करना

1. SSH सेशन गार्बल्ड टेक्स्ट समस्याएँ

समाधान:

  1. सर्वर पर locale सेटिंग्स जाँचें
locale
  1. यदि ja_JP.UTF-8 अनुपस्थित है, तो चलाएँ:
sudo apt install -y language-pack-ja
sudo locale-gen ja_JP.UTF-8
sudo update-locale LANG=ja_JP.UTF-8

8. अक्सर पूछे जाने वाले प्रश्न (FAQ)

Q1. मेरा locale सही सेट है, लेकिन गार्बल्ड टेक्स्ट बना हुआ है।

A: भले ही आपका locale सही हो, सेटिंग्स सत्यापित करें:

locale

यदि LANG=ja_JP.UTF-8 प्रदर्शित नहीं होता, तो locale रीसेट करें:

sudo update-locale LANG=ja_JP.UTF-8
sudo locale-gen ja_JP.UTF-8
sudo dpkg-reconfigure locales

Q2. केवल विशिष्ट फ़ाइलों में गार्बल्ड टेक्स्ट है।

A: फ़ाइल का एन्कोडिंग अलग हो सकता है। जाँचने के लिए उपयोग करें:

file -i sample.txt

यदि फ़ाइल UTF-8 में नहीं है, तो इसे कन्वर्ट करें:

iconv -f SHIFT_JIS -t UTF-8 sample.txt -o sample_utf8.txt

या nkf का उपयोग करके:

nkf -w --overwrite sample.txt

9. निष्कर्ष

इस लेख में, हमने Ubuntu की गार्बल्ड टेक्स्ट समस्याओं, उनके कारणों और उन्हें ठीक करने के तरीकों को कवर किया। गार्बल्ड टेक्स्ट के प्रमुख कारणों में गलत locale सेटिंग्स, अनुपस्थित फ़ॉन्ट, कैरेक्टर एन्कोडिंग मिसमैच और गलत कॉन्फ़िगर टर्मिनल/एडिटर सेटिंग्स शामिल हैं।

मुख्य takeaways

  • सही locale सेट करें : update-locale LANG=ja_JP.UTF-8 चलाएँ
  • जापानी फ़ॉन्ट इंस्टॉल करें : sudo apt install -y fonts-noto-cjk fonts-ipafont का उपयोग करें
  • फ़ाइल एन्कोडिंग सत्यापित करें : file -i का उपयोग करें और iconv से कन्वर्ट करें
  • टर्मिनल और एडिटर्स कॉन्फ़िगर करें : सुनिश्चित करें कि UTF-8 एन्कोडिंग सेटिंग्स लागू हों

इन चरणों का पालन करके, आप Ubuntu में गार्बल्ड टेक्स्ट समस्याओं को हल और रोक सकते हैं।

年収訴求