주제 : 휴대폰 한글 입력 UI와 오토마타 기초안
- 자모 일체형과 분리형 한글 입력 방안 예
글. 알치 오 상 문 ( sualchi@yahoo.co.kr )
--------------------------------------------------------------------------
I. 자모 키 겹침 방식
수알치 한글입력은 휴대폰 한글 입력에 있어 직관적인 쉬운 입력과 속기를 위한 방식
모두를 제공하는 키 입력 방식이다.
이 때 자판 배열을 직관적으로 쉽게 알아볼 수 있도록 배치했다.
이제 기본 한글 입력키 구성과 배열 그림을 살펴보겠다.

[그림 1] 키 배치 (제1안과 2안)
그림 1에서 볼 수 있듯이
자음은 좌에서 우, 위에서 아래로 ㄱ, ㄴ, ㄷ, ... 순서와 거의 유사하게 배치된다.
모음은 좌에서 우, 위에서 아래로 ㅏ, ㅑ, ㅓ, ... 순서로 배치된다.
네모[ㅋ] : 1회 쉬프트 키. 이 키를 누르고(또는 누른 상태) ㄱ을 누르면 ㅋ이 입력된다.
예; [ㅋ] + ㄷ = ㅌ
[한/영/부호]: 입력 모드를 바꾼다. 한글 -> 영문 -> 특수부호 -> 한글 순서로 모드 변경.
이 키 입력은 현재 입력중인 한글 한 글자의 입력이 끝남을 의미하기도 한다.
[참고] 길게 누르면 무조건 한글 모드로 바뀐다(한글모드가 기본 모드)
네모[ㅏ] : 다음에 누를 키가 모음임을 알린다(누른 상태로 모음 키 연속 입력 가능).
만약, 자음 입력 없이 모음만 입력되면 자동으로 ㅇ이 입력된다(ㅏ = 아).
예; [ㅏ] + ㅑ = ㅑ
예; 네모[ㅏ]키를 누른 상태에서 ㅑ + ㅣ = ㅒ
[참고] 이것은 다음의 입력과 같다. [ㅏ] + ㅑ + [ㅏ] + ㅣ
예; 네모[ㅏ]키를 누른 상태에서 ㅜ + ㅓ + ㅣ = ㅞ
[참고] 이것은 다음의 입력과 같다. [ㅏ] + ㅜ + [ㅏ] + ㅓ + [ㅏ] + ㅣ
수알치 한글 입력 오토마타는 양손과 한 손 입력 방식을 모두 지원한다.
만약 한글 영문 특수부호를 선택하는 키가 별도로 마련되어 있다면 ". ? ! ,"를 누를 수 있는 키로 할당하는 것도 가능하다.
한글 입력 오토마타 구현을 위한 규칙
한글을 입력하는 오토마타는 한글을 쓰는 방식과 유사하다. 자음은 그대로 누르고 모음은 모음 입력을 알리는 키를 누른 후 입력한다. 또한 양손 입력과 한 손 입력을 모두 지원한다.
즉, 어떤 글자를 만들 때는 양손을 이용하거나 한 손을 이용할 수 있다는 것이다(보다 정확한 표현은 단타로 끊어서 치느냐 아니면 동시에 이중 키 눌림을 사용하느냐이다).
- 자음 키를 누르면 기본 자음이 입력된다.
-> ㄲ, ㄸ, ㅃ, ㅆ ,ㅉ 복자음이 가능한 경우, 같은 글자를 반복하면 복자음이 된다.
ㄱ = ㄱ
ㄱ + ㄱ = ㄲ
복자음이 안 되는 경우는 네모[ㅋ]키를 누른 상태와 같은 글자가 입력된다. (o + o = ㅎ)
-> 만약 세 번을 입력하면 글자 옆의 글자가 입력된다.
ㄱ + ㄱ + ㄱ = ㅋ
[참고] ㅋ을 입력하는 또 다른 방법은 네모[ㅋ] 키를 누른 후(또는 누른 상태)
ㄱ을 누른다.
- 모음을 입력하려면 키를 누른 후(또는 누른 상태) 해당 모음 키를 누른다.
-> 네모[ㅏ]키를 누른 상태에서 연속으로 모음을 입력할 수 있다.
예; 를 누른 상태 + ㅜ + ㅓ + ㅣ = ㅞ
-> 네모[ㅏ]키를 누른 상태에서 같은 모음을 연속 입력하면 ㅣ가 붙는다.
예; 를 누른 상태 + ㅏ + ㅏ = ㅐ
[참고] 이것은 다음 입력과 같다. + ㅏ + + ㅣ
[참고] "[ㅏ] + ㅏ + [ㅏ] + ㅏ" 입력인 경우 앞과 뒤의 "[ㅏ] + ㅏ" 입력을 연속으로
볼 것인지 아니면 별개 입력으로 볼 것인지에 대한 처리를 결정해야 한다.
(기본은 별개의 키 입력으로 처리한다.)
- 별개의 키 입력으로 처리한다면 다음 예를 따를 것이다.
예; [ㅏ] + ㅏ + [ㅏ] + ㅏ = 아아
- 연속 키 입력으로 처리한다면 다음 예를 따를 것이다.
예; [ㅏ] + ㅏ + [ㅏ] + ㅏ = 애
(단, 앞에 자음이 있다면 모음 ㅇ 자리에 해당 자음이 들어간다.)
"대한민국" 입력 예
느리지만 쉬운 입력 예:
대 = ㄷ + [ㅏ] + ㅏ + [ㅏ] + ㅣ (5타)
한 = [ㅋ] + o + [ㅏ] + ㅏ + ㄴ (5타)
민 = ㅁ + [ㅏ] + ㅣ + ㄴ (4타)
국 = ㄱ + [ㅏ] + ㅜ + ㄱ (4타)
빠른 예:
대 = ㄷ + [ㅏ](ㅏ+ㅏ)
한 = [ㅋ](ㅎ) + [ㅏ](ㅏ) + ㄴ
민 = ㅁ + [ㅏ](ㅣ) + ㄴ
국 = ㄱ + [ㅏ](ㅜ) + ㄱ
[참고] 괄호 안의 내용은 괄호 바로 앞 [ ] 키를 누른 채 입력함
※ 초보자는 정상적인 입력 방식을 사용하면 쉽게 입력 방식을 익힐 수 있다.
또한 노련한 사용자는 동시타법, 연타, 자동완성(o 첨가와 ㅣ 추가 기능)을 사용하여
입력 속도를 높일 수 있다.
"꿩사냥꾼" 입력 예
느리지만 쉬운 입력 예:
꿩 = ㄱ + ㄱ + [ㅏ] + ㅜ + [ㅏ] + ㅓ + ㅇ (7타)
사 = ㅅ + [ㅏ] + ㅏ (3타)
냥 = ㄴ + [ㅏ] + ㅑ + o (4타)
꾼 = ㄱ + ㄱ + [ㅏ] + ㅜ + ㄴ (5타)
빠른 예:
꿩 = ㄱ + ㄱ + [ㅏ](ㅜ + ㅓ) + ㅇ
사 = ㅅ + [ㅏ](ㅏ)
냥 = ㄴ + [ㅏ](ㅑ) + o
꾼 = ㄱ + ㄱ + [ㅏ]( ㅜ) + ㄴ
다른 입력 예
깍뚜기 = ㄱ + ㄱ + [ㅏ] (ㅏ) + ㄷ + ㄷ + [ㅏ](ㅜ) + ㄱ + [ㅏ](ㅣ)
월드컵 = o + [ㅏ](ㅜ+ㅓ) + ㄹ + ㄷ + [ㅏ](ㅡ) + [ㅋ](ㄱ) + [ㅏ](ㅓ) + ㅂ
셀 = ㅅ + [ㅏ](ㅜ+ㅓ+ㅓ) + ㄹ 또는 ㅅ + [ㅏ](ㅜ+ㅓ+ㅣ)
셸 = ㅅ + [ㅏ](ㅕ+ㅕ) + ㄹ 또는 ㅅ + [ㅏ](ㅕ+ㅣ) + ㄹ
--------------------------------------------------------------------------
II. 자모 키 분리 방식 (구현 예 1)

ㄱ = ㄱ
ㄱ ㄱ = ㄲ
ㄱ ㄱ ㄱ = ㅋ
ㄴ = ㄴ
ㄴ ㄴ = ㄹ
ㄷ = ㄷ
ㄷ ㄷ = ㄸ
ㄷ ㄷ ㄷ = ㅌ
ㅈ = ㅈ
ㅈ ㅈ = ㅉ
ㅈ ㅈ ㅈ = ㅊ
ㅂ = ㅂ
ㅂ ㅂ = ㅃ
ㅂ ㅂ ㅂ = ㅁ
ㅅ = ㅅ
ㅅ ㅅ = ㅆ
ㅅ ㅅ ㅅ = ㅍ
ㅇ = ㅇ
ㅇ ㅇ = 빈칸
ㅎ = ㅎ
ㅎ ㅎ = ,
ㅎ ㅎ ㅎ = ~
. = .
. . = ?
. . . = !
ㅏ = ㅏ
ㅏ ㅏ = ㅓ
ㅏ ㅏ ㅏ = ㅑ
ㅏ ㅏ ㅏ ㅏ = ㅕ
ㅗ = ㅗ
ㅗ ㅗ = ㅜ
ㅗ ㅗ ㅗ = ㅛ
ㅗ ㅗ ㅗ ㅗ = ㅠ
ㅣ = ㅣ
ㅣ ㅣ = ㅡ
(예)
ㅔ = ㅏ ㅏ ㅣ
ㅝ = ㅗ ㅗ ㅓ
ㅞ = ㅗ ㅗ ㅓ ㅣ
(예) 딱따구리 = ㄷ ㄷ ㅏ ㄱ ㄷ ㄷ ㅏ ㄱ ㅏ ㅏ ㄹ ㅣ (12타)
ㄸ ㅏ ㄱ ㄸ ㅏ ㄱ ㅜ ㄹ ㅣ
[천지인] ㄷ ㄷ ㄷ ㅣ . ㄱ ㄷ ㄷ ㄷ ㅣ . ㄱ ㅡ . ㄴ ㄴ ㅣ (17타)
(예) 대한민국 = ㄷ ㅏ ㅣ ㅎ ㅏ ㄴ ㅂ ㅂ ㅂ ㅣ ㄴ ㄱ ㅗ ㅗ ㄱ (15타)
ㄷ ㅐ ㅎ ㅏ ㄴ ㅁ ㅣ ㄴ ㄱ ㅜ ㄱ
[천지인] ㄷ ㅣ . ㅣ ㅎ ㅣ . ㄴ ㅁ ㅣ ㄴ ㄱ ㅡ . ㄱ (15타)
(예) 안녕하세요 = ㅇ ㅏ ㄴ ㄴ ㅏ ㅏ ㅏ ㅏ ㅇ ㅎ ㅏ ㅅ ㅏ ㅏ ㅣ ㅇ ㅗ ㅗ ㅗ (19타)
ㅇ ㅏ ㄴ ㄴ ㅕ ㅇ ㅎ ㅏ ㅅ ㅔ ㅇ ㅛ
[천지인] ㅇ ㅣ . ㄴ . . ㅣ ㅎ ㅣ . ㅅ . ㅣ ㅣ ㅇ . . ㅡ (18타)
--------------------------------------------------------------------------
II. 자모 키 분리 방식 (구현 예 2)

ㄱ = ㄱ ㄱ ㄱ = ㅋ ㄱ ㄱ ㄱ = ㄲ
ㅁ = ㅁ ㅁ ㅁ = ㅂ ㅁ ㅁ ㅁ = ㅃ
ㄴ = ㄴ ㄴ ㄴ = ㄹ ㄴ ㄴ ㄴ = ㅊ
ㅅ = ㅅ ㅅ ㅅ = ㅇ ㅅ ㅅ ㅅ = ㅆ
ㄷ = ㄷ ㄷ ㄷ = ㅌ ㄷ ㄷ = ㄸ
ㅎ = ㅎ ㅎ ㅎ = ㅈ ㅎ ㅎ ㅎ = ㅉ
ㅏ = ㅏ ㅏ ㅏ = ㅑ
ㅓ = ㅓ ㅓ ㅓ = ㅕ
ㅗ = ㅗ ㅗ ㅗ = ㅛ
ㅜ = ㅜ ㅜ ㅜ = ㅠ
ㅣ = ㅣ ㅣ ㅣ = 빈칸
ㅡ = ㅡ ㅡ ㅡ = 부호선택 ( . ? ! , ~ 등 )
(예)
ㅔ = ㅓ ㅣ
ㅝ = ㅜ ㅓ
ㅞ = ㅜ ㅓ ㅣ
(예) 딱따구리 = ㄷ ㄷ ㄷ ㅏ ㄱ ㄷ ㄷ ㄷ ㅏ ㄱ ㅜ ㄹ ㅣ (13타)
ㄸ ㅏ ㄱ ㄸ ㅏ ㄱ ㅜ ㄹ ㅣ
[천지인] ㄷ ㄷ ㄷ ㅣ . ㄱ ㄷ ㄷ ㄷ ㅣ . ㄱ ㅡ . ㄴ ㄴ ㅣ (17타)
(예) 대한민국 = ㄷ ㅏ ㅣ ㅎ ㅏ ㄴ ㅁ ㅣ ㄴ ㄱ ㅜ ㄱ (12타)
ㄷ ㅐ ㅎ ㅏ ㄴ ㅁ ㅣ ㄴ ㄱ ㅜ ㄱ
[천지인] ㄷ ㅣ . ㅣ ㅎ ㅣ . ㄴ ㅁ ㅣ ㄴ ㄱ ㅡ . ㄱ (15타)
(예) 안녕하세요 = ㅅ ㅇ ㅏ ㄴ ㄴ ㅓ ㅓ ㅅ ㅇ ㅎ ㅏ ㅅ ㅓ ㅣ ㅇ ㅗ ㅗ (17타)
ㅇ ㅏ ㄴ ㄴ ㅕ ㅇ ㅎ ㅏ ㅅ ㅔ ㅇ ㅛ
[천지인] ㅇ ㅣ . ㄴ . . ㅣ ㅎ ㅣ . ㅅ . ㅣ ㅣ ㅇ . . ㅡ (18타)
(예) 사랑해요 = ㅅ ㅏ ㄴ ㄴ ㅏ ㅅ ㅅ ㅎ ㅏ ㅣ ㅇ ㅗ ㅗ (13타)
ㅅ ㅏ ㄹ ㅏ ㅇ ㅎ ㅐ ㅇ ㅛ
[천지인] ㅅ ㅣ . ㄴ ㄴ ㅣ . ㅎ ㅣ . ㅣ ㅇ . . ㅡ (15타)
--------------------------------------------------------------------------
이상으로 한글 입력을 UI와 오토마타를 위한 기본 키 입력 예를 마칩니다.
알치 오상문.
<끝>


