# Why UniCode?

ကျွန်တော်တို့ **ယူနီကုဒ်** ဘာကြောင့် သုံးသင့်တာလဲ အရင်မပြောခင် *What is Unicode?* ဆိုတာလေး အရင်ပြောပြပါမယ်။

(*ယူနီကုဒ်ဘယ်လို ပြောင်းရလဲ* ပြောမှာတော့မဟုတ်ဘူး ယူနီကုဒ် နဲ့ ပတ်သတ်တဲ့ Knowledge တွေပဲပြန် share မှာပါ)​

### What is Unicode?

> ***Unicode ဆိုတာ International Encoding Standard တစ်ခုဖြစ်တဲ့ Universal Character Set တစ်ခု​ပဲ ဖြစ်ပါတယ်။***

Unicode ကို အဓိကသုံးရတဲ့ အကြောင်းရင်းမှာ

* Encoding အတွက်လည်း ဟုတ်တယ်
    
* Representation အတွက်လည်း ဟုတ်တယ်
    
* Text handling အတွက်လည်း ဟုတ်တယ်
    

အများနားလည်အောင် ပြောရမယ်ဆိုရင် လက်ရှိတစ်ကမ္ဘာလုံးမှာ လက်ခံကျင့်သုံးနေတဲ့ ဘာသာစကားတွေကို Computer ပေါ်မှာ ဖော်ပြဖို့အတွက် Encoding စနစ်တစ်ခုပဲဖြစ်ပါတယ်။

*ဘာအတွက်သုံးရတယ် ဆိုတာတော့ ဟုတ်ပါပြီ ဘာတွေကော အကျိုးရှိလာမှာလဲ*

> 1. ***တစ်ကမ္ဘာလုံးမှာရှိတဲ့ ဘာသာစကားအားလုံး တစ်ပေါင်းတစ်စည်းတည်း Computer စနစ် အမျိုးမျိုးမှာ ရေးဖတ်နိုင်လာမယ်***
>     
> 2. ***ဘာသာစကား တစ်ခုကနေတစ်ခု ဘာသာပြန်တာတွေ လုပ်လာနိုင်မယ်***
>     
> 3. ***အဆင့်မြင့်တဲ့ ဘာသာစကား အသုံးပြုမှုတွေ ဆောင်ရွက်နိုင်လာမယ် ( အဆင့်မြင့် အသုံးပြုမှုဆိုတာက အသံစနစ်နဲ့ ပြုလုပ်တာမျိုးတွေ၊ Text Recognition လုပ်တာမျိုးတွေကို ပြောတာပါ )***
>     

ဒါကတော့ ယူနီကုဒ် ရဲ့ Definition နဲ့ အသုံးပြုရင်ရရှိလာမယ့် အကျိုးကျေးဇူးတွေပဲ ဖြစ်ပါတယ်။

ဒါဆိုရင် မေးစရာတွေတော့ ရှိလာပြီ 🤔

### လက်ရှိစနစ်ကို ဘာလို့စွန့်ခွာရတာလဲ

ဟုတ်ပါတယ် လက်ရှိအများသုံးနေတာက ဇော်ဂျီပါ။ ဒါဆို ဇော်ဂျီကို ဘာလို့ဆက်မသုံးတော့တာလဲ။ ပြဿနာက " ဘောင်မဝင်လို့ပါ " (😛) တကယ်ပြောချင်တာက နိုင်ငံတကာ စံချိန်စံညွှန်းကို လိုက်မနာထားဘူးလို့ပြောတာပါ။ အဲ့ဒါကြောင့် နိုင်ငံတကာစံညွှန်းဖြစ်တဲ့ Unicode စနစ်ကို ပါဝင်ခွင့်မရတာပါ။

*(၁၉၉၉ မှာ မြန်မာယူနီကုဒ်စနစ်ကို စတင်ခဲ့တာဖြစ်ပြီး ၂၀၀၅ မှ ပိုမိုပြည့်စုံလာတာပါ။ ဒါပေမယ့် ဇော်ဂျီစနစ်ဟာ Public ကို အရင်စောရောက်ခဲ့တာပဲ ဖြစ်ပါတယ်။ ဇော်ဂျီ ဟာ ယူနီကုဒ် စံညွှန်းတစ်ခုဖြစ်ဖို့လုပ်လာရင်းနဲ့ ပဲ မှားလာခဲ့တာပါ)* ဒါဆို ယူနီကုဒ် နဲ့ ဇော်ဂျီ က ဘာကွာလဲ လို့ မေးစရာရှိပါတယ်။

> ***ဇော်ဂျီ ရဲ့ တာဝန်က စာရိုက်ရင်မှန်တယ် ဖတ်လည်းမှန်ပါတယ်။ ဒီလောက်ဆို ဇော်ဂျီ ရဲ့ တာဝန်ကျေပါပြီ။***

*(အဲ့ဒါလည်း ပြီးတာပဲကို ဘာတွေ ယူနီကုဒ် မှ ယူနီကုဒ် နေရတာလဲ )*

### ယူနီကုဒ် က ဒါတွေကို လုပ်နိုင်လို့ပါ

* စာရိုက်မှန်တယ် ဖတ်လည်းမှန်တယ်
    
* ဘာသာစကား တစ်ခုကနေတစ်ခု ပြောင်းလဲမှုတွေ လုပ်နိုင်တယ်
    
* တိုင်းရင်းသားစာတွေလည်း ပါမယ်
    
* အပေါ်မှာပြောခဲ့တဲ့ ဘာသာစကား အဆင့်မြင့်အသုံးပြုမှုတွေလည်း လုပ်လို့ရပါတယ်။
    

*(ဇော်ဂျီ အနေနဲ့က အဲ့လို အလုပ်တွေကို ကောင်းကောင်းမလုပ်နိုင်တာပါပဲ ပြဿနာက အဲ့ဒါပါ)*

---

(ဗဟုသုတ အနေနဲ့ သိသင့်တာ တစ်ခုရှိပါတယ်)

**ယူနီကုဒ် ဆိုတာက Font နဲ့ Keyboard မဟုတ်ပါဘူး။**

> ***(တစ်ကမ္ဘာလုံးမှာရှိတဲ့ အက္ခရာတွေကို နံပါတ်သတ်မှတ်သိမ်းဆည်းခြင်းဆိုင်ရာ နိုင်ငံတကာစံချိန်စံညွှန်းဖြစ်ပါတယ်)***

ယူနီကုဒ် မှာ ပုံသေ Keyboard, ပုံသေ Font သတ်မှတ်ထားတာမျိုးမရှိပါဘူး။ Unicode Encoding စနစ်ကို လိုက်နာထားတဲ့ ဘယ် Keyboard၊ ဘယ် လက်ကွက်၊ ဘယ် Font မျိုးကိုမဆို သုံးလို့ရပါတယ်။

လက်ရှိ ယူနီကုဒ်စနစ်ကို လိုက်နာထားတဲ့ Fonts တွေတော့

* Pyidaungsu
    
* Zawdecode
    
* Noto Sans Myanmar တို့ ဖြစ်ပါတယ် (တခြား Fonts တွေလည်းအများကြီးမှ အများကြီးရှိပါသေးတယ်၊ အပေါ်၂ ခုက လူသုံးအများဆုံး ၂ ခု ဖြစ်ပြီး အောက်ဆုံးကောင်က ကျွန်တော် App development အတွက်သုံးတာမို့ပါ )
    

---

### ပြည်ထောင်စုဖောင့်

မြန်မာဘာသာ စကား ၁၇ မျိုးရပါတယ်။ အဲ့ဒါတွေကတော့ ဗမာ, သက္ကတ/ပါဠိ, မွန်, ရှမ်း, စကောကရင်, ပိုးကရင်(အနောက်ပိုင်း), ပိုးကရင် (အရှေ့ပိုင်း), ပအိုဝ့်ကရင်, ကယား, အရှိုချင်း, ခန္တီးရှမ်း, Aiton & Phake, တိုင်းလျမ်ခေါ်ရှမ်းနီ, ရွှေပလောင်, ပလေးပလောင်, ရူမာည်းတအောင်း, အစရှိသည်တို့ပဲ ဖြစ်ပါတယ်။

*(အဲ့လိုမျိုး တိုင်းရင်းသားပေါင်းစုံရလို့လည်း ပြည်ထောင်စု လို့ နာမည်ပေးထားတာပဲ ဖြစ်ပါတယ်)*

Developer တွေအနေနဲ့လည်း လွပ်လပ်စွာယူသုံးလို့ ရပါတယ်။ ဘာလို့လဲ ဆိုတော့ Pyidaungsu Font က OFL (open font license) မို့ပါ။ (ကျွန်တော့် အတွေ့အကြုံအရ ဆိုရင် Pyidaungsu Font က ပုံမှန် စာရိုက်စာဖတ်ရမှာ အဆင်ပြေပြီး Adobe Softwares တွေမှာ ဆိုရင်တော့ Pyidaungsu book font သုံးမှပဲ အဆင်ပြေမှာပါ ဒါပေမယ့်လည်း Perfect တော့ မဖြစ်သေးပါဘူး။ တချို့စာလုံးတွေ ရိုက်လို့မရတာ ရှိသေးတယ်)​

### ဇော်ဒီကုဒ်ဖောင့်

သူလည်း Unicode Font တစ်မျိုးပါပဲ။ သူ့ကို ဘာလို့ ကြိုက်တာလဲဆိုတော့ သူက Zawgyi ကိုလည်း ဖတ်နိုင်တယ်။ ဖတ်နိုင်တဲ့ ဆိုပေမယ့် 80% လောက်ကိုသာ အမှန်မြင်ရတာပါ (ဘာပဲဖြစ်ဖြစ်လေ တချို့ ဇော်ဂျီသုံးနေသေးတဲ့ လူတွေ နဲ့ စကားပြောရင် အနည်းဆုံး Converter သုံးစရာမလိုပဲ မြင်ရပြီလေ xD ) Unicode Text တွေကိုတော့ 100% မြင်ရပါတယ်။ (Unicode Migration ကြီး လုံးဝအောင်မြင်သွားတယ်ဆိုရင်တော့ Zawdecode ကိုလည်း ပြန်ဖြုတ်ပစ်ခဲ့မှာပါ)

---

### Unicode Keyboards

Mobile အတွက်ဆိုရင်တော့ [**TTKeyboard**](https://apps.apple.com/us/app/ttkeyboard/id919884616), [**Gboard**](https://play.google.com/store/apps/details?id=com.google.android.inputmethod.latin) , [**Frozen​ Keyboard**](https://play.google.com/store/apps/details?id=com.FrozenKeyboard) နဲ့ [**Bagan Keyboard**](https://play.google.com/store/apps/details?id=com.bit.androsmart.kbinapp) တို့ကို သုံးနိုင်ပါတယ်။*(ဒါတွေကတော့ အသုံးများတဲ့ Keyboards တွေပါ။ Latest version ကို သုံးဖို့တော့ တိုက်တွန်းပါတယ်)*

PC အတွက်ဆိုရင်တော့ Windows 10 မှာဆိုရင် default ပါတဲ့ Keyboard ထက် [**Keymagic**](https://www.mmunicode.org/wiki/pyidaungsu-one-click-installer/) ကို သုံးဖို့ Recommend​ ပေးပါတယ်။ Mac အတွက်လည်း [**Keymagic**](https://mcf.org.mm/myanmar-unicode/398-mac-unicode.html) ရှိပါတယ်။

---

*(ဗဟုသုတအနေနဲ့လည်း Font တွေ မမှန်တဲ့ အကြောင်းလေး နည်းနည်းပြောပြချင်ပါတယ်)*

ပုံမှန်အားဖြင့် သိကြတာက Font တွေ မမှန်ရင် Text Rendering မမှန်ဘူးလို့ပဲ ပြောကြတာပါ။တကယ်တော့ ပြဿနာက ၂ မျိုးဖြစ်နိုင်ပါတယ်

**Text Shaping Problem**

ပထမတစ်ခုက Text Shaping Problem ပါ

> ***စာလုံးတွေက အကုန်မြင်ရပြီး သူ့နေရာ နဲ့ သူ မရှိတာပါ။***

![Screen Shot 2019-09-18 at 2.42.51 AM.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1568751214095/Bcmk4-vuR.png?auto=compress,format&format=webp align="left")

**Rendering Problem**

နောက်တစ်ခုကတော့ Rendering Problem ပါ

> ***စာလုံးတွေကို အပြည့်မဖော်ပြနိုင်တာပါ***

![Screen Shot 2019-09-18 at 2.44.34 AM.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1568751329210/Ah15xq523.png?auto=compress,format&format=webp align="left")

---

အခုလို Migration ကာလ မှာ Unicode ပြောင်းကြတဲ့ အခါ အဆင်မပြေတာတွေလည်း ရှိကြပါတယ်။ အဲ့လိုဖြစ်ရတဲ့ အဓိက အကြောင်းအရင်းတွေကတော့

* Android phones တွေ မှာဆိုရင် Android version 4 အရှေ့က ဖုန်းတွေ မှာ Text Shaping မပါဝင်ပါဘူး အဲ့အတွက်ကြောင့် ဘယ် Font သွင်းသွင်း အလုပ် လုပ်မှာ မဟုတ်ပါဘူး
    
* Modern Computer တွေ မှာ ဆိုရင် Shaping ပါပြီးသားပါ သို့ပေမယ့် Font မပါတဲ့ အတွက်ကြောင့် မမှန်ရခြင်းဖြစ်ပါတယ်။
    
* နောက်တစ်ခုက Shaping လည်း ပါတယ် Font လည်း ပါတယ် သို့ပေမယ့် Rendering ကောင်းကောင်း မလုပ်နိုင်တဲ့ Font မပါတဲ့အတွက်ကြောင့် မမှန်ရခြင်းဖြစ်တယ်
    
* Browser တွေမှာ Font embedded လုပ်ပြီး သုံးရင် အဆင်ပြေပေမယ့် Browser အဟောင်းတွေမှာ Font Embedded လုပ်လို့ မရပါဘူး (CSS3 မရတာကို ပြောတာ)
    

အဖြစ်အများဆုံးကတော့ smartphone တွေမှာပဲ များကြပါတယ်။ မြန်မာနိုင်ငံအတွင်း ဝယ်ယူထားတဲ့ ဖုန်းတွေမှာ စံစနစ်မကိုက်ညီတဲ့ Fonts တွေ နဲ့ Keyboards တွေကို ထည့်သွင်းပြီးသား ဖြစ်တဲ့အတွက်ကြောင့် ပြန်ဖြုတ်ပြီး မူလ Un​icode Font နဲ့ Keyboard ကို ပြန်ထည့်ပေးလိုက်ရင် အဆင်ပြေပါတယ်။ ချွင်းချက်တွေတော့ ရှိပါတယ်။

တချို့ဖုန်းတွေမှာတော့ အဲ့လိုလုပ်လည်း မရပါဘူး။ လုပ်လို့ မရတဲ့အကြောင်းကတော့ စက်ရုံကနေ ထွက်ကတည်းက မြန်မာနိုင်ငံအတွက် ‌ဇော်ဂျီ ကို Force ပေးထားလို့ပါ။ အဲ့အတွက် Unicode Fonts တွေက အဲ့လို Force ပေးထားတဲ့ ဖုန်းတွေမှာ အလုပ်မဖြစ်ပါဘူး။ အဲ့လိုဖြစ်တဲ့ Smart Phone တွေကတော့ *Huawei*, *Samsung*, *Oppo*, *Xiaomi* ဖုန်းတွေမှာ အဖြစ်များကြပါတယ်။(နောက်ပိုင်း တဖြည်းဖြည်းနဲ့တော့ အဆင်ပြေလာမယ် ထင်ပါတယ်)

---

### Our Unicode Migration Progress

လက်ရှိမှာတော့ အရင်အစိုးရရဲ့ ဦးဆောင်မှုနဲ့ ၂၀၁၉၊ ဧပြီလ ၁ ရက်နေ့မှစတင်ပြီး အစိုးရရုံးများမှာ ယူနီကုဒ်စံကိုလိုက်နာပြီး တိုင်းရင်းသားစာများကိုပါ တွဲဖက်ရေးဖတ်နိုင်တဲ့ “ပြည်ထောင်စုဖောင့်” ကို တရားဝင်ရုံးသုံးဖောင့်အဖြစ်စတင် ပြောင်းလဲအသုံးပြု နိုင်ခဲ့ကြပြီဖြစ်ပါတယ်။ ပြည်သူလူထုအနေနဲ့က ၂၀၁၉ အောက်တိုဘာ ၁ ရက်နေ့မှာ တရားဝင် စတင်အသုံးပြုခဲ့ကြပါပြီ

![Screen Shot 2019-09-18 at 4.42.20 AM.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1568758413983/dYCJmJcJC.png?auto=compress,format&format=webp align="left")

အရှေ့တောင်အာရှမှာ ယူနီကုဒ်စနစ်ကို ကူးပြောင်းဖို့ ၃ နိုင်ငံသာ ကျန်ပါတော့တယ်။ အဲ့နိုင်ငံတွေကတော့ ဘင်္ဂလားဒေ့ရှ်၊ ကမ္ဘောဒီးယား နဲ့ မြန်မာနိုင်ငံပဲ ဖြစ်ပါတယ်။ ဒါပေမယ့် ၂၀၀၈ နဲ့ ၂၀၁၀ ခုနှစ်တွေမှာ အဲ့ ၂ နိုင်ငံ က ကူးပြောင်းနိုင်ခဲ့ပါပြီ။ မြန်မာကတော့ နောက်အကျဆုံးဖြစ်ပါတယ်။

ဒါကြောင့်မို့ မြန်မာစာစံစနစ် *(Myanmar Unicode Migration)* ကူးပြောင်းရေးသည် မြန်မာလူမျိုး၊ မြန်မာစာစနစ် သုံးတဲ့သူတိုင်း တစ်ပြိုင်တည်းအညီလုပ်ဆောင်ရမည့် တာဝန်တစ်ခုလည်းဖြစ်ပါသည်။

*(ယူနီကုဒ် ဘယ်လိုပြောင်းရလဲ ဆိုတာတွေတော့ ထည့်မပြောထားပါဘူး အဲ့ဒါကြောင့် ယူနီကုဒ် နဲ့ ပတ်သတ်ပြီး အကူညီတောင်းလို့ရမယ့် Links တွေကိုပဲ အောက်မှာ ပေးထားလိုက်ပါတယ်)*

## Help Links:

[**Unicode technical support**](https://unicode-today.freshdesk.com/support/home)

[**Word and Excel Users**](https://unicodetoday.wpengine.com/2017/07/20/plugin-excel-word/?fbclid=IwAR1qkTYzkqSZ1qM_KS8UxznB2Iv5bBr12BVl8N30HrKf4SjabK_4hv-yITg)

[**Keymagic for macOS**](https://github.com/thantthet/keymagic/releases/tag/macos-1.5.2?fbclid=IwAR0Qw4DuyGv_ecZGrYv5IzEGC1TMK7sEGtviJzIXsnGReY7YltlRKkL-eCM)

[**iOS users**](http://unicodetoday.wpengine.com/2017/01/19/ios-uni-keyboard/)

[**Android users**](http://unicodetoday.wpengine.com/2018/01/09/android-gboard-tt-keyboard/)

**Notes from Myanmar Unicode Migration Meetup**
