분류
1. 개요
2. 역사
이 기능은 IBM PC가 그 시초라고 한다.[1] IBM PC에서 알트 키를 누른 채로 십진법으로 숫자를 입력하면, 시스템 바이오스는 대응하는 코드를 키보드 버퍼에 넣는다. 다시 말하면, 이 바이오스로 문자를 입력받는 소프트웨어 입장에서는 어떤 키를 하나 띡 누른 결과 그 코드가 입력된 것인 양 인식한다. 따라서 소프트웨어는 이를 코드페이지에 따라 변환한 문자를 화면에 출력하는데, 이것이 알트 입력법의 기초가 되었다. 이 때 코드페이지는 다른 소프트웨어가 없는 한 하드웨어 코드페이지, 즉 다름아닌 코드페이지 437(아스키 코드가 아니다)이다. 이후 도스 등의 운영체제가 쓰이게 되면서 알트 입력법은 좀 더 대중화된다.
윈도우로 넘어오면서 코드페이지 Windows-1252(서유럽어) 등 이른바 ANSI 코드페이지들이 사용되기 시작했지만, 도스 시절의 코드값이 워낙 널리 알려진 탓에 알트 입력법에서만큼은 원칙적으로 옛날 코드페이지(즉 코드페이지 437)를 고수하게 된다. 그러나 위 ANSI 코드페이지나 유니코드를 이용한 입력 역시, 후술하듯 약간의 우회를 요하나, 허용하고 있다.
마이크로소프트 외의 운영체제 중, macOS에서는 Alt키 대신 존재하는 옵션키를 이용해 입력할 수 있다. 다만 이 문서에서 설명하는 알트 입력법은 아니고, 그냥 특수문자 키보드이다. 예를 들어서 두벌식 키보드 설정에서 Option + ㅁ 를 입력한다면 해당하는 알파벳인 a 가 입력된다. 다만 한글 키보드에서 이런 식으로 영문을 입력하다가 오타가 발생해 delete키(윈도우의 백스페이스키)를 눌러버릴 경우에는 한 문단이 통채로 지워지는 단축키가 되니 주의 바람. 물론 이럴 경우 Command + Z 로 되돌리기가 가능하다.
영문 키보드에서 Option + a 를 누를 경우에는 å 가 입력되고, b의 경우 ∫ 가, c의 경우 ≈ 가 입력된다.
윈도우로 넘어오면서 코드페이지 Windows-1252(서유럽어) 등 이른바 ANSI 코드페이지들이 사용되기 시작했지만, 도스 시절의 코드값이 워낙 널리 알려진 탓에 알트 입력법에서만큼은 원칙적으로 옛날 코드페이지(즉 코드페이지 437)를 고수하게 된다. 그러나 위 ANSI 코드페이지나 유니코드를 이용한 입력 역시, 후술하듯 약간의 우회를 요하나, 허용하고 있다.
마이크로소프트 외의 운영체제 중, macOS에서는 Alt키 대신 존재하는 옵션키를 이용해 입력할 수 있다. 다만 이 문서에서 설명하는 알트 입력법은 아니고, 그냥 특수문자 키보드이다. 예를 들어서 두벌식 키보드 설정에서 Option + ㅁ 를 입력한다면 해당하는 알파벳인 a 가 입력된다. 다만 한글 키보드에서 이런 식으로 영문을 입력하다가 오타가 발생해 delete키(윈도우의 백스페이스키)를 눌러버릴 경우에는 한 문단이 통채로 지워지는 단축키가 되니 주의 바람. 물론 이럴 경우 Command + Z 로 되돌리기가 가능하다.
영문 키보드에서 Option + a 를 누를 경우에는 å 가 입력되고, b의 경우 ∫ 가, c의 경우 ≈ 가 입력된다.
3. 사용법
예) [Alt]를 누른 채로, 숫자키패드의 [1] [3] [3]을 차례로 누른 다음, 알트키에서 손을 뗀다.
3.1. 원칙적인 입력법(코드페이지 이용)
예) Alt+133 → … (U+2026)
3.1.1. 한국어 운영체제의 경우
한국어 윈도우의 경우 원칙적으로 코드페이지 949를 따른다.코드페이지 949 일람[3] 그러나 일부 코드는 Windows-1252를 따른다.
구체적으로 아래와 같다. 코드값은 편의상 16진수로 적었다.
구체적으로 아래와 같다. 코드값은 편의상 16진수로 적었다.
- 0x00~0x1F는 다음 아홉 개 외에는 입력되지 않는다.
- 0x08, 0x09, 0x0A, 0x0D, 0x16, 0x1A, 0x1B, 0x1E, 0x1F.
- 0x80~0xFE는 Windows-1252를 따른다.[7] 따라서 후술하는 영어 운영체제의 경우에 0을 붙여야 하는 경우라도 0을 붙일 필요가 없다.
- 그런데 아래아한글에서는 왠지 0x89(‰, U+2030)와 0x91(‹, U+2039)이 각각 숫자 0과 9로 입력된다.
- 코드가 할당되지 않은 값을 입력한 경우
3.1.1.1. 유용한 코드의 보기
문자
| 코드
| 다른 입력법
| 사용처
|
…
| Alt+133
| ㄱ+한자+PgDnPgDn+1
| 말줄임표
|
Alt+176
| 없음[14]
| 도(degree) 기호
| |
±
| Alt+177
| ㄷ+한자+6
| 플러스마이너스기호
|
·
| Alt+183
| ㄱ+한자+PgDn+8
| 가운뎃점 / 중점
|
×
| Alt+215
| ㄷ+한자+7
| 곱셈기호
|
÷
| Alt+247
| ㄷ+한자+8
| 나눗셈기호
|
ß
| Alt+223
| ㄲ+한자+PgDnPgDn+5
| |
ä
| Alt+228
| 없음
| |
ö
| Alt+246
| ||
ü
| Alt+252
| ||
æ
| Alt+230
| ㄲ+한자+PgDn+3
| |
ç
| Alt+231
| 없음
| 국제음성기호, 프랑스어
|
è
| Alt+232
| 프랑스어, 이탈리아어
| |
é
| Alt+233
| ||
ð
| Alt+240
| ㄲ+한자+PgDn+5
| 국제음성기호
|
ø
| Alt+248
| ㄲ+한자+PgDnPgDn+3
|
3.1.2. 영어 운영체제의 경우
예) Alt+161 → í (Latin small letter I with acute, U+00ED)
* 다만, 0으로 시작하는 코드의 경우 Windows-1252(소위 ANSI 코드페이지)를 따른다. 링크 참조.
* 다만, 0으로 시작하는 코드의 경우 Windows-1252(소위 ANSI 코드페이지)를 따른다. 링크 참조.
예) Alt+0161 → ¡ (Inverted exclamation mark, U+00A1)
3.2. 유니코드 이용 입력법
유니코드 번호는 16진법으로 되어 있으므로 이를 직접 계산하거나 이 링크와 같은 곳을 통해 10진수로 바꾼 다음 위 방법대로 하면 된다.
또는 엑셀에서 HEX2DEC 함수를 이용해도 된다. =HEX2DEC("14B") 의 값은 331.
이것이 번거롭다면 먼저 준비가 필요하다.
또는 엑셀에서 HEX2DEC 함수를 이용해도 된다. =HEX2DEC("14B") 의 값은 331.
이것이 번거롭다면 먼저 준비가 필요하다.
3.2.1. 사용 준비
시스템 레지스트리를 건드려야 한다. 익숙하지 않을 경우, 시도하지 않는 것을 권장한다.
- 실행(Win+R) 창에 regedit 입력. 레지스트리 편집기 창이 뜬다.
- HKCU\Control Panel\Input Method 아래에 EnableHexNumpad라는 값을 REG_SZ 형식으로 새로 만든다. 가끔 키를 새로 만들라는 문서가 있는데, 잘못된 것이다. 키가 아니고 값이다. 참고로 폴더처럼 생긴 게 ‘키’, 파일처럼 생긴 게 ‘값’. 사실 편집(E)>새로 만들기(N)>문자열 값(S) 하면 된다.
- 값 데이터는 1을 넣는다.
- 로그오프한 후 다시 로그온한다. 혹은 재부팅한다.
3.2.2. 입력 방법
예) Alt+[+][2][0][1][3] → – (En Dash, U+2013)
3.2.3. 유용한 코드의 보기
문자
| 코드
| 다른 입력법
| 사용처
|
ŋ
| Alt+[+]14B
| ㄲ+한자+PgDn×2+8
| |
Ŋ
| Alt+[+]14A
| ㄲ+한자+PgDn+2
| |
œ
| Alt+[+]153
| ㄲ+한자+PgDn×2+4
| |
ʃ
| Alt+[+]283
| -
| |
ʒ
| Alt+[+]292
| ||
ː
| Alt+[+]2D0
| ||
–
(엔대시) | Alt+[+]2013
| -
| |
—
(엠대시) | Alt+[+]2014
| ||
‱
(퍼밀리아드 ([Math(×1/10000)])) | Alt+[+]2031
| -
| 수학 기호
|
-
|
4. 기타
ELECOM 사의 일부 외장형 텐키패드의 경우 텐키리스[16] 노트북과 함께 사용하기 위해 키가 눌리면 Num Lock을 켜고 뗄 때 끄는 방식을 사용하는데, 이렇게 되면 코드 입력 시퀀스 사이에 Num Lock 신호가 끼어들어서 코드를 제대로 입력할 수 없다. 예를 들어 Alt+177이라면 [Alt][1][7][7]순으로 입력되어야 하는데 [Alt][NumLock][1][NumLock][NumLock][7][NumLock][NumLock][7][NumLock] 순으로 입력되면서 의미없는 코드가 되는 것.
[1] http://en.wikipedia.org/wiki/Alt_code 참조.[2] 물론 웬만한 코드페이지는 0x20~0x7E에서 아스키 코드와 일치한다.[3] 엑셀에서 CODE 함수를 사용하면 코드페이지 949에서의 코드값을 알 수 있다.[4] 참고로 코드페이지 949과 Windows-1252는 0x00~0x7F에서 일치한다. 궁극적으로는 0x00~0x7E에서 아스키 코드와 일치.[5] 링크 참조.[6] 예를 들어 65536으로 나눈 나머지가 0x{80~FF}{00~3F}인 코드 등.[7] 참고로 코드페이지 949과 Windows-1252는 0x00~0x7F에서 일치한다. 궁극적으로는 0x00~0x7E에서 아스키 코드와 일치.[8] 링크 참조.[9] 예를 들어 65536으로 나눈 나머지가 0x{80~FF}{00~3F}인 코드 등.[10] 링크 참조.[11] 링크 참조.[12] 예를 들어 65536으로 나눈 나머지가 0x{80~FF}{00~3F}인 코드 등.[13] 관련 기호들(℃, ℉, ′, ″ 등) 중 유일하게 자음 + 한자키 입력법이 없다. 개발진들의 실수로 추정.[14] 관련 기호들(℃, ℉, ′, ″ 등) 중 유일하게 자음 + 한자키 입력법이 없다. 개발진들의 실수로 추정.[15] < > 기호는 파일명 등에서 제한이 있으니, [ ]를 써서 일반 10진법 입력은 [ ], 유니코드 16진법 입력은 [+ ]와 같이 쓸 수도 있을 듯하다. 이에 따르면 '…'의 경우 Alt[133]으로¸ '。'의 경우 Alt[+FF61]으로 표기 가능하다.[16] 정확히는 Num Lock이 켜져 있으면 문자 입력부의 7, 8, 9열을 텐키로 사용하는 방식