Burmese and LuaLaTeX

Here is a sample using my Luatex-harfbuzz-shaper:

\documentclass[landscape]{memoir}

\usepackage{harfbuzz}
% \usepackage{fontspec,polyglossia,url}
\usepackage{url}

\font\burmeseFamily={Noto Sans Myanmar:+script=mymr;+language=mya} at 12pt
\font\burmeseFamilyDecom={Noto Sans Myanmar:+script=dflt;+language=dflt} at 12pt
\newcommand{\burmeseTest}[1]{
{\burmeseFamily{} #1}
\hfill
{\burmeseFamilyDecom{} #1}
}

\begin{document}

\burmeseTest{င်းကွန်းင်းလောင်းတော်ကြီး}

\bigskip
\burmeseTest{မ္မတီခေါင်းလောင်းကြီး}


\bigskip
Might be usefull: \url{https://r12a.github.io/pickers/burmese/}
\end{document}

Note that it expects the Noto Sans Myanmar is installed on your system. You also need to install Luaharfbuzz on your system.

This is the result:

enter image description here


At the moment, LuaTeX does not support most of the world's scripts, including Burmese and other Brahmi-derived scripts. This is because it supports only simple scripts where characters are laid out one after the other; not scripts that require complex text layout.

There is some rudimentary support for Devanagari, and possibly for Malayalam, but not for Burmese as far as I know. Your options if you need to use such an “unsupported” script are:

  • Just use XeTeX (or pdfTeX with a package for your script/language, if it exists), instead of LuaTeX (e.g. if you're using LaTeX, compile with xelatex instead of lualatex).

  • Generate the text in another application (like XeTeX or whatever), and insert it as images into your LuaTeX document.

  • Use one of the “experimental” ways of using a library (Harfbuzz) from LuaTeX, for text shaping. Some links (that you'll have to make sense of yourself): tatzetwerk/luatex-harfbuzz, deepakjois/luatex-harfbuzz, michal-h21/luatex-harfbuzz-shaper (associated mailing list post), recent article by two of the LuaTeX developers.

  • Figure out how support is done in LuaTeX for Devanagari, and imitate it for Burmese (and other scripts). (I don't know how easy this is: on the one hand Harfbuzz is a long-running project with a lot of complexity; on the other hand on a cursory look the small amount of support code in LuaTeX for Devanagari seems to be adequate for some common purposes… though I haven't tested it in any detail.)

You should also ask on the LuaTeX mailing list: a couple of months ago there was a claim that no one had ever asked the LuaTeX developers for support for such scripts!


I don't have your second font. But with the engine luahbtex and luaotfload version > 3.11, your example looks like this:

\documentclass[landscape]{memoir}

\usepackage{fontspec,polyglossia,url}

\newfontfamily{\burmeseFamily}
           {NotoSerifMyanmar-Regular.ttf}[Renderer=Harfbuzz,Script=Myanmar]

\begin{document}

\burmeseFamily 
င်းကွန်းင်းလောင်းတော်ကြီး

မ္မတီခေါင်းလောင်းကြီး

\end{document}

![enter image description here

The binary luahbtex is already available in texlive 2019 and a current miktex. It can currently be used by using the lualatex-dev format (What is "latex-dev"?), in texlive 2020 it will the standard engine used by lualatex.