Mwongozo Kamili wa Kutatua Maandishi Yaliyo Chafuka katika Ubuntu | Sababu, Suluhisho, na Mabadiliko ya Usanidi

目次

1. Utangulizi

Unapotumia Ubuntu, unaweza kukutana na maandishi yaliyochanganyikiwa katika hali fulani. Hii inaweza kutokea katika matokeo ya terminal, wakati wa kuonyesha majina ya faili ya Kijapani, au unapobrowse kurasa za wavuti za Kijapani, kulingana na mazingira yako. Katika hali nyingi, Kijapani kinaweza kusionekana sahihi na mipangilio ya chaguo-msingi, ikihitaji usanidi sahihi.
Katika makala hii, tutaelezea sababu za maandishi yaliyochanganyikiwa katika Ubuntu na kutoa suluhisho la wazi la kuyarekebisha. Mwongozo huu unalenga:

  • Wanaoanza kutumia Ubuntu ambao bado hawajasanidi mipangilio ya kuonyesha Kijapani
  • Watumiaji wanaotaka kuelewa chanzo cha msingi cha maandishi yaliyochanganyikiwa na kupata suluhisho la msingi
  • Watumiaji wanaokutana na maandishi yaliyochanganyikiwa katika mazingira ya terminal au GUI na wanataka kujua jinsi ya kuyarekebisha

Hebu tuanze kwa kuchunguza sababu kuu za maandishi yaliyochanganyikiwa katika Ubuntu.

2. Sababu Kuu za Maandishi Yaliyochanganyikiwa

Mipangilio ya Locale Isiyo Sahihi

Locale katika Ubuntu inaelezea lugha ya mfumo na mipangilio ya muundo wa tarehe. Ikiwa haijasanidiwa ipasavyo, maandishi ya Kijapani yanaweza kusionekana sahihi, na kusababisha herufi zilizochanganyikiwa. Kwa mfano, ukitumia amri ya locale na kuona “C” au “POSIX” katika matokeo, mipangilio yako ya locale inaweza kuwa si sahihi:

$ locale
LANG=C
LC_ALL=

Kwa hali bora, kwa mazingira ya Kijapani, inapaswa kuwekwa LANG=ja_JP.UTF-8.

Fonti Zisipo au Zisizotosha

Kwa chaguo-msingi, Ubuntu inaweza isiwe na fonti za Kijapani zilizosakinishwa. Kwa hiyo, maandishi ya Kijapani yanaweza kutokujitokeza ipasavyo na kuonekana kama visanduku vya mraba (□) au alama za nasibu. Masuala ya fonti yanaweza kutambuliwa katika hali zifuatazo:

  • Maandishi yaliyochanganyikiwa yanaonekana katika menyu na vitufe vya programu za GUI
  • Maandishi ya Kijapani katika mhariri wa maandishi yanaonekana yamechanganyikiwa

Mlingano wa Usimbaji wa Herufi

Ingawa Ubuntu hutumia UTF-8 kama usimbaji wake wa msingi, kufungua faili zilizo na usimbaji wa Shift_JIS au EUC-JP kutoka vyanzo vya nje kunaweza kusababisha maandishi yaliyochanganyikiwa. Kwa mfano, kufungua faili iliyotengenezwa katika mazingira ya Windows kwenye Ubuntu kunaweza kusababisha yafuatayo:

  • Herufi zisizoweza kusomwa zinapoonekana katika mhariri wa maandishi
  • Maandishi yaliyopindika wakati wa kutumia amri ya cat katika terminal

Mipangilio Isiyo Sahihi ya Terminal au Mhariri

Hata kama faili imeandikwa kwa UTF-8, mipangilio isiyo sahihi ya terminal au mhariri inaweza kuzuia uwasilishaji sahihi wa maandishi.

  • Usimbaji wa terminal umewekwa kwa kitu kingine isipokuwa UTF-8
  • Wahariri kama Vim au VSCode hawagundui usimbaji sahihi kiotomatiki
  • Herufi za Kijapani zinaonekana kama “?” au “◇” wakati wa kuonyesha kwa less au cat

3. Kukagua na Kurekebisha Mipangilio ya Locale

Jinsi ya Kukagua Mipangilio Yako ya Locale

Ili kukagua mipangilio yako ya locale ya sasa, endesha amri ifuatayo:

locale

Mfano wa matokeo:

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=

Ikiwa LANG=C inaonyeshwa, mfumo wako haujasanidiwi ipasavyo kwa Kijapani. Mazingira ya Kijapani yaliyosanidiwa sahihi yanapaswa kuonekana kama haya:

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

Kusanidi na Kusanidi Locale ya Kijapani

1. Kagua na Ongeza Locale ya Kijapani

Ili kuangalia kama locale ya Kijapani imewekwa, endesha:

locale -a | grep ja_JP

Mfano wa matokeo:

ja_JP.eucJP
ja_JP.utf8

Ikiwa ja_JP.utf8 haipo, sanidi locale ya Kijapani kwa:

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

Kisha, tengeneza locale na sasisha mipangilio ya mfumo:

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

2. Weka Locale ya Mfumo Nzima

I kutekeleza mabadiliko kwa mfumo mzima, endesha:

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

Ili kufanya mabadiliko haya yawe ya kudumu, ongeza kwenye ~/.bashrc au ~/.profile:

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

Kwa mabadiliko ya mfumo mzima, hariri:

sudo nano /etc/default/locale

Na ongeza au badilisha yafuatayo:

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

Ili kutumia mipangilio, toka nje na ingia tena au anza upya mfumo wako.

4. Kusakinisha na Kuweka Fonti

Kwa Nini Fonti za Kijapani Zinahitajika

Kwa chaguo-msingi, Ubuntu inaweza kuwa na fonti za Kijapani zisizokusanywa. Hii inaweza kusababisha maandishi ya Kijapani yasiyoonyeshwa vizuri, yakionekana kama sanduku za mraba (□) au alama zisizoweza kusomwa. Matatizo yanayohusiana na fonti yanaweza kuonekana katika hali zifuatazo:

  • Menyu na vitufe katika programu za GUI zinaonekana zimeharibika
  • Maandishi ya Kijapani katika mhariri wa maandishi yanaonyeshwa vibaya

Fonti za Kijapani Zinazopendekezwa

Hapa kuna fonti za Kijapani zinazopendekezwa kwa Ubuntu:

Font Name

Features

Noto Sans CJK JP

A high-quality Japanese font provided by Google (recommended as the default)

Takao Fonts

Previously the default font for Ubuntu (available in thin and bold versions)

IPA Fonts

High-quality fonts provided by the Information-technology Promotion Agency (IPA)

VL Gothic

Highly readable and optimized for terminal use

Jinsi ya Kusakinisha Fonti

1. Kusakinisha Noto Sans CJK JP (Fonti ya Chaguo-msingi Inayopendekezwa)

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

2. Kusakinisha Fonti za Takao

sudo apt install -y fonts-takao

3. Kusakinisha Fonti za IPA (Shirika la Kupitisha Teknolojia ya Habari)

sudo apt install -y fonts-ipafont

4. Kusakinisha VL Gothic (Imeboreshwa kwa Terminal)

sudo apt install -y fonts-vlgothic

Baada ya kusakinisha fonti, anza upya mfumo wako au sasisha kache ya fonti kwa:

fc-cache -fv

Jinsi ya Kuweka Fonti

Kuweka Fonti katika Programu za GUI

  1. Fungua programu ya “Mipangilio”
  2. Nenda kwenye sehemu ya “Fonti”
  3. Badilisha “Fonti ya Kawaida,” “Fonti ya Hati,” na “Fonti ya Monospace” kuwa fonti unayopendelea
  4. Toka nje na ingia tena ili kutumia mipangilio

Kuweka Fonti katika Terminal

  1. Fungua terminal
  2. Nenda “Mapendeleo” → “Mapendeleo ya Profaili”
  3. Angalia sanduku la “Tumia fonti ya kibinafsi”
  4. Chagua fonti unayopendelea (mfano, Noto Sans Mono CJK JP)
  5. Hifadhi mipangilio na anza upya terminal

Kutumia na Kuthibitisha Mipangilio ya Fonti

Ili kuthibitisha kama mipangilio ya fonti imetumika vizuri, jaribu yafuatayo:

  1. Angalia fonti zilizokusanywa kwa kutumia amri ya fc-list
fc-list | grep "Noto"
  1. Jaribu kuonyesha maandishi ya Kijapani katika terminal
echo "こんにちは、Ubuntuの文字化け対策"
  1. Angalia kama maandishi ya Kijapani yanaonyeshwa vizuri katika programu za GUI (Firefox, LibreOffice, n.k.)

5. Kuangalia na Kubadilisha Msimbo wa Herufi

Nini ni Msimbo wa Herufi?

Msimbo wa herufi ni mfumo unaowapa nambari za kidijitali herufi. Baadhi ya misimbo inayotumiwa sana ni pamoja na:

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

Kwa kuwa Ubuntu hutumia UTF-8 hasa, kufungua faili katika misimbo mingine (kama Shift_JIS) kunaweza kusababisha maandishi yaharibike.

Jinsi ya Kuangalia Msimbo wa Herufi wa Faili

1. Tumia Amri ya file

file -i sample.txt

Mfano wa pato:

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

2. Tumia Amri ya nkf

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

Mfano wa pato:

Shift_JIS (CRLF)

Jinsi ya Kubadilisha Msimbo wa Herufi

1. Badilisha Kutumia Amri ya iconv

Badilisha Shift_JIS kuwa UTF-8:

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

Badilisha EUC-JP kuwa UTF-8:

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

2. Badilisha Kutumia Amri ya nkf

Badilisha Shift_JIS kuwa UTF-8:

nkf -w sample.txt > sample_utf8.txt

Badilisha EUC-JP kuwa UTF-8:

nkf -w --overwrite sample.txt

Kuzuia Maandishi Yaharibike katika Terminal na Wahariri

1. Tumia Amri ya less Kuonyesha Vizuri

export LESSCHARSET=utf-8
less sample.txt

2. Bainisha Msimbo wa Herufi katika vim

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

3. Badilisha Msimbo katika gedit au VSCode

  • gedit (mhariri wa chaguo-msingi wa GNOME)
  1. Fungua faili kwa gedit sample.txt
  2. Wakati wa kuhifadhi, badilisha msimbo kuwa UTF-8
  • VSCode (Visual Studio Code)
  1. Bonyeza “Msimbo” chini ya skrini
  2. Chagua UTF-8

6. Kuangalia Mipangilio ya Terminal na Wahariri

Kuangalia na Kurekebisha Mipangilio ya Terminal

1. Angalia Mipangilio ya Msimbo wa Terminal

Ili kuangalia viendelezi vya mazingira yako vya sasa, tumia amri zifuatazo:

echo $LANG
echo $LC_ALL

Mfano wa Pato (Mipangilio Sahihi):

ja_JP.UTF-8
ja_JP.UTF-8

If the output is C or POSIX, you need to change the locale settings to ja_JP.UTF-8.

2. Sanidi Fonti za Terminali

GNOME Terminal (Terminali Chaguo-msingi)

  1. Fungua terminali
  2. Nenda kwenye “Preferences”
  3. Fungua “Profile Preferences” na nenda kwenye kichupo cha “Text”
  4. Wezesha “Use custom font” na chagua moja ya yafuatayo:
  • Noto Sans Mono CJK JP
  • VL Gothic
  • Takao Gothic
  1. Hifadhi mipangilio na anzisha upya terminali

Kuweka Usimbaji wa Herufi katika Vihariri vya Maandishi

1. Sanidi Usimbaji wa Vim

Ili kuangalia mipangilio yako ya sasa, fungua Vim na uendeshe:

:set encoding?
:set fileencoding?

Matokeo Yanayotarajiwa:

encoding=utf-8
fileencoding=utf-8

Kama haijawekwa kwenye utf-8, ongeza yafuatayo kwenye faili yako ya ~/.vimrc ili kufanya UTF-8 kuwa chaguo-msingi:

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

2. Sanidi Usimbaji wa Nano

Ili kubadilisha mipangilio ya chaguo-msingi, ongeza mstari ufuatao kwenye ~/.nanorc:

set encoding "utf-8"

3. Sanidi Usimbaji wa VSCode

  1. Bofya “Encoding” upande wa chini kulia wa dirisha la VSCode
  2. Chagua UTF-8
  3. Ikiwa inahitajika, tumia “Save with Encoding”

Ili kufanya UTF-8 kuwa usimbaji chaguo-msingi, ongeza yafuatayo kwenye faili yako ya settings.json:

"files.encoding": "utf8"

7. Utatuzi wa Masuala Maalum

Kurekebisha Maandishi Yaliyojaa Makosa katika Programu za GUI

1. Masuala ya Kuonyesha Kijapani katika Firefox na Chrome

Suluhisho:

  1. Sakinisha fonti zinazohitajika
sudo apt install -y fonts-noto-cjk fonts-ipafont
  1. Angalia mipangilio ya fonti ya kivinjari
  • Firefox:
    1. Nenda kwenye about:preferences, kisha fungua “Fonts & Colors” → “Advanced”
    2. Badilisha “Proportional” and “Monospace Fonts” to Noto Sans CJK JP
  • Chrome:
    1. Nenda kwenye chrome://settings/fonts
    2. Badilisha “Standard Font” and “Monospace Font” to Noto Sans CJK JP

2. Kurekebisha Maandishi Yaliyojaa Makosa katika LibreOffice

Suluhisho:

  1. Sakinisha fonts-noto-cjk and fonts-ipafont
  2. Badilisha mipangilio ya fonti ya LibreOffice
  • Nenda kwenye “Tools” → “Options” → “LibreOffice” → “Fonts”
  • Badilisha fonti chaguo-msingi kuwa Noto Sans CJK JP

Kurekebisha Maandishi Yaliyojaa Makosa katika Mazingira ya CUI

1. Masuala ya Maandishi Yaliyojaa Makosa katika Kikao cha SSH

Suluhisho:

  1. Angalia mipangilio ya locale kwenye seva
locale
  1. Ikiwa ja_JP.UTF-8 haipo, endesha:
sudo apt install -y language-pack-ja
sudo locale-gen ja_JP.UTF-8
sudo update-locale LANG=ja_JP.UTF-8

8. Maswali Yanayoulizwa Mara kwa Mara (FAQ)

Q1. Locale yangu imewekwa sahihi, lakini maandishi bado yana makosa.

J:** Ingawa locale yako ni sahihi, thibitisha mipangilio:

locale

Kama LANG=ja_JP.UTF-8 haionekani, weka upya locale:

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

Q2. Ni faili maalum tu zina maandishi yaliyojaa makosa.

J: Faili inaweza kuwa na usimbaji tofauti. Angalia kwa kutumia:

file -i sample.txt

Kama faili haiko katika UTF-8, ibadilishe:

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

Au kwa kutumia nkf:

nkf -w --overwrite sample.txt

9. Hitimisho

Katika makala hii, tumeshughulikia masuala ya maandishi yaliyojaa makosa katika Ubuntu, sababu zake, na jinsi ya kuyarekebisha. Sababu kuu za maandishi yaliyojaa makosa ni mipangilio isiyo sahihi ya locale, fonti zinazokosekana, kutokulingana kwa usimbaji wa herufi, na mipangilio isiyo sahihi ya terminal/vihariri.

Mambo Muhimu ya Kumbukumbu

  • Weka locale sahihi : Endesha update-locale LANG=ja_JP.UTF-8
  • Sakinisha fonti za Kijapani : Tumia sudo apt install -y fonts-noto-cjk fonts-ipafont
  • Thibitisha usimbaji wa faili : Tumia file -i and convert with iconv
  • Sanidi terminali na vihariri : Hakikisha mipangilio ya usimbaji wa UTF-8 imewekwa

Kwa kufuata hatua hizi, unaweza kutatua na kuzuia matatizo ya maandishi yaliyojaa makosa katika Ubuntu.