KTUG마당은 KTUG를 방문하는 모든 이용자가 대화를 나누고 소식을 전하는 곳입니다.

  • 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
  • Team Blog의 글을 이곳 게시판의 "정보글"로 모았습니다. Team blog는 기고자가 올린 글에 질문을 받는 부담을 줄이기 위하여 댓글을 허용하지 않았습니다. 그러나 이곳 게시판으로 모으면서 댓글을 달 수 있습니다. 게시물을 작성하실 때 댓글을 원하지 않으시면 댓글을 허용하시지 않으시기를 바랍니다. 또한 불필요한 소모성 댓글을 달지 않도록 주의하여 주시기를 바랍니다.
  • TeX과 관련된 질문이나 답변은 QnA 마당을 이용하십시오. TeX과 관련된 질문은 지웁니다
  • MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
  • 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
    • 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
  • 사용하는 편집기는 CKeditor입니다. 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한줄을 비웁니다. 글줄만 바꾸려면 shift-enter 를 누르시면 <BR>가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.

자유글 한자에 독음 달기

2015.05.07 18:08

nanim 조회 수:4009

한자만 입력하면 독음을 자동으로 달아준다면 참 좋을텐데... 에 관련된 내용입니다.

유니코드 한자의 우리말 독음 데이터베이스가 없을까 찾아봤는데, Windows의 IME 관련 API에 그런 게 있기는 있는 모양입니다만 TeX으로 이용하는 건 불가능할테고요. 다른 거라도 혹시 관련 라이브러리 공개된 게 없는지 아시는 분이 계신가요?


아무튼, 일단 U+4EXX와 U+4FXX의 500여자에 대하여 독음 데이터베이스를 만들었습니다.


%% U+4EXX

\clist_set:Nn \ondb_iv_xiv_zero {일,정,교,칠,상,하,면,만,장,삼,상,하,기,불,여,면}

\clist_set:Nn \ondb_iv_xiv_i    {개,축,축,전,차,비,세,세,구,병,병,총,동,사,승,주}

\clist_set:Nn \ondb_iv_xiv_ii   {구,양,주,유,량,엄,병,상,곤,구,개,아,장,중,극,개}

\clist_set:Nn \ondb_iv_xiv_iii  {봉,관,관,찬,림,착,주,하,환,단,위,주,정,려,거,별}

\clist_set:Nn \ondb_iv_xiv_iv   {불,이,예,내,복,구,구,탁,요,의,호,지,오,사,호,핍}

\clist_set:Nn \ondb_iv_xiv_v    {락,음,핑,퐁,교,호,괴,승,승,을,은,야,먀,구,걸,야}

\clist_set:Nn \ondb_iv_xiv_vi   {습,향,개,규,할,홀,서,둘,시,계,낭,갈,걸,돌,묠,올}

\clist_set:Nn \ondb_iv_xiv_vii  {매,란,찰,유,설,염,볼,살,나,건,솔,얼,줄,잘,건,치}

\clist_set:Nn \ondb_iv_xiv_viii {귀,간,란,린,의,궐,료,마,여,쟁,사,사,이,촉,우,우}

\clist_set:Nn \ondb_iv_xiv_ix   {우,운,호,기,오,정,사,세,긍,긍,아,사,아,제,아,극}

\clist_set:Nn \ondb_iv_xiv_x    {두,망,항,대,교,해,역,산,형,묘,역,향,경,정,량,향}

\clist_set:Nn \ondb_iv_xiv_xi   {경,야,친,박,우,설,단,렴,타,미,인,인,집,라,망,을}

\clist_set:Nn \ondb_iv_xiv_xii  {십,인,륵,정,측,부,부,구,팔,장,금,개,빙,잉,종,불}

\clist_set:Nn \ondb_iv_xiv_xiii {산,륜,어,창,자,사,타,장,부,선,헌,탁,홍,동,인,천}

\clist_set:Nn \ondb_iv_xiv_xiv  {간,흘,작,대,령,이,초,장,삼,상,의,무,문,인,반,묘}

\clist_set:Nn \ondb_iv_xiv_xv   {앙,금,중,비,월,오,건,개,요,봉,창,임,왕,분,저,방}


%% U+4FXX

\clist_set:Nn \ondb_iv_xv_zero {종,기,패,여,조,돈,물,역,심,항,이,급,애,오,기,복}

\clist_set:Nn \ondb_iv_xv_i    {벌,휴,근,비,침,부,탕,음,우,화,회,구,쉬,전,산,위}

\clist_set:Nn \ondb_iv_xv_ii   {전,거,아,현,상,창,륜,창,순,신,위,저,척,현,노,백}

\clist_set:Nn \ondb_iv_xv_iii  {고,이,이,설,반,혁,령,주,신,저,사,팽,사,가,비,이}

\clist_set:Nn \ondb_iv_xv_iv   {사,치,정,전,감,매,단,저,포,거,피,소,차,위,저,주}

\clist_set:Nn \ondb_iv_xv_v    {좌,우,앙,분,점,하,필,타,사,여,일,불,작,구,녕,통}

\clist_set:Nn \ondb_iv_xv_vi   {이,헌,거,용,와,첨,석,카,포,패,회,격,로,항,합,양}

\clist_set:Nn \ondb_iv_xv_vii  {백,법,명,가,이,병,길,한,활,궤,전,조,교,차,일,사}

\clist_set:Nn \ondb_iv_xv_viii {형,신,탁,간,질,해,래,이,치,과,광,례,음,시,미,주}

\clist_set:Nn \ondb_iv_xv_ix   {혁,유,안,률,모,이,륜,동,타,치,순,공,주,의,여,천}

\clist_set:Nn \ondb_iv_xv_x    {협,가,재,려,고,요,정,측,교,쾌,제,녕,농,진,모,후}

\clist_set:Nn \ondb_iv_xv_xi   {군,정,진,좌,호,침,려,국,두,정,심,태,발,남,효,편}

\clist_set:Nn \ondb_iv_xv_xii  {퇴,우,계,촉,아,구,서,광,곡,오,준,읍,보,량,조,초}

\clist_set:Nn \ondb_iv_xv_xiii {리,용,흔,경,현,삼,배,속,부,희,리,면,빙,보,유,사}

\clist_set:Nn \ondb_iv_xv_xiv  {협,신,수,오,제,거,주,지,엄,량,려,래,리,검,수,부}

\clist_set:Nn \ondb_iv_xv_xv   {화,구,효,배,천,표,숙,비,봉,아,엄,비,죽,흔,비,치}


이렇게 해놓고 한자 한 글자가 입력되면 그 글자의 코드포인트를 얻습니다. 예컨대 低자의 코드포인트는 U+4F4E입니다.

이 가운데 앞의 세 16진수 숫자를 가지고 ondb 매크로의 이름을 찾습니다. 4, F 는 iv와 xv이므로 \ondb_iv_xv_iv라는 매크로가 여기에 해당합니다.

마지막 16진수 숫자의 10진수 표현에 1을 더하여(0부터 시작하기 때문에) 해당 아이템을 가려냅니다. 즉 \ondb_iv_xv_iv의 15(E=14+1)번째 항목을 찾는 것이죠.

그것은 "저"입니다.


첨부파일은 이 아이디어를 구현한 것입니다. 그러나...

  1. 두 가지 이상의 음으로 읽히는 경우를 반영하지 못했습니다.
  2. 두음법칙이 적용되는 것도 이음이므로 역시 반영되지 않았습니다.
  3. BMP 평면만 생각해도 4EXX에서 9FXX까지, 여기에 한중일 통합한자 확장 A/B, 호환한자(F9XX--FAXX)의 모든 독음 정보를 만들어야 하는데 이건 뭐... 누가 해둔 거 없으면 못할 일이겠네요.
(첨부파일에는 얼마 전에 올린 grruby.sty가 사용되었습니다.)

뭔가 신통한 아이디어 없으신가요?

번호 제목 글쓴이 날짜 조회 수
330 쓸만한 LaTeX 관련 문서 소개 두텁 2011.11.23 4843
329 [공지] spam 댓글로 발생하는 문제를 개선하기 위하여 초기화면의 게시글 정렬순서를 변경합니다. [3] 관리자 2011.11.21 56087
328 킨들 파이어 첫날 소감. [5] 양사장 2011.11.19 39669
327 텍관리자님 메일 문제 [2] z0nam 2011.11.15 27901
326 TeX의 아름다움을 느끼며.... [1] 2011.11.03 31521
325 사랑하는 progress님.. 아직도 삐치셨나.. ㅡ.ㅜ~ [1] 2011.11.03 37655
324 KTUG 10주년을 기념하여, KTUG와 첫 인연이었던 글을 찾아보면? [3] file 샘처럼 2011.11.02 38779
323 이쯤에서 다시 읽어보는 옛날 글 ^^ [2] nova de hi 2011.11.01 36045
322 KTUG 10주년 기념 모임 [22] file Progress 2011.10.30 40780
321 TeXLive 2011 좀 간단하게 설치하고 쓰기 (Windows) karnes 2011.10.27 5238
320 [공지] 한국텍학회 회비를 입금한 분들 중 회원 미등록자 분들께 [7] 관리자 2011.10.20 123306
319 KTUG 10주년 기념행사? [3] nova de hi 2011.10.10 36444
318 Windows 7 (64bit) ko.TeX Live 2011 Font cache problem [1] file nova de hi 2011.10.10 41782
317 naver에서 나눔글꼴 eco 를 공개하였습니다. file 샘처럼 2011.10.08 35527
316 ifthen, calc를 대신하는 etoolbox file karnes 2011.10.07 4478
315 ipe 맥에서 사용하기 (메뉴얼 설치) [5] serene 2011.10.02 9142
314 [고전소설] 전운치전 [4] file nova de hi 2011.10.01 35421
313 [TIP] Sumatrapdf에서 texmaker로 inverse search karnes 2011.09.29 5065
312 텍에 관한 질문이 아니고 FAQ 사이트에 관한 글입니다. 맥사용자 2011.09.29 34527
311 lualatex 실행을 방해하는 이상한 truetype 폰트 karnes 2011.09.23 4561



XE Login