please add support for Korean language in unic-cjk.tex
Hi. Recently I have tried to support typesetting UTF-8 Korean language along with context-beta. I have uploaded related files to a temporary server for your reference (3.5Mb): http://210.94.201.157/~nomos/KTUG/context-korean-test.tar.gz But as the current unic-cjk.tex does not cover Korean Hangul Syllables area and CJK Compatibility Ideographs area, I have to edit that file every time I upgrade context. It is so an annoying thing to do it every time that I suggest adding those areas in unic-cjk.tex file, like this: %%% Hangul Syllables \dostepwiserecurse{172}{215}{1}{\expanded{\defineunicodecommand {\recurselevel}} {\lookaheaduchar}} %%% CJK Compatibility Ideographs \dostepwiserecurse{249}{250}{1}{\expanded{\defineunicodecommand {\recurselevel}} {\lookaheaduchar}} Additionally, I here report some possible bugs of context-beta related to CJK (especially Korean language) support. First, unintended space is inserted when I change font family. This disappears if I add a comment sign in \enableunicodefont command in font-uni.tex. \def\enableunicodefont#1% {\definefontsynonym[\s!Unicode][\getvalue{\??uc#1\c!file}]% \def\unicodescale {\getvalue{\??uc#1\c!scale}}% \def\unicodeheight {\getvalue{\??uc#1\c!height}}% \def\unicodedepth {\getvalue{\??uc#1\c!depth}}% \def\unicodedigits {\getvalue{\??uc#1\c!conversion}}% \def\handleunicodeglyph {\getvalue{\??uc#1\c!command}}% \doifnot\currentregime{utf}{\enableregime[unicode]}% % the following \relax's are realy needed \doifvalue{\??uc#1\c!interlinespace}\v!yes \setupinterlinespace\relax \doifvalue{\??uc#1\c!strut}\v!yes {\setunicodestrut\unicodeheight\unicodedepth}% <- HERE {\resetunicodestrut}% \getvalue{\??uc#1\c!commands}\relax} Secondly, to deal with special commands in pdf bookmarks, "\simplifycommands" should be added to \sanitizePDFuniencoding command in spec-tst.tex. \long\def\sanitizePDFuniencoding#1\to#2% {\enablePDFunicrlf \simplifycommands % <- HERE \let\unicodechar\relax % prevent further expansion \retainlccodes\lccode32=255 % slooow \lowercasestring\PDFunicodetrigger#1\to#2% \edef#2{\expandafter\doPDFuni#2\empty\empty}} % slooow Thirdly, "\definefileinsertion{tpd}{mps}" in spec-dpx.tex seems to be a typo. I think this should be corrected as follows: \definefileinsertion{dpx}{mps} In fact, as an unsubscribed user I have posted a similar message to the context mailinglist a few weeks ago . But I did not obtain any response then. Now being subscribed, I repost it. Best Regards, -- Dohyun Kim http://people.ktug.or.kr/~nomos/
Dohyun Kim wrote:
Hi.
Recently I have tried to support typesetting UTF-8 Korean language along with context-beta. I have uploaded related files to a temporary server for your reference (3.5Mb):
http://210.94.201.157/~nomos/KTUG/context-korean-test.tar.gz
But as the current unic-cjk.tex does not cover Korean Hangul Syllables area and CJK Compatibility Ideographs area, I have to edit that file every time I upgrade context. It is so an annoying thing to do it every time that I suggest adding those areas in unic-cjk.tex file, like this:
%%% Hangul Syllables \dostepwiserecurse{172}{215}{1}{\expanded{\defineunicodecommand {\recurselevel}} {\lookaheaduchar}} %%% CJK Compatibility Ideographs \dostepwiserecurse{249}{250}{1}{\expanded{\defineunicodecommand {\recurselevel}} {\lookaheaduchar}}
ok, done
Additionally, I here report some possible bugs of context-beta related to CJK (especially Korean language) support.
First, unintended space is inserted when I change font family. This disappears if I add a comment sign in \enableunicodefont command in font-uni.tex.
\def\enableunicodefont#1% {\definefontsynonym[\s!Unicode][\getvalue{\??uc#1\c!file}]% \def\unicodescale {\getvalue{\??uc#1\c!scale}}% \def\unicodeheight {\getvalue{\??uc#1\c!height}}% \def\unicodedepth {\getvalue{\??uc#1\c!depth}}% \def\unicodedigits {\getvalue{\??uc#1\c!conversion}}% \def\handleunicodeglyph {\getvalue{\??uc#1\c!command}}% \doifnot\currentregime{utf}{\enableregime[unicode]}% % the following \relax's are realy needed \doifvalue{\??uc#1\c!interlinespace}\v!yes \setupinterlinespace\relax \doifvalue{\??uc#1\c!strut}\v!yes {\setunicodestrut\unicodeheight\unicodedepth}% <- HERE {\resetunicodestrut}% \getvalue{\??uc#1\c!commands}\relax}
ah, it's actually someting else that's wrong: \doifvalue -> \doifelsevalue \doifelsevalue{\??uc#1\c!strut}\v!yes {\setunicodestrut\unicodeheight\unicodedepth} {\resetunicodestrut}% in the wrong case indeed the space is visible, else not; this bug went unnoticed because the reset is grouped in the wrong case
Secondly, to deal with special commands in pdf bookmarks, "\simplifycommands" should be added to \sanitizePDFuniencoding command in spec-tst.tex.
\long\def\sanitizePDFuniencoding#1\to#2% {\enablePDFunicrlf \simplifycommands % <- HERE \let\unicodechar\relax % prevent further expansion \retainlccodes\lccode32=255 % slooow \lowercasestring\PDFunicodetrigger#1\to#2% \edef#2{\expandafter\doPDFuni#2\empty\empty}} % slooow
ok, remind me to clean this up when mkiv comes around
Thirdly, "\definefileinsertion{tpd}{mps}" in spec-dpx.tex seems to be a typo. I think this should be corrected as follows:
\definefileinsertion{dpx}{mps}
ok
In fact, as an unsubscribed user I have posted a similar message to the context mailinglist a few weeks ago . But I did not obtain any response then. Now being subscribed, I repost it.
and it gets read -) i'll make a new current release that you can test in an hour from now Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
Dohyun Kim wrote:
http://210.94.201.157/~nomos/KTUG/context-korean-test.tar.gz
ok, i got it. A general remark: the next few weeks, after the tex live code freeze, Manfred will start assembling the tex 2006/2007 tex collection. If you have content that is free to distribute (like cjk fonts and such), but is not in tex live, it may get a place in on the dvd in a separate section. Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
participants (2)
-
Dohyun Kim
-
Hans Hagen