TransWikia.com

Manchu and Mongolian script

TeX - LaTeX Asked by Mårten on August 6, 2020

I am trying to write a document including Manchu script on a Mac. Manchu is written with the Mongolian alphabet with the addition of some diacritics, but the extra diacritics are included in standard Mongolian fonts included in Mac OS. Manchu/Mongolian script functions similar to Arabic script, in that the letters are connected and their shape varies depending on their position within a word.

However, Mac OS is unable to input or even display Manchu/Mongolian properly, because it cannot handle the different forms that letters should take depending on their position within the word (isolated, initial, medial, or final).

PCs can now both input and display Manchu/Mongolian.

Now I’m wondering if it’s possible to enter Manchu/Mongolian in LaTeX (say, by typing the UNICODE numbers of the letters), and have the typesetter produce proper script?

3 Answers

in general you can use the Unicode numbers or the corresponding letters:

documentclass{article}
usepackage{fontspec}
setmainfont{圈点满文印刷体}% the font name of manchu.ttf}
begin{document}

abcdefghijklmnopqrst

char055char056char057 

end{document}

enter image description here

You hvae to use platex, lualatex or omega to write it in the correct direction from top to bottom.

Correct answer by user2478 on August 6, 2020

The below functionality is available as the manchuxetex package on GitHub.

A minimal example as to demonstrate Khaled Hosny’s point of hacking Manchu/Mongolian into top-to-bottom, left-to-right:

% !TEX TS-program = xelatex
documentclass{scrartcl}
usepackage{fontspec}
newfontfamily{dcw}[]{DaicingWhite}%
begin{document}
noindent
Line above% to demonstrate that the lines are being stacked as normal
rotatebox{-90}{%
XeTeXupwardsmode1% successive lines will be stacked upwards instead of downwards
begin{minipage}{4em}% this will be the vertical length of the Mongolian section
{dcw% Font: Daicing White
1 ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ% direct Unicode input of Manchu letters
2 ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ
}% End font
end{minipage}
XeTeXupwardsmode0
}% End rotatebox

noindent
Line underneath
end{document}

This yields the following:

Manchu text between sections of English text

Daicing White’s letters are already rotated, therefore there is no need to use the Vertical=RotatedGlyphs font feature here.

Answered by brian-ammon on August 6, 2020

A preliminary solution for Lua(La)TeX could be made emulating XeTeX upwards mode via inverting text lines and then rotating the result. The only issue is the paragraph break I couldn't get rid of. Text extract from http://www.cjvlang.com/Writing/writmongol/tradmononsite.html for comparison. Mongolian White is available from here: http://www.mongolfont.com/en/font/mnglwhiteotf.html

documentclass{standalone}
usepackage{luacode}
usepackage{fontspec}
setmainfont{Mongolian White}[Renderer=Harfbuzz,Script=Mongolian]
begin{luacode*}
userdata = userdata or {}
--Idea taken from chickenize's boustrophedon
userdata.mongolian = function(head)
    rot = node.new(node.id("whatsit"),node.subtype("pdf_literal"))
    rot2 = node.new(node.id("whatsit"),node.subtype("pdf_literal"))
    for line in node.traverse_id(0,head) do
        w = line.width/65536*0.99625 
        rot.data = "-1 0 0 -1 "..w.." 0 cm"
        rot2.data = "-1 0 0 -1 "..-w.." 0 cm"
        line.head = node.insert_before(line.head,line.head,node.copy(rot))
    
    node.insert_after(line.head,node.tail(line.head),node.copy(rot2))
    end
    return head
end
end{luacode*}
defstartmongolian{directlua{luatexbase.add_to_callback("post_linebreak_filter", userdata.mongolian, "mongolian")}}

defstopmongolian{%
%Don't remove par !
pardirectlua{luatexbase.remove_from_callback("post_linebreak_filter", "mongolian")}%
}
usepackage{graphicx}
begin{document}
rotatebox{90}{%
parbox{8cm}{%
startmongolian
begin{flushleft}
    ᠣᠢᠷ᠎ᠠ ᠵᠢᠨ ᠡᠳᠦᠷ᠂ ᠦᠪᠦᠷ ᠮᠣᠩᠭᠣᠯ ᠦᠨ ᠰᠢᠯᠢ ᠵᠢᠨ ᠭᠣᠣᠯ ᠠᠢᠮᠠᠭ ᠦᠨ ᠰᠢᠯᠣᠭᠣᠨ ᠬᠦᠬᠡ ᠬᠣᠰᠢᠭᠣᠨ ᠦ ᠰᠢᠭᠦᠬᠦ ᠬᠣᠷᠢᠶ᠎ᠠ ᠨᠢᠭᠡᠨ ᠬᠦᠴᠦᠷᠬᠡᠭᠯᠡᠨ ᠨᠦᠵᠢᠳᠯᠡᠭᠰᠡᠨ ᠶᠠᠯᠠᠲᠣ ᠬᠡᠷᠡᠭ ᠲᠦ ᠰᠢᠭᠦᠯᠲᠡ ᠬᠢᠪᠡ᠃ ᠰᠢᠭᠦᠨ ᠲᠠᠰᠣᠯᠣᠯᠳᠠ ᠪᠠᠷ᠂ ᠵᠠᠭᠠᠯᠳᠣᠭᠳᠠᠭᠴᠢ ᠡᠷᠬᠢᠮᠲᠦ ᠵᠢ ᠬᠦᠴᠦᠷᠭᠡᠭᠯᠡᠨ᠂ ᠨᠦᠵᠢᠳᠯᠡᠭᠰᠡᠨ ᠶᠡᠯ᠎ᠡ ᠪᠡᠷ ᠭᠣᠷᠪᠠᠨ ᠵᠢᠯ ᠦᠨ ᠬᠣᠭᠣᠴᠠᠭ᠎ᠠ ᠲᠠᠢ ᠬᠣᠷᠢᠬᠣ ᠡᠷᠡᠭᠦᠦ ᠪᠡᠷ ᠰᠢᠳᠬᠡᠭᠰᠡᠨ ᠪᠠᠢᠨ᠎ᠠ᠃
end{flushleft}
stopmongolian
}
}
end{document}

enter image description here

Answered by user220367 on August 6, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP