libhangul
Version 0.1.0
|
libhangul에서 지원하는 자판은 두벌식, 두벌식 옛글, 세벌식 최종, 세벌식 390, 세벌식 순아래, 세벌식 옛글, 안마태, 로마자 자판 이다.
아래의 자판 배열은 libhangul에서 지원하는 자판을 알아보기 쉽게 그림형태로 나타낸 것이다.
이 자판은 표준 두벌식을 구현한 것이다. 그러나 표준 자판과 조금 다른 동작이 있다. 된소리 ㅃㅉㄸㄲㅆ들은 shift와 함께 누르는 방법 이외에도 반복해서 누르면 입력된다.
~ ` |
! 1 |
@ 2 |
# 3 |
$ 4 |
% 5 |
^ 6 |
& 7 |
* 8 |
( 9 |
) 0 |
_ - |
+ = |
Backspace | ||||||||||||||||||||||||||||||||||||||||||||||
Tab | ㅃ ㅂ |
ㅉ ㅈ |
ㄸ ㄷ |
ㄲ ㄱ |
ㅆ ㅅ |
ㅛ |
ㅕ |
ㅑ |
ㅒ ㅐ |
ㅖ ㅔ |
{ [ |
} ] |
| \ |
||||||||||||||||||||||||||||||||||||||||||||||
Caps Lock | ㅁ |
ㄴ |
ㅇ |
ㄹ |
ㅎ |
ㅗ |
ㅓ |
ㅏ |
ㅣ |
: ; |
" ' |
Enter | |||||||||||||||||||||||||||||||||||||||||||||||
Shift | ㅋ |
ㅌ |
ㅊ |
ㅍ |
ㅠ |
ㅜ |
ㅡ |
< , |
> . |
? / |
Shift |
이 자판은 옛한글을 입력하기 위한 두벌식 자판이다. 아래한글의 두벌식 옛글 자판과 같은 배열을 가지도록 만들었다. 두벌식 자판과 마찬가지로 된소리를 두번 누르는 방법으로 입력할 수 있다.
~ ` |
! 1 |
@ 2 |
# 3 |
$ 4 |
% 5 |
^ 6 |
& 7 |
* 8 |
( 9 |
) 0 |
_ - |
+ = |
Backspace | ||||||||||||||||||||||||||||||||||||||||||||||
Tab | ㅃ ㅂ |
ㅉ ㅈ |
ㄸ ㄷ |
ㄲ ㄱ |
ㅆ ㅅ |
ㅛ |
ㅕ |
ㅑ |
ㅒ ㅐ |
ㅖ ㅔ |
{ [ |
} ] |
| \ |
||||||||||||||||||||||||||||||||||||||||||||||
Caps Lock | ㅿ ㅁ |
ᅝᅠ ㄴ |
ㆁ ㅇ |
ㅀ ㄹ |
ㆆ ㅎ |
ᅟᆃ ㅗ |
ㅓ |
ㆍ ㅏ |
ㆌ ㅣ |
: ; |
" ' |
Enter | |||||||||||||||||||||||||||||||||||||||||||||||
Shift | ᄼᅠ ㅋ |
ᄾᅠ ㅌ |
ᅎᅠ ㅊ |
ᅐᅠ ㅍ |
ᅔᅠ ㅠ |
ᅕᅠ ㅜ |
ㅡ |
< , |
> . |
? / |
Shift |
이 자판은 세벌식 최종 자판을 구현한 것이다. 원래 방식대로라면 왼쪽의 ㅗㅜ는 다른 모음과 조합되지 않아야 하지만, libhangul에서는 좌우의 ㅗㅜ를 구분하지 않고 다른 모음과 조합된다.
※ * |
ㄲ ㅎ |
ㄺ ㅆ |
ㅈ ㅂ |
ㄿ ㅛ |
ㄾ ㅠ |
= ㅑ |
“ ㅖ |
” ㅢ |
' ㅜ |
~ ㅋ |
; ) |
+ > |
Backspace | ||||||||||||||||||||||||||||||||||||||||||||||
Tab | ㅍ ㅅ |
ㅌ ㄹ |
ㄵ ㅕ |
ㅀ ㅐ |
ㄽ ㅓ |
5 ㄹ |
6 ㄷ |
7 ㅁ |
8 ㅊ |
9 ㅍ |
% ( |
/ < |
\ : |
||||||||||||||||||||||||||||||||||||||||||||||
Caps Lock | ㄷ ㅇ |
ㄶ ㄴ |
ㄼ ㅣ |
ㄻ ㅏ |
ㅒ ㅡ |
0 ㄴ |
1 ㅇ |
2 ㄱ |
3 ㅈ |
4 ㅂ |
· ㅌ |
Enter | |||||||||||||||||||||||||||||||||||||||||||||||
Shift | ㅊ ㅁ |
ㅄ ㄱ |
ㅋ ㅔ |
ㄳ ㅗ |
? ㅜ |
- ㅅ |
" ㅎ |
, |
. |
! ㅗ |
Shift |
이 자판은 세벌식 390 자판을 구현한 것이다. 원래 방식대로라면 왼쪽의 ㅗㅜ는 다른 모음과 조합되지 않아야 하지만, libhangul에서는 좌우의 ㅗㅜ를 구분하지 않고 다른 모음과 조합된다.
~ ` |
ㅈ ㅎ |
@ ㅆ |
# ㅂ |
$ ㅛ |
% ㅠ |
^ ㅑ |
& ㅖ |
* ㅢ |
( ㅜ |
) ㅋ |
_ - |
+ = |
Backspace | ||||||||||||||||||||||||||||||||||||||||||||||
Tab | ㅍ ㅅ |
ㅌ ㄹ |
ㅋ ㅕ |
ㅒ ㅐ |
; ㅓ |
< ㄹ |
7 ㄷ |
8 ㅁ |
9 ㅊ |
> ㅍ |
{ [ |
} ] |
| \ |
||||||||||||||||||||||||||||||||||||||||||||||
Caps Lock | ㄷ ㅇ |
ㄶ ㄴ |
ㄺ ㅣ |
ㄲ ㅏ |
/ ㅡ |
' ㄴ |
4 ㅇ |
5 ㄱ |
6 ㅈ |
: ㅂ |
" ㅌ |
Enter | |||||||||||||||||||||||||||||||||||||||||||||||
Shift | ㅊ ㅁ |
ㅄ ㄱ |
ㄻ ㅔ |
ㅀ ㅗ |
! ㅜ |
0 ㅅ |
1 ㅎ |
2 , |
3 . |
? ㅗ |
Shift |
이 자판은 세벌식 순아래 자판을 구현한 것이다.
~ ` |
! ㅎ |
@ ㅆ |
# ㅂ |
$ ㅛ |
% ㅠ |
^ ㅑ |
& ㅖ |
* ㅢ |
( ㅋ |
) ㅒ |
_ ㅈ |
+ ㅊ |
Backspace | ||||||||||||||||||||||||||||||||||||||||||||||
Tab | ㅅ |
ㄹ |
ㅕ |
ㅐ |
; ㅓ |
< ㄹ |
7 ㄷ |
8 ㅁ |
9 ㅊ |
> ㅍ |
{ ㅌ |
} ㅍ |
| ㅋ |
||||||||||||||||||||||||||||||||||||||||||||||
Caps Lock | ㅇ |
[ ㄴ |
] ㅣ |
ㅏ |
/ ㅡ |
' ㄴ |
4 ㅇ |
5 ㄱ |
6 ㅈ |
: ㅂ |
" ㅌ |
Enter | |||||||||||||||||||||||||||||||||||||||||||||||
Shift | - ㅁ |
= ㄱ |
\ ㅔ |
ㅗ |
! ㅜ |
0 ㅅ |
1 ㅎ |
2 , |
3 . |
? ㄷ |
Shift |
이 자판은 세벌식 옛글 자판을 구현한 것이다. 자판 배열은 아래한글의 세벌식 옛글 자판과 동일하다.
ᅟᅠᇰ ᅟᅠᇹ |
ㅈ ㅎ |
ᅟᅠᇫ ㅆ |
# ㅂ |
$ ㅛ |
% ㅠ |
ㆁ ㅑ |
& ㅖ |
* ㅢ |
( ㅜ |
) ㅋ |
_ - |
+ = |
Backspace | ||||||||||||||||||||||||||||||||||||||||||||||
Tab | ㅍ ㅅ |
ㅌ ㄹ |
ㅋ ㅕ |
ㅒ ㅐ |
; ㅓ |
< ㄹ |
· ㄷ |
ᅔᅠ ㅁ |
ᅕᅠ ㅊ |
> ㅍ |
{ [ |
} ] |
| \ |
||||||||||||||||||||||||||||||||||||||||||||||
Caps Lock | ㄷ ㅇ |
ㄶ ㄴ |
ㄺ ㅣ |
ㄲ ㅏ |
ㆍ ㅡ |
' ㄴ |
ㆁ ㅇ |
ᅎᅠ ㄱ |
ᅐᅠ ㅈ |
: ㅂ |
" ㅌ |
Enter | |||||||||||||||||||||||||||||||||||||||||||||||
Shift | ㅊ ㅁ |
ㅄ ㄱ |
ㄻ ㅔ |
ㅀ ㅗ |
! ㅜ |
ㅿ ㅅ |
ㆆ ㅎ |
ᄼᅠ , |
ᄾᅠ . |
? ㅗ |
Shift |
이 자판은 두벌식 자판의 배열을 그대로 사용하면서 shift와 함께 자음을 누르면 종성으로 입력되도록 만든 자판이다. 일반 사용을 위해 만들어진 것이 아니고 두벌식 사용자가 손쉽게 세벌식 자판의 테스트를 할 수 있도록 하기 위해서 만든 자판이다.
※ ` |
! 1 |
@ 2 |
# 3 |
$ 4 |
% 5 |
^ 6 |
& 7 |
* 8 |
( 9 |
) 0 |
_ - |
+ = |
Backspace | ||||||||||||||||||||||||||||||||||||||||||||||
Tab | ㅂ ㅂ |
ㅈ ㅈ |
ㄷ ㄷ |
ㄱ ㄱ |
ㅅ ㅅ |
ㅛ |
ㅕ |
ㅑ |
ㅒ ㅐ |
ㅖ ㅔ |
{ [ |
} ] |
| \ |
||||||||||||||||||||||||||||||||||||||||||||||
Caps Lock | ㅁ ㅁ |
ㄴ ㄴ |
ㅇ ㅇ |
ㄹ ㄹ |
ㅎ ㅎ |
ㅗ |
ㅓ |
ㅏ |
ㅣ |
: ; |
" ' |
Enter | |||||||||||||||||||||||||||||||||||||||||||||||
Shift | ㅋ ㅋ |
ㅌ ㅌ |
ㅊ ㅊ |
ㅍ ㅍ |
ㅠ |
ㅜ |
ㅡ |
< , |
> . |
? / |
Shift |
이 자판은 안마태 자판을 구현한 것이다. libhangul의 안마태 자판 구현은 안마태 자판의 규격을 충실하게 구현한 것은 아니고 적당한 수준에서 사용가능하게 만든 것이다. 키입력이 동시에 일어났는지 판단하여 입력을 하는 방식이 아니고, 키를 순서대로 입력하여도 자모를 조합하도록 구현하여, 안마태 자판과 유사한 동작을 하도록 구현하였다.
~ ` |
! 1 |
@ 2 |
# 3 |
$ 4 |
% 5 |
^ 6 |
& 7 |
* 8 |
( 9 |
) 0 |
_ - |
+ = |
Backspace | ||||||||||||||||||||||||||||||||||||||||||||||
Tab | ㅁ |
ㅿ ㅅ |
ㄴ |
ㄹ |
ㆆ ㅎ |
; ㅕ |
' ㅑ |
/ ㅡ |
[ ㅛ |
] ㅠ |
{ , |
} ? |
| \ |
||||||||||||||||||||||||||||||||||||||||||||||
Caps Lock | ㅂ |
ㅈ |
ㄷ |
ㄱ |
ㆁ ㅇ |
ㅓ |
ㆍ ㅏ |
ㅣ |
ㅗ |
: ㅜ |
" . |
Enter | |||||||||||||||||||||||||||||||||||||||||||||||
Shift | ㅈ |
ㄷ |
ㅂ |
ㄱ |
ᅟᅠᇰ ㅇ |
ᅟᅠᇫ ㅅ |
ㄴ |
< ㅁ |
> ㄹ |
ᅟᅠᇹ ㅎ |
Shift |
이 자판은 현재 자판 배열의 라틴 문자를 음차하여 한글로 입력되도록 만든 자판이다. 예를 들면 'an'을 치면 '안'이 입력되는 방식이다. 로마자 자판은 다른 한글자판과 달리 Transliteration 방식으로 작동하는 자판이므로 별도의 레이아웃이 없다. 이 입력 자판에서 사용한 알파벳과 한글 자모의 대응은 기본적으로 한글 로마자 표기법과 유사하지만 동일하지는 않다. 로마자 자판은 한글을 입력하기 위한 것이므로 한글을 그럴듯 하게 표기하기 위한 로마자 표기법과는 목적이 다르다. 주로 한글 자모를 모두 입력할 수 있도록 하는 것을 우선적으로 고려하였다. 따라서 아래 자판의 대응대로 한글을 로마자로 표기하는 것은 로마자 표기법으로는 적절하지 않다.
한글 자모와 알파벳의 대응은 아래와 같다.
그 외에 다음과 같은 조합 규칙이 있다.