Ye Lin Kyaw Random Thoughts

Switching to Emacs for Myanmar Scripts

Vim is my favourite editor and I am using it for quite a long time. I use it for writing programs, changing configuration on my servers, writing reports and so on. I like Vim but there is one major issue, Vim is not supporting Unicode characters. It only supports Monospaced fonts. Most of the complex scripts are not possible to support Monospaced. I need Unicode support for Myanmar documents.

My requirements for the text editor are supporting multiple platforms with and without UI, general purpose usage and also for writing program with several languages. According to my requirements, there is only one choice, Emacs. There are a few uncomfortable things for Vim user. Without command mode, the combination key makes me slow the cursor navigation and typing speed.

The Unicode Fonts Package is needed to install for proper mapping between Unicode character range and respective fonts. unicode-fonts.el has been configured for common built in Myanmar fonts. Padauk, Myanmar MN and Myanmar Sangam MN have been configured. I added the additional configuration for Masterpiece Uni Sans and Yunghkio fonts for Myanmar character.


("Marlett"                        :licenses (microsoft))
("Masterpiece Uni Sans"    :licenses (tin myo htet))
("Matisse ITC"                  :licenses (microsoft))
("Yunghkio"                       :licenses (sai zin di di zone))
("Myanmar"                        (
                                  "Masterpiece Uni Sans"
                                  "Myanmar Sangam MN"
                                  "Myanmar MN"

After configuring the unicode fonts package, Myanmar scripts are rendered correctly with Emacs on Windows and Linux. There are some issues on Mac, Emacs for Mac OS X and Aquamacs are not rendering well with Myanmar scripts. The image from Unicode Fonts is also with Mac Emacs but it is seen to be rendered Myanmar scripts properly. It could be the problem of Emacs for Mac OS X and Aquamacs.

Emacs for Mac OSX

Homebrew was used to build Emacs on my Mac. The HEAD version of Cocoa Emacs was used and the compilation process took about 45 minutes. Finally, the self built Emacs is properly rendering with Myanmar Scripts.

Build Emacs

brew install emacs --HEAD --cocoa

Copy and Alias

cp -R /usr/local/Cellar/emacs/HEAD/ /Applications/
echo 'alias emacs="/Applications/ -nw"' >> ~/.profile