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

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

자유글 한자에 독음 달기

2015.05.07 18:08

nanim 조회 수:2134

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

유니코드 한자의 우리말 독음 데이터베이스가 없을까 찾아봤는데, 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가 사용되었습니다.)

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

번호 제목 글쓴이 날짜 조회 수
공지 KTUG 사설저장소 브라우저 베이드프즈 2017.07.16 59294
공지 장애 복구 안내 [9] 관리자 2017.05.04 62815
공지 TeX Live 2016 설치 안내 [7] 관리자 2016.06.05 97003
595 [동영상] 소설가에게 필요한 마크업들은? [1] yihoze 2015.06.05 1975
594 바둑 자료 - 병국세해 [43] 잠수 탔던 하수 2015.05.29 4363
593 webinar로 저의 발표를 경청하신 분께 질문 드림. [15] 세벌 2015.06.01 1961
592 테크니션들의 익살 [4] yihoze 2015.06.03 1972
591 위키 바뀐글 페이지의 고친이 표시 오류? [1] file mcpark 2015.06.02 2118
590 추억의 컴패니언 시리즈 [7] file yihoze 2015.06.02 1981
589 TeX이 "텍스"가 아니고 [3] yihoze 2015.06.02 1962
588 locutione 님께. [14] 세벌 2015.05.31 1961
587 lshort 최근 판을 한국어로 번역하려면? [13] 세벌 2015.05.18 2647
586 세벌 님께 제안합니다 locutione 2015.05.31 1962
585 세벌님의 lshort 번역 등에 관한 게시판 관리자의 입장 [4] 관리자 2015.05.30 1992
584 2015. 5. 30. 토 우분투모임에서 LaTeX 소개 [3] 세벌 2015.05.21 1976
583 [모집] expl3 스터디 [13] yihoze 2015.05.19 1968
582 lshort 원저자에게 메일을 받았어요. [1] 세벌 2015.05.16 1989
581 TeXworks 메뉴 한글화 방법 (MacTeX 2015 pretest) [6] file Progress 2015.05.06 1965
» 한자에 독음 달기 [17] file nanim 2015.05.07 2134
579 또다시 오랜만에 들렀습니다...T.T 불량양파 2015.05.13 1967
578 모처럼 들러봅니다.. [2] 불량양파 2015.04.15 1974
577 무료 폰트: 청소년체 [1] 에드 2015.05.12 1987
576 아리따 부리 폰트 테스트 [5] file Progress 2015.05.01 2190



XE Login