KTUG 한국 텍 사용자 그룹

Menu

KTUG :: Q&A 마당

2번 질문에 관하여, 아이디어만 말씀드리자면,

1. 주어진 한글 한 글자에 대하여, 일단 이것을 normalize합니다. 그러면 초/중/종성의 자모 코드로 분해되겠지요. 

2. 중성의 값을 취하여 케이스에 따라, \jamocolorjung을 지정하여 그 한 글자를 식자하는 명령을 만듭니다.

3. 이 명령을 써서 입력되는 한글을 처리하게 하면 원하시는 결과를 얻을 수 있을 듯합니다.

lua 프로그래밍이 가능하시다면 직접 구현해보시기 바랍니다. 약간 부하가 걸리는 것을 감내할 수 있다면 expl3로도 처리할 수 있을 것으로 보입니다. 한글 normalize는 유니코드 표준으로 알고리즘이 잘 확립되어 있기 때문에 어려운 일은 아닐 것입니다. 그러나 즉시 사용가능한 out of the box 코드로 보여드리는 것은 코딩하고 테스트하고 하는 데 제법 노력이 들 듯하여 저로서는 시도해보기 어렵겠습니다.

첨부 파일은 허접하지만 expl3로 비슷하게 해본 것입니다. 색상 설정은 \setvowelcolors 명령 부분을 원하는 대로 수정하시면 되겠습니다. 그리고 이와 같은 것은 자모 조합 feature를 갖춘 글꼴이어야 제대로 동작할 겁니다. 함초롬 LVT나 Noto CJK는 아마 될 것 같지만 모든 한글 글꼴이 다 된다고 장담은 못하겠네요.

context 컴파일은 명령행에서 context a.tex 하면 되는 것입니다만, MiKTeX은 제가 사용하고 있지 않은 시스템이라 어떻게 되는지 알지 못합니다.

KTUG 한국 텍 사용자 그룹