2020년 12월 30일 수요일

유니코드 1.0 한중일 통합 20902한자 웹 사전 만들기

유니코드 V1.0 20902 한자를 빨리 검색하기 위한 웹페이지 사전을 만들려고 한다. 한자를 그리거나, 부수와 독음을 추정해서 입력해 넣거나, 획수를 세는 번거로움을 피하려 한다. 그냥 버튼 2~3회 누르면 원하는 한자를 찾을 수 있게 하려 한다. 아이디어는 네이버, 다음 파자 검색을 간단하게 개량하는 것이다. 파자 2개만 조합하면 거의 답이 나올 것이라 기대하기 때문이다.

부수 획수는 모두 네이버 것을 이용했다. 신뢰도는 네이버에 따른다.


 

1. 획수 & 부수 조합


 

번거롭지만 가장 확실한 획수로 검색할 경우를 보자. 12획이 가장 많고 약 2천자에 육박한다. 너무 많으니 그 안에서 부수나 독음을 추정해야 한다. 264개의 부수가 있다. 세력이 가장 큰 부수가 약 1천 한자를 거느린다. 부수 추정이 쉬운 것들이 주로 이렇게 거느리는 한자가 많다. 상위 50개까지가 100개 정도의 한자를 거느리고 있다. 이런 것들은 획수를 또 세어야 한다. 이 중엔 부수의 위치가 고정이 아닌 것들도 있다. 부수 추정이 어려운 한자는 여러 부수로 검색하는 번거로움이 있다.

 




 

획수와 부수를 조합하여 검색하려고 할 경우 데이터이다. 먼저 확실한 획수를 정하고 부수만 추정하면 되는 방식이다. 물수변에 12획이 가장 많다. 약 120개 한자를 훑어 보고 선택하면 된다. 100개 한자라면 한 페이지에 10x10 표로 보일 수 있다. 부수의 위치가 고정이면 좋은데 여러 위치에 나타나는 부수가 있어 부수 추정을 어렵게 한다. 다른 부수로 검색해야 하니 부수 변경이 쉬워야 한다.

  1. 각 페이지는 획수 증감 링크(페이지 이동)와 부수 선택 링크(부수 화면)가 있어야 한다.
  2. 각 페이지는 대략 10x10 형태의 표로 한자를 나열하여 원하는 한자를 빨리 찾게 한다.
  3. 원하는 한자를 찾았을 경우 가로 세로 위치로 한자 번호를 계산하여 훈독을 찾는다.

 


 

위는 부수를 제외한 획수 데이터 표이다. 음수는 한자의 요약 변형 때문이다.


 

2. 부수 & 파자 조합

 

획수가 아닌 1차 부수 + 2차 부수 검색 방법도 있다. 2개 파자 조합이면 거의 답이 나온다고 보기 때문이다. 이 방법이 적절한지 보려면 먼저 모든 한자의 부수부터 확인을 해야 한다. 네이버, 다음 파자 검색기를 이용해서 2개 부수를 포함하고 있는 한자들을 조사해 보자.

 


 

하루 시간을 내어 기계적으로 네이버, 다음 파자 검색 결과를 분석해 보니 놀랍게도 유니코드 V1.0 한자임에도 검색이 안 되는 한자들이 있다. 왜 이러지? 개판이네. 다음의 경우는 6045개, 네이버의 경우는 3449개 한자가 검색이 안 된다. 다음, 네이버 어디에서도 검색 안 되는 한자가 1139개이다. 분해한 파자를 봐도 마음에 안 드는 게 많다. 네이버 파자는 거의 부수 1개만 있고, 다음 파자는 쓸데 없이 복잡하다. 도대체 어떤 기준으로 파자를 선정한 것인지 모르겠다. (목적이 불명확한 경우 이런 결과가 나온다.) 

고생만 한 것 같다. 그렇다고 내가 직접 파자 입력을 해 넣을 수도 없다. (한다면 대업적이겠지만 인생 낭비다.) 할 수 없다. 직접 훑어 보자. 부수 추정에 문제 있는 경우만 골라 내자. 부수는 특정 위치에 나타나야 파악하기 쉽다. 상, 하, 좌, 우, 몸, 엄, 받침 등 위치가 확실한 경우는 그대로 부수로 검색을 하고, 위치가 예외적이면 고민해 보자. 고로 부수 위치부터 먼저 조사한다.

(정말로 한자가 망해야 동양이 산다. 한자가 유니코드에서 차지하는 공간을 봐라. 얼마나 민폐를 끼치고 있는 것인가? 유니코드에서 한자를 빼는 것이 더 좋겠다. 지저분하다.)


 

3. 부수 위치 조합

 

위치가 변하는 부수의 경우 대부분 주력 위치가 있다. 주로 좌측 아니면 하단에 몰려 있다. 위치가 가변이라도 확실하게 부수 예측이 가능한 한자는 부수로 검색을 하고 그렇지 못 한 것만 골라 내서 특별 처리를 해 준다. (기 :부수/기형, 몸 : 포위형태, 상 : 엄포함, 좌 : 받침포함)


 

유니코드 1.0 한중일 통합 20902한자 부수 정리 + 위치 표시

 

하고 싶은 내용은 아래와 같지만...

  1. 진짜 부수가 아니지만 부수로 오인하는 한자가 있을 경우 그 한자로도 검색 가능
  2. 부수가 뭔지 모를 복잡한 한자의 경우 파자 검색 (여러 부수에 연결)
  3. 부수가 뭔지 모를 단순한 한자의 경우 획수로 검색 (주로 1/2획 부수)
  4. 세력이 어떤 기준 이하로 약한 부수는 더 세분할 필요 없이 뭉쳐도 된다.
  5. 세력이 크고 위치가 고정인 한자는 부수+획수 조합이 필수.
  6. 세력이 크고 위치가 가변인 한자는 부수+위치+획수 조합 검색.

 

 

4. 웹 페이지 구성

 

아이디어와 데이터는 모두 주었으니 만들 수 있으면 만들어 보라. 하루 이틀이면 될 것이다. 웹 페이지 구조는 대충 아래와 같다. 단순하게 위치 x 부수 x 획수 조합으로 최종 결과에 도달하는 방식이다. 술 기운에 정신이 몽롱한 가운데 정신 없이 대충 구현한 화면은 아래다. 마음에 들지는 않지만 당분간 다시 하고 싶지 않다. 가장 중요한 게 처음 분류 작업이다. 이건 사람이 할 수밖에 없는 것이다. 부수도 수가 많아서 적당히 분류해야 하는데 귀찮다. 한 화면에 표시 가능하도록 적당한 크기로 페이지를 잘라야 하는데 이건 Excel 계산 능력을 이용하면 된다. 수 많은 웹 페이지를 표로 만들고 링크로 서로 연결해야 하기 때문에 Excel Macro 작업 없이는 못 만든다. 일단 구현만 하면 50%는 완성한 것이다. 좀 더 완벽한 것은 다음 기회에...



댓글 없음:

댓글 쓰기