한글의 전산화 | |
<colbgcolor=#dddddd,#212121> 한글 인코딩 | 조합형 · 완성형(한글 목록 · 중복 한자 · CP949) · 조합형 완성형 논쟁 · 남북한 한글 코드의 충돌 문제 · 한컴 2바이트 코드 · 한글 채움 문자(ㅤ) · 유니코드 · 옛한글 |
타자기와 키보드 | 두벌식 · 세벌식(일반 자판 · 속기 자판) · 휴대전화 입력기 · 한영 키 |
1. 개요
KS X 1002는 한국산업표준에 제정된 정보 교환용 부호계 방식 중 하나이다. 최신 표준은 KS X 1001:2001이며, 옛 번호는 KS C 5657이다. 정식 명칭은 정보 교환용 부호 확장 세트이다.2. 제정 사유
KS X 1001 표준은 국제 표준(ISO/IEC 2022) 규격을 기반으로 하여 충돌 우려가 적고, 조합형처럼 파편화되지 않아 안정적으로 사용할 수 있다는 장점이 있었지만, 해당 규격의 근본적인 문제로 인해 94 × 94 = 8,836자로 한정된 공간 내에 사용 빈도수가 높은 한글 2,350자만을 수록하였다. 따라서 각종 문제가 발생하였고, 이에 ISO/IEC 10646(UCS 또는 유니코드) 표준 제정과 동시기(1991년)에 KS X 1001에 포함되지 않은 한글, 한자, 특수 문자를 수록하여 KS X 1001을 보조하는 용도로 제정되었다.3. 구성
KS X 1002 표준의 구성은 다음과 같다.- 한글 1,930자
- 한자 2,856자
- 옛한글 1,675자
- 규격 설명에는 1,677자라고 적혀 있지만 실제로는 1,675자이다.
- 옛한글 낱자 27자(자음 21자, 모음 6자)
- 라틴 문자 615자
- 그리스 문자 273자
- 특수 문자 275자(학술 기호 127자, 일반 기호 41자, 괘선 문자 29자, APL 78자)
현대 한글 목록은 완성형/한글 목록/KS X 1002 문서에서, 한자 목록은 한자/KS X 1002에서 볼 수 있다.
KS X 1001과 동일하게 완성형 기반으로, 동시기에 제정되던 유니코드의 영향을 강하게 받았다. KS X 1001과는 다르게 한자를 중복 배당하지는 않았다.
특이한 점은 완성형 옛한글 1,675자가 제정되어 있다는 점이다. 현재 유니코드에서 구현되는 옛한글은 첫가끝 조합형으로, 겉으로 보기에는 1글자여도 실제로는 두세 글자의 코드를 가지나 이 표준에서는 한양 PUA처럼 완성된 옛한글이 배당되었다. 중국의 GB 12052 표준 또한 옛한글 완성자가 배당되어 있으나, 한국 표준으로써는 최초이다.
4. 사용
현재 KS X 1002 표준을 구현한 한글 인코딩은 존재하지 않는다. 완성형의 단점을 그대로 가지고 있었으며 실제로 구현된 인코딩조차 없어서 해당 표준은 완전히 묻혀버렸다. 유니코드는 원칙적으로 다이어크리틱이 있는 문자는 기존 코드와의 호환을 위한 경우를 제외하면 개별 문자가 아닌 결합 문자로 표기하도록 새로운 글자를 추가하지 않는 것을 원칙으로 하기에, 실질적인 인코딩으로 구현되지 않은 KS X 1002에 규정된 문자들 또한 유니코드 표준에 고려되지 않았다. 따라서 KS X 1002에 수록된 모든 문자를 유니코드로 완전하게 매핑하는 것은 불가능하다.예를 들어, KS X 1002에서 배당되어 있는 E̱(235B)는 유니코드에 단일 문자로 등록되어 있지 않고 오로지 E(U+0045)와 ◌̱(U+0331)의 결합으로만 표기 가능하다. 또한 KS X 1002에 수록된 모든 옛한글 낱자들도 유니코드로는 첫가끝 조합형으로만 표기 가능하다. KS X 1001에서 규정된 한글 낱자는 유니코드에 '한글 호환용 자모'로 수록되어 초성과 종성의 구분이 없고, 첫가끝 조합용으로 쓰는 것이 불가능한데, KS X 1002 또한 완성형의 확장이므로 여기서 추가된 옛한글 낱자 27자도 초성과 종성의 구분이 없는 낱자를 의도하였을 것으로 추정되나, 유니코드에 배당되지 않았으므로 첫가끝 조합용 자모로만 표기가 가능하다.
공식 표준 문서조차 문자표의 한자 부분 전체와 일부 특수 문자, 외국 문자, 옛한글 문자들이 손 글씨로 작성되어 있어 알아보기 힘들 정도이기도 하다. 236C에 적힌 것과 같은 정체 불명의 문자도 존재한다.[1] 실질적으로 사용되지 않는 표준인 만큼 문자표를 디지털화할 필요를 못 느낀 것으로 보인다. 해설서에도 오타가 있고 수록될 옛한글 선정 방법에서 예시로 든 옛한글 문자가 표시가 안 될 정도로 엉망이다.
5. 흔적
이렇게 완전히 묻힌 표준이었지만, 그럼에도 이 표준이 현대 인코딩에 남긴 흔적이 몇 가지 있다.먼저 한자 영역은 그대로 유니코드 한중일 통합 한자의 한자 출전 K1으로 명시되어 BMP 평면의 한자 영역과 매핑이 되어 있다. Microsoft Windows에서 한자 키를 누르면 뜨는 한자 중 파란색으로 뜨는 한자가 KS X 1002에 수록된 한자이다. 다만, 한국이 엉뚱한 글자를 제출한 뒤 자형을 슬쩍 바꾼 게 나중에 들통나는 바람에 한 글자는 매핑이 BMP에서 SIP로 옮겨 가게 됐다(K1-6B6B: U+8C6C → U+27CEF). 자세한 사정은 豬 문서 참고.[2]
유니코드 1.0에서는 KS X 1001 완성형의 2,350자만 Hangul 블록으로 수록된 후, 1.1에서 KS X 1002 표준의 1,930자가 U+3D2E~U+44B7 영역에 Hangul Supplementary-A 블록으로 추가되었었다.[3] 하지만 유니코드 2.0에서 현대 한글 11,172자를 전부 수록하기 위해 한글 대이동을 거치면서 해당 블록들이 폐지되어 현재는 의미가 없다.
6. 기타
현대 한글과 한자 영역을 제외하면 공식적인 매핑은 없으나, 개인이 비공식적으로 전체 문자 테이블을 유니코드 문자로 표시한 것이 있다.KS X 1002 문자표
표준 문서 자체의 모호함(손글씨로 인해 알아볼 수 없는 문자 포함)과 유니코드 낱자로 등록되지 않은 문자들이 존재하므로 해당 테이블 또한 완벽하지는 않다.
7. 관련 문서
[1] 표준 원문의 본문 표에서는 ʔ를 180도 돌린 것처럼 생겼으나 너무 작게 표시되어 있고, 부속서 2 표 2에서는 손 글씨로 대충 쓰여 있어 확실한 자형을 알아볼 수 없다. 어째서 라틴 문자 사이에 끼어들어간 것인지도 불명이다. ¿의 점이 스캔 오류로 지워진 것이라고 추측할 수도 있겠으나 정작 해당 문자는 KS X 1001에 이미 수록된 문자이다. 주변 코드의 자형으로 보아 ȩ의 오기로 추측할 수도 있겠는데 그러기에는 Ȩ가 없는 게 또 의문.[2] 다만, 유니코드 쪽에서 공식적으로 매핑이 변경된 이후에도 Windows의 IME 데이터는 업데이트되지 않았기 때문에 Windows IME에서는 여전히 U+8C6C(豬)가 KS X 1002에 있는 한자로 등록되어 있다. 이러한 혼란의 잔재로 Windows 기본 글꼴 중 맑은 고딕의 U+8C6C는 ⿰豕者 대신 ⿰豸者 자형으로 그려져 있다.[3] 1.1에서는 추가로 U+44B8~U+4DFF 영역에 Hangul Supplementary-B 블록도 추가되었는데, 맨 앞의 6자(U+44B8~U+44BD)는 중국에서 GB 12052를 기반으로 요청한 글자이며, 그 이후는 나머지 한글 완성자를 '갃'부터 '뭝'까지 순서대로 배열하였다.