UI 이벤트 KeyboardEvent key 값

W3C 권고안,

이 문서에 대한 자세한 정보
이 버전:
https://www.w3.org/TR/2025/REC-uievents-key-20250422/
최신 공개 버전:
https://www.w3.org/TR/uievents-key/
편집자 초안:
https://w3c.github.io/uievents-key/
이력:
https://www.w3.org/standards/history/uievents-key/
피드백:
GitHub
편집자:
(Google)
(초청 전문가)
구현 보고서:
https://w3c.github.io/uievents-key/impl-report.html
정오표:
정오표가 있음.

번역도 참조하십시오.


초록

이 명세는 UI Events 명세 [UIEvents]의 일부로 정의된 KeyboardEventkey 속성에 사용해야 하는 key 속성 값을 정의한다.

이 문서의 상태

이 절은 이 문서가 공개된 시점의 상태를 설명한다. 현재 W3C 간행물 목록과 이 기술 보고서의 최신 개정판은 https://www.w3.org/TR/의 W3C 기술 보고서 색인에서 확인할 수 있다.

이 문서는 Web Applications Working Group권고안 절차를 사용하여 권고안으로 공개하였다.

W3C는 이 명세를 웹의 표준으로 널리 배포할 것을 권고한다.

W3C 권고안은 폭넓은 합의 구축을 거친 후 W3C와 그 회원들의 승인을 받으며, 구현을 위한 로열티 없는 라이선스 약속을 작업 그룹 구성원으로부터 받은 명세이다.

이 문서는 W3C 특허 정책에 따라 운영되는 그룹에서 작성하였다. W3C는 이 그룹의 산출물과 관련하여 이루어진 모든 특허 공개의 공개 목록을 유지하며, 해당 페이지에는 특허 공개 방법에 대한 지침도 포함되어 있다. 자신이 실제로 알고 있는 특허가 필수 청구항을 포함한다고 믿는 개인은 W3C 특허 정책의 6절에 따라 해당 정보를 공개해야 한다.

이 문서는 2023년 11월 03일 W3C Process Document의 적용을 받는다.

1. 소개

이 문서는 키의 의미를 인코딩하기 위해 KeyboardEventkey 속성에서 반드시 사용해야 하는 유효한 key 속성 값의 집합을 명시한다. 특정 키에 대한 key 값은 사용자의 현재 로캘 설정에 따라 달라진다는 점에 유의하라. 키보드에서 키의 물리적 위치만을 기반으로 하며 로캘에 따라 달라지지 않는 값은 [UIEvents-Code]에 설명된 code를 참조하라.

1.1. 표기 규약

이 명세는 다음 규약을 사용한다:

2. 키보드 이벤트 key 속성 값

key 속성 값은 다음 중 하나를 포함하는 DOMString으로 정의된다:

key 속성 값은 항상 이 두 범주 중 하나에 속하는 값을 포함해야 한다 (그 값이 "Unidentified"인 경우에도 그렇다).

키보드의 여러 키가 동일한 key 속성 값을 생성하는 것은 허용된다. 예를 들어 EN-US 키보드 레이아웃에서는 숫자 키패드의 키(예: 키패드 1 키)가 키보드 본체의 대응 키(예: 키보드 본체의 1 키)와 동일한 key 속성 값을 생성한다. KeyboardEventlocation 속성을 사용하여 키가 숫자 키패드에서 비롯되었는지 확인할 수 있다.

2.1. Unicode 값

거의 모든 Unicode 문자는 유효한 key 속성 값으로 사용할 수 있지만, 사용해서는 안 되는 Unicode 문자의 작은 집합이 있다. key 속성 값으로 사용하기에 적절한 Unicode 문자열의 집합을 식별하기 위해 key 문자열이라는 개념을 도입한다.

key 문자열은 0개 또는 1개의 비제어 문자("기본" 문자) 뒤에 0개 이상의 결합 문자가 오는 문자열이다. 문자열은 [UAX15]에 설명된 대로 Normalized Form C(NFC)여야 한다.

비제어 문자는 "Other, Control"("Cc") 일반 범주에 속하는 문자를 제외한 모든 유효한 Unicode 문자이다.

결합 문자는 "Mark, Spacing Combining"("Mc") 일반 범주에 속하거나 0이 아닌 Combining Class를 가진 모든 유효한 Unicode 문자이다.

다음은 단순한 key 문자열의 몇 가지 예이다:
TabEnter(§ 2.1.1 제어 문자 참조)를 제외하면, 모든 비제어 공백 Unicode 문자는 유효한 key 문자열로 간주된다.
다음은 key 문자열결합 문자를 포함하는 몇 가지 예이다:

2.1.1. 제어 문자

Unicode "Cc" 일반 범주의 소수 문자는 명명된 key 속성 값으로 지원된다. 이러한 명명된 값은 다음과 같다:

2.2. key 속성 값 선택

글리프 수정자 키는 다음 수정자 키 중 하나이다: Shift, CapsLock 또는 AltGr.

2.2.1. 적절한 key 속성 값 선택

KeyboardEventkey 속성에 저장할 적절한 key 속성 값 선택을 하려면 다음 단계를 실행한다:
  1. key를 처음에 "Unidentified"로 설정된 DOMString으로 둔다.

  2. 이 키 이벤트에 대한 적절한 명명된 key 속성 값이 존재하면

    1. key를 그 명명된 key 속성 값으로 설정한다.

  3. 그렇지 않고, 키 이벤트가 유효한 key 문자열을 생성하면

    1. key를 그 key 문자열 값으로 설정한다.

  4. 그렇지 않고, 키 이벤트에 글리프 수정자 키가 아닌 수정자 키가 있으면

    1. 글리프 수정자 키를 제외한 모든 modifer 키를 제거한 상태로 이 이벤트가 입력되었더라면 생성되었을 key 문자열key를 설정한다.

  5. 이 키 이벤트의 key 속성 값으로 key를 반환한다.

표준 US 키보드에서 Q라고 표시된 키의 key 속성 값"q"이다(Shift 수정자 키도 함께 눌린 경우 "Q").

표준 US 키보드에서 Control + Q에 대한 key 속성 값"q"이다.

오른손잡이용 Dvorak 키 매핑이 있는 US 키보드에서 Q라고 표시된 키의 key 속성 값"5"이다 (Shift 수정자를 사용하면 "%").

이전 예와 동일한 US Dvorak 키보드 레이아웃에서 Control + Q에 대한 key 속성 값"5"이다.

Bolnagri 키보드 레이아웃에서 Q라고 표시된 키의 key 속성 값은 단일 Unicode 문자 U+200C(ZWNJ 또는 Zero Width Non-Joining Space)를 포함하는 문자열이다.

표준 프랑스어 매핑이 있는 프랑스어 PC 키보드에서 ^ 키는 결합 곡절 부호에 대한 dead key로 동작한다. 이 키보드 이벤트의 key 속성 값"Dead"이다.

역시 표준 프랑스어 매핑이 있는 프랑스어 키보드에서 é 키 (US 키보드의 2 키에 대응)의 key 속성 값"é"(U+00E9)이다.

표준 한국어 매핑이 있는 한국어 PC 키보드에서 Ha/En 키의 주 기능은 한글 입력과 영어 입력을 전환하는 것이다. 이 키에 대해 명명된 key 속성 값으로 "HangulMode" 항목이 있으므로, 이를 key 속성 값으로 사용해야 한다.

3. 명명된 key 속성 값

명명된 key 속성 값은 명세의 이 절에 있는 어느 표에서든 key 속성 값 열에 제시된 값 중 하나이다.

여기서 정의하는 명명된 key 속성 값은 Java Platform, Standard Edition 6 API Specification [KeyEventJava]java.awt.event.KeyEvent 인터페이스에서 제공하는 keycode 집합과 Microsoft .NET Framework 4.0 Class Library [KeysNet]System.Windows.Forms.Keys 키 열거형에 부분적으로 기반한다. 이 명세의 추가 정보는 Microsoft의 WM_APPCOMMAND 메시지 [WmAppCommand] 및 이 문서에서 언급하는 다른 더 특수한 명세에서 온다.

KeyboardEvent 인터페이스의 적합한 구현은 key 속성에서 사용하기 위해 이 값 집합을 반드시 지원해야 한다. 다만 모든 값이 모든 플랫폼이나 장치에서 사용 가능하지는 않을 수 있다.

이 명세의 향후 버전에는 이 명세가 공개된 이후 일반화되었지만 여기에 포함되지 않은 key 값이 포함될 수 있다.

주: 이 값 목록을 가능한 한 완전하게 만들기 위해 모든 노력을 했지만, 새로운 입력 장치가 도입됨에 따라 새로운 값을 주기적으로 정의할 필요가 있다. 사용자 에이전트가 자체 명명된 key 속성 값을 정의하도록 허용하기보다는(여러 사용자 에이전트 간에 일관될 가능성이 낮음), 이 명세를 업데이트할 수 있도록 버그를 제기해야 한다.

3.1. 특수 키

키를 식별할 수 없는 구현은 "Unidentified"key 속성 값으로 사용해야 한다.

key 속성 값 필수 일반적인 사용법(비규범)
"Unidentified" 이 키 값은 하드웨어, 플랫폼 또는 소프트웨어 제약으로 인해 구현이 다른 키 값을 식별할 수 없을 때 사용된다.

적합한 구현은 구현이 키 값을 감지할 방법이 없을 때에만 "Unidentified"를 키 값으로 사용해야 한다. 모든 키보드 이벤트에 대해 이 값만 노출하는 것은 적합한 구현임을 나타내서는 안 된다.

3.2. 수식 키

key 속성 값 필수 일반적인 사용법(비규범)
"Alt" Alt(Alternative) 키.
이 키는 동시에 또는 이후에 입력되는 키보드 입력을 해석하기 위한 대체 수정자 기능을 활성화한다.
이 키 값은 Apple Option 키에도 사용된다.
"AltGraph" Alternate Graphics(AltGr 또는 AltGraph) 키. 이 키는 ISO Level 3 shift 수정자를 활성화하는 데 사용된다 (표준 Shift 키는 level 2 수정자이다). [ISO9995-1]을 참조하라.
"CapsLock" Caps Lock(Capital) 키. 이후 키보드 입력 이벤트를 해석하기 위한 대문자 문자 잠금 기능을 토글한다.
"Control" Control 또는 Ctrl 키. 동시에 또는 이후에 입력되는 키보드 입력을 해석하기 위한 제어 수정자 기능을 활성화한다.
"Fn" 아니요 Function 전환 Fn 키.
이 키를 다른 키와 동시에 활성화하면 해당 키의 값이 대체 문자 또는 기능으로 변경된다. 이 키는 종종 키보드 하드웨어에서 직접 처리되며 일반적으로 키 이벤트를 생성하지 않는다.
"FnLock" 아니요 Function-Lock(FnLock 또는 F-Lock) 키. 이 키를 활성화하면 일부 키의 값이 대체 문자 또는 기능으로 변경되도록 키보드의 모드가 전환된다. 이 키는 종종 키보드 하드웨어에서 직접 처리되며 일반적으로 키 이벤트를 생성하지 않는다.
"Meta" Meta 키. 동시에 또는 이후에 입력되는 키보드 입력을 해석하기 위한 메타 수정자 기능을 활성화한다. 이 키 값은 Windows Logo 키와 Apple Command 또는 키에 사용된다.
"NumLock" NumLock 또는 Number Lock 키. 이후 키보드 입력을 해석하기 위한 숫자 키패드 모드 기능을 토글한다.
"ScrollLock" Scroll Lock 키. 스크롤 모드와 커서 이동 모드 사이를 토글한다.
"Shift" Shift 키. 동시에 또는 이후에 입력되는 키보드 입력을 해석하기 위한 shift 수정자 기능을 활성화한다.
"Symbol" 아니요 Symbol 수정자 키(일부 가상 키보드에서 사용됨).
"SymbolLock" 아니요 Symbol Lock 키.

레거시 수식 키:

key 속성 값 필수 일반적인 사용법(비규범)
"Hyper" 아니요 Hyper 키.
"Super" 아니요 Super 키.

3.3. 공백 키

key 속성 값 필수 일반적인 사용법(비규범)
"Enter" Enter 또는 키. 현재 선택 항목을 활성화하거나 현재 입력을 수락한다.
이 키 값은 Return(Macintosh 숫자 키패드) 키에도 사용된다.
이 키 값은 Android KEYCODE_DPAD_CENTER에도 사용된다.
"Tab" Horizontal Tabulation Tab 키.

space 또는 spacebar 키는 " "로 인코딩된다.

3.4. 탐색 키

key 속성 값 필수 일반적인 사용법(비규범)
"ArrowDown" 아래쪽 화살표 키. 아래쪽으로 탐색하거나 이동한다. (KEYCODE_DPAD_DOWN)
"ArrowLeft" 왼쪽 화살표 키. 왼쪽으로 탐색하거나 이동한다. (KEYCODE_DPAD_LEFT)
"ArrowRight" 오른쪽 화살표 키. 오른쪽으로 탐색하거나 이동한다. (KEYCODE_DPAD_RIGHT)
"ArrowUp" 위쪽 화살표 키. 위쪽으로 탐색하거나 이동한다. (KEYCODE_DPAD_UP)
"End" End 키. 키보드 입력과 함께 사용되어 콘텐츠의 끝으로 이동한다(KEYCODE_MOVE_END).
"Home" Home 키. 키보드 입력과 함께 사용되어 콘텐츠의 시작으로 이동한다(KEYCODE_MOVE_HOME).
휴대전화 Home 키(휴대전화의 기본 화면으로 이동)의 경우 "GoHome"을 사용한다.
"PageDown" Page Down 키. 아래로 스크롤하거나 콘텐츠의 다음 페이지를 표시한다.
"PageUp" Page Up 키. 위로 스크롤하거나 콘텐츠의 이전 페이지를 표시한다.

3.5. 편집 키

key 속성 값 필수 일반적인 사용법(비규범)
"Backspace" Backspace 키. 이 키 값은 MacOS 키보드에서 Delete라고 표시된 키에도 사용된다.
"Clear" 아니요 현재 선택된 입력을 제거한다.
"Copy" 아니요 현재 선택 항목을 복사한다. (APPCOMMAND_COPY)
"CrSel" 아니요 Cursor Select(Crsel) 키.
"Cut" 아니요 현재 선택 항목을 잘라낸다. (APPCOMMAND_CUT)
"Delete" Delete(Del) 키. 이 키 값은 MacOS 키보드에서 Fn 키로 수정된 경우 Delete라고 표시된 키에도 사용된다.
"EraseEof" 아니요 Erase to End of Field 키. 이 키는 현재 커서 위치부터 현재 필드의 끝까지 모든 문자를 삭제한다.
"ExSel" 아니요 Extend Selection(Exsel) 키.
"Insert" Insert(Ins) 키. 삽입 또는 덮어쓰기 텍스트 모드를 토글한다. (KEYCODE_INSERT)
"Paste" 아니요 Paste 키. (APPCOMMAND_PASTE)
"Redo" 아니요 마지막 동작을 다시 실행한다. (APPCOMMAND_REDO)
"Undo" 아니요 마지막 동작을 실행 취소한다. (APPCOMMAND_UNDO)

3.6. UI 키

key 속성 값 필수 일반적인 사용법(비규범)
"Accept" 아니요 Accept(Commit, OK) 키. 현재 옵션 또는 입력 메서드 시퀀스 변환을 수락한다.
"Again" 아니요 Again 키. 동작을 다시 실행하거나 반복한다.
"Attn" 아니요 Attention(Attn) 키.
"Cancel" 아니요 Cancel 키.
"ContextMenu" 애플리케이션의 컨텍스트 메뉴를 표시한다. 이 키는 일반적으로 오른쪽 Meta 키와 오른쪽 Control 키 사이에 있다.
"Escape" Esc 키. 이 키는 원래 escape 시퀀스를 시작하는 데 사용되었지만, 지금은 대화상자를 닫거나 전체 화면 모드를 종료하는 등 현재 컨텍스트를 종료하거나 "escape"하는 데 더 일반적으로 사용된다.
"Execute" 아니요 Execute 키.
"Find" 아니요 Find 대화상자를 연다. (APPCOMMAND_FIND)
"Help" 도움말 대화상자를 열거나 도움말 정보 표시를 토글한다. (APPCOMMAND_HELP, KEYCODE_HELP)
"Pause" 현재 상태 또는 애플리케이션을 일시 중지한다(적절한 경우).

미디어 컨트롤러의 Pause 버튼에는 이 값을 사용하지 말고, 대신 "MediaPause"를 사용하라.

"Play" 아니요 현재 상태 또는 애플리케이션을 재생하거나 재개한다(적절한 경우).

미디어 컨트롤러의 Play 버튼에는 이 값을 사용하지 말고, 대신 "MediaPlay"를 사용하라.

"Props" 아니요 속성(Props) 키.
"Select" 아니요 Select 키.
"ZoomIn" 아니요 ZoomIn 키. (KEYCODE_ZOOM_IN)
"ZoomOut" 아니요 ZoomOut 키. (KEYCODE_ZOOM_OUT)

3.7. 장치 키

key 속성 값 필수 일반적인 사용법(비규범)
"BrightnessDown" 아니요 Brightness Down 키. 일반적으로 디스플레이 밝기를 제어한다. (KEYCODE_BRIGHTNESS_DOWN)
"BrightnessUp" 아니요 Brightness Up 키. 일반적으로 디스플레이 밝기를 제어한다. (KEYCODE_BRIGHTNESS_UP)
"Eject" 아니요 이동식 미디어의 꺼내기(열기) 및 삽입(닫기) 상태를 토글한다. (KEYCODE_MEDIA_EJECT)
"LogOff" 아니요 LogOff 키.
"Power" 아니요 전원 상태를 토글한다. (KEYCODE_POWER)

주: 일부 장치는 이 키를 운영 환경에 노출하지 않을 수 있다.

"PowerOff" 아니요 PowerOff 키. 때때로 PowerDown이라고도 한다.
"PrintScreen" Print Screen 또는 SnapShot 키. print-screen 기능을 시작한다.
"Hibernate" 아니요 Hibernate 키. 이 키는 컴퓨터의 현재 상태를 디스크에 저장하여 복원할 수 있게 한다. 그런 다음 컴퓨터가 종료된다.
"Standby" 아니요 Standby 키. 이 키는 디스플레이를 끄고 컴퓨터를 완전히 종료하지 않고 저전력 모드로 전환한다. 때때로 Suspend 또는 Sleep 키라고 표시된다. (KEYCODE_SLEEP)
"WakeUp" 아니요 WakeUp 키. (KEYCODE_WAKEUP)

3.8. IME 및 구성 키

key 속성 값 필수 일반적인 사용법(비규범)
"AllCandidates" 아니요 All Candidates 키. 다중 후보 모드를 시작한다.
"Alphanumeric" 아니요 Alphanumeric 키.
"CodeInput" 아니요 Code Input 키. 코드 포인트로 문자를 입력할 수 있게 하는 Code Input 모드를 시작한다.
"Compose" 아니요 Compose 키. X Window System에서는 Multi_key라고도 한다. 이 키는 dead key와 유사한 방식으로 동작하여, 이후의 키 누름이 결합되어 다른 문자를 생성하는 모드를 트리거한다.
"Convert" 아니요 Convert 키. 현재 입력 메서드 시퀀스를 변환한다.
"Dead" 아니요 dead key 결합 키. 어떤 키보드 레이아웃의 어떤 결합 키든 될 수 있다. 예를 들어, 프랑스어 매핑을 사용하고 수정자가 활성화되지 않은 PC/AT 프랑스어 키보드에서는 이 키 값이 U+0302 COMBINING CIRCUMFLEX ACCENT이다. 다른 레이아웃에서는 다른 unicode 결합 키일 수 있다.
특정 결합 문자를 구별해야 하는 애플리케이션의 경우, 관련 compositionupdate 이벤트의 data 속성이 특정 키 값을 제공한다.
"FinalMode" 아니요 Final Mode Final 키. 일부 아시아 키보드에서 IME의 final 모드를 활성화하는 데 사용된다.
"GroupFirst" 아니요 첫 번째 문자 그룹으로 전환한다. (ISO/IEC 9995)
"GroupLast" 아니요 마지막 문자 그룹으로 전환한다. (ISO/IEC 9995)
"GroupNext" 아니요 다음 문자 그룹으로 전환한다. (ISO/IEC 9995)
"GroupPrevious" 아니요 이전 문자 그룹으로 전환한다. (ISO/IEC 9995)
"ModeChange" 아니요 Mode Change 키. IME의 입력 모드 사이를 토글하거나 순환한다.
"NextCandidate" 아니요 Next Candidate 기능 키.
"NonConvert" 아니요 NonConvert("Don’t Convert") 키. IME에서 현재 입력 메서드 시퀀스를 변환하지 않고 수락한다.
"PreviousCandidate" 아니요 Previous Candidate 기능 키.
"Process" 아니요 Process 키.
"SingleCandidate" 아니요 Single Candidate 기능 키.

한국어 키보드에 특화된 키:

key 속성 값 필수 일반적인 사용법(비규범)
"HangulMode" 아니요 Hangul(한국어 문자) Mode 키. 한글 모드와 영어 모드 사이를 토글한다.
"HanjaMode" 아니요 Hanja(한국어 문자) Mode 키.
"JunjaMode" 아니요 Junja(한국어 문자) Mode 키.

일본어 키보드에 특화된 키:

key 속성 값 필수 일반적인 사용법(비규범)
"Eisu" 아니요 Eisu 키. 이 키는 IME를 닫을 수 있지만, 그 목적은 현재 IME에 의해 정의된다. (KEYCODE_EISU)
"Hankaku" 아니요 (반각) 문자 키.
"Hiragana" 아니요 Hiragana(일본어 Kana 문자) 키.
"HiraganaKatakana" 아니요 Hiragana/Katakana 토글 키. (KEYCODE_KATAKANA_HIRAGANA)
"KanaMode" 아니요 Kana Mode(Kana Lock) 키. 이 키는 히라가나 모드(일반적으로 romaji 모드에서)로 들어가는 데 사용된다.
"KanjiMode" 아니요 Kanji(중국 기원의 표의 문자를 가리키는 일본어 이름) Mode 키. 이 키는 일반적으로 입력을 kanji로 변환하기 위한 목적으로 히라가나 키보드로 전환하는 데 사용된다. (KEYCODE_KANA)
"Katakana" 아니요 Katakana(일본어 Kana 문자) 키.
"Romaji" 아니요 로마자 기능 키.
"Zenkaku" 아니요 Zenkaku(전각) 문자 키.
"ZenkakuHankaku" 아니요 Zenkaku/Hankaku(전각/반각) 토글 키. (KEYCODE_ZENKAKU_HANKAKU)

3.9. 범용 기능 키

이러한 범용 기능 키의 정확한 수는 플랫폼마다 다르며, 여기서는 처음 몇 개만 명시적으로 정의한다. 추가 기능 키 이름은 기능 키 이름 끝의 10진수 인덱스를 증가시켜 암묵적으로 정의된다. 따라서 "F24""Soft8"은 모두 유효한 key 값이다.

key 속성 값 필수 일반적인 사용법(비규범)
"F1" F1 키. 인덱스 1의 범용 기능 키.
"F2" F2 키. 인덱스 2의 범용 기능 키.
"F3" F3 키. 인덱스 3의 범용 기능 키.
"F4" F4 키. 인덱스 4의 범용 기능 키.
"F5" F5 키. 인덱스 5의 범용 기능 키.
"F6" F6 키. 인덱스 6의 범용 기능 키.
"F7" F7 키. 인덱스 7의 범용 기능 키.
"F8" F8 키. 인덱스 8의 범용 기능 키.
"F9" F9 키. 인덱스 9의 범용 기능 키.
"F10" F10 키. 인덱스 10의 범용 기능 키.
"F11" F11 키. 인덱스 11의 범용 기능 키.
"F12" F12 키. 인덱스 12의 범용 기능 키.
"Soft1" 아니요 인덱스 1의 범용 가상 기능 키.
"Soft2" 아니요 인덱스 2의 범용 가상 기능 키.
"Soft3" 아니요 인덱스 3의 범용 가상 기능 키.
"Soft4" 아니요 인덱스 4의 범용 가상 기능 키.

3.10. 멀티미디어 키

이는 "멀티미디어" 키보드에 있는 추가 키이다.

key 속성 값 필수 일반적인 사용법(비규범)
"ChannelDown" 아니요 다음으로 낮은(숫자상 또는 논리상) 채널을 선택한다. (APPCOMMAND_MEDIA_CHANNEL_DOWN, KEYCODE_CHANNEL_DOWN)
"ChannelUp" 아니요 다음으로 높은(숫자상 또는 논리상) 채널을 선택한다. (APPCOMMAND_MEDIA_CHANNEL_UP, KEYCODE_CHANNEL_UP)
"Close" 아니요 현재 문서 또는 메시지를 닫는다(주: 애플리케이션을 닫는 것은 아니다). (APPCOMMAND_CLOSE)
"MailForward" 아니요 현재 메시지를 전달하기 위한 편집기를 연다. (APPCOMMAND_FORWARD_MAIL)
"MailReply" 아니요 현재 메시지에 답장하기 위한 편집기를 연다. (APPCOMMAND_REPLY_TO_MAIL)
"MailSend" 아니요 현재 메시지를 보낸다. (APPCOMMAND_SEND_MAIL)
"MediaClose" 아니요 예를 들어 CD 또는 DVD 트레이를 닫는 것처럼 현재 미디어를 닫는다. (KEYCODE_MEDIA_CLOSE)
"MediaFastForward" 아니요 정상 속도보다 빠른 전방 재생을 시작하거나 계속하고, 이미 빨리 감기 중이면 속도를 높인다. (APPCOMMAND_MEDIA_FAST_FORWARD, KEYCODE_MEDIA_FAST_FORWARD)
"MediaPause" 아니요 현재 재생 중인 미디어를 일시 중지한다. (APPCOMMAND_MEDIA_PAUSE, KEYCODE_MEDIA_PAUSE)

미디어 컨트롤러 장치는 일시 중지 키에 "Pause" 대신 이 값을 사용해야 한다.

"MediaPlay" 아니요 현재 정상 속도로 재생 중이 아니면 정상 속도의 미디어 재생을 시작하거나 계속한다. (APPCOMMAND_MEDIA_PLAY, KEYCODE_MEDIA_PLAY)
"MediaPlayPause" 아니요 미디어를 재생 상태와 일시 중지 상태 사이에서 토글한다. (APPCOMMAND_MEDIA_PLAY_PAUSE, KEYCODE_MEDIA_PLAY_PAUSE)
"MediaRecord" 아니요 현재 선택된 미디어의 녹화를 시작하거나 재개한다. (APPCOMMAND_MEDIA_RECORD, KEYCODE_MEDIA_RECORD)
"MediaRewind" 아니요 정상 속도보다 빠른 역방향 재생을 시작하거나 계속하고, 이미 되감기 중이면 속도를 높인다. (APPCOMMAND_MEDIA_REWIND, KEYCODE_MEDIA_REWIND)
"MediaStop" 아니요 이미 정지 상태가 아니라면 미디어 재생, 일시 중지, 앞으로 감기, 되감기 또는 녹화를 중지한다. (APPCOMMAND_MEDIA_STOP, KEYCODE_MEDIA_STOP)
"MediaTrackNext" 아니요 다음 미디어 또는 프로그램 트랙으로 이동한다. (APPCOMMAND_MEDIA_NEXTTRACK, KEYCODE_MEDIA_NEXT)
"MediaTrackPrevious" 아니요 이전 미디어 또는 프로그램 트랙으로 이동한다. (APPCOMMAND_MEDIA_PREVIOUSTRACK, KEYCODE_MEDIA_PREVIOUS)
"New" 아니요 새 문서 또는 메시지를 연다. (APPCOMMAND_NEW)
"Open" 아니요 기존 문서 또는 메시지를 연다. (APPCOMMAND_OPEN)
"Print" 아니요 현재 문서 또는 메시지를 인쇄한다. (APPCOMMAND_PRINT)
"Save" 아니요 현재 문서 또는 메시지를 저장한다. (APPCOMMAND_SAVE)
"SpellCheck" 아니요 현재 문서 또는 선택 항목의 맞춤법을 검사한다. (APPCOMMAND_SPELL_CHECK)

3.11. 멀티미디어 숫자 키패드 키

일반 0 ... 9 숫자 키패드 키는 "0" ... "9"로 인코딩되지만, 일부 멀티미디어 키패드에는 1 ... 12까지 번호가 매겨진 버튼이 있다. 이러한 경우 10 키는 종종 10 /0으로 표시된다.

주: 지원되는 경우 10 또는 10 /0 키에는 key"0"을 반드시 할당해야 한다.

key 속성 값 필수 일반적인 사용법(비규범)
"Key11" 아니요 1 ... 12까지 버튼이 있는 미디어 숫자 키패드에서 발견되는 11 키.
"Key12" 아니요 1 ... 12까지 버튼이 있는 미디어 숫자 키패드에서 발견되는 12 키.

3.12. 오디오 키

오디오와 관련된 멀티미디어 키.

key 속성 값 필수 일반적인 사용법(비규범)
"AudioBalanceLeft" 아니요 오디오 밸런스를 왼쪽으로 조정한다. (VK_AUDIO_BALANCE_LEFT)
"AudioBalanceRight" 아니요 오디오 밸런스를 오른쪽으로 조정한다. (VK_AUDIO_BALANCE_RIGHT)
"AudioBassBoostDown" 아니요 오디오 bass boost를 낮추거나 bass boost 상태를 아래로 순환한다. (APPCOMMAND_BASS_DOWN, VK_BASS_BOOST_DOWN)
"AudioBassBoostToggle" 아니요 bass boost를 켜거나 끈다. (APPCOMMAND_BASS_BOOST)
"AudioBassBoostUp" 아니요 오디오 bass boost를 높이거나 bass boost 상태를 위로 순환한다. (APPCOMMAND_BASS_UP, VK_BASS_BOOST_UP)
"AudioFaderFront" 아니요 오디오 페이더를 앞쪽으로 조정한다. (VK_FADER_FRONT)
"AudioFaderRear" 아니요 오디오 페이더를 뒤쪽으로 조정한다. (VK_FADER_REAR)
"AudioSurroundModeNext" 아니요 surround 오디오 모드를 다음 사용 가능한 모드로 진행한다. (VK_SURROUND_MODE_NEXT)
"AudioTrebleDown" 아니요 treble을 낮춘다. (APPCOMMAND_TREBLE_DOWN)
"AudioTrebleUp" 아니요 treble을 높인다. (APPCOMMAND_TREBLE_UP)
"AudioVolumeDown" 아니요 오디오 볼륨을 낮춘다. (APPCOMMAND_VOLUME_DOWN, KEYCODE_VOLUME_DOWN)
"AudioVolumeUp" 아니요 오디오 볼륨을 높인다. (APPCOMMAND_VOLUME_UP, KEYCODE_VOLUME_UP)
"AudioVolumeMute" 아니요 음소거 상태와 이전 볼륨 수준 사이를 토글한다. (APPCOMMAND_VOLUME_MUTE, KEYCODE_VOLUME_MUTE)
"MicrophoneToggle" 아니요 마이크를 켜거나 끈다. (APPCOMMAND_MIC_ON_OFF_TOGGLE)
"MicrophoneVolumeDown" 아니요 마이크 볼륨을 낮춘다. (APPCOMMAND_MICROPHONE_VOLUME_DOWN)
"MicrophoneVolumeUp" 아니요 마이크 볼륨을 높인다. (APPCOMMAND_MICROPHONE_VOLUME_UP)
"MicrophoneVolumeMute" 아니요 마이크를 음소거한다. (APPCOMMAND_MICROPHONE_VOLUME_MUTE, KEYCODE_MUTE)

3.13. 음성 키

음성 인식과 관련된 멀티미디어 키.

key 속성 값 필수 일반적인 사용법(비규범)
"SpeechCorrectionList" 아니요 단어가 잘못 식별되었을 때 수정 목록을 표시한다. (APPCOMMAND_CORRECTION_LIST)
"SpeechInputToggle" 아니요 받아쓰기 모드와 명령/제어 모드 사이를 토글한다. (APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE)

3.14. 애플리케이션 키

애플리케이션 키는 특정 애플리케이션을 실행하도록 할당된 특수 키이다. 추가 애플리케이션 키 이름은 "Launch"와 애플리케이션 이름을 연결하여 정의할 수 있다.

key 속성 값 필수 일반적인 사용법(비규범)
"LaunchApplication1" 아니요 첫 번째 일반 "LaunchApplication" 키. 이는 일반적으로 "My Computer"를 실행하는 것과 연결되며, 키에 컴퓨터 기호가 있을 수 있다. (APPCOMMAND_LAUNCH_APP1)
"LaunchApplication2" 아니요 두 번째 일반 "LaunchApplication" 키. 이는 일반적으로 "Calculator"를 실행하는 것과 연결되며, 키에 계산기 기호가 있을 수 있다. (APPCOMMAND_LAUNCH_APP2, KEYCODE_CALCULATOR)
"LaunchCalendar" 아니요 "Calendar" 키. (KEYCODE_CALENDAR)
"LaunchContacts" 아니요 "Contacts" 키. (KEYCODE_CONTACTS)
"LaunchMail" 아니요 "Mail" 키. (APPCOMMAND_LAUNCH_MAIL)
"LaunchMediaPlayer" 아니요 "Media Player" 키. (APPCOMMAND_LAUNCH_MEDIA_SELECT)
"LaunchMusicPlayer" 아니요 "Music Player" 키.
"LaunchPhone" 아니요 "Phone" 키.
"LaunchScreenSaver" 아니요 "Screen Saver" 키.
"LaunchSpreadsheet" 아니요 "Spreadsheet" 키.
"LaunchWebBrowser" 아니요 "Web Browser" 키.
"LaunchWebCam" 아니요 "WebCam" 키.
"LaunchWordProcessor" 아니요 "Word Processor" 키.

3.15. 브라우저 키

key 속성 값 필수 일반적인 사용법(비규범)
"BrowserBack" 아니요 현재 기록에서 이전 콘텐츠 또는 페이지로 이동한다. (APPCOMMAND_BROWSER_BACKWARD)
"BrowserFavorites" 아니요 브라우저 즐겨찾기 목록을 연다. (APPCOMMAND_BROWSER_FAVORITES)
"BrowserForward" 아니요 현재 기록에서 다음 콘텐츠 또는 페이지로 이동한다. (APPCOMMAND_BROWSER_FORWARD)
"BrowserHome" 아니요 사용자가 선호하는 홈 페이지로 이동한다. (APPCOMMAND_BROWSER_HOME)
"BrowserRefresh" 아니요 현재 페이지 또는 콘텐츠를 새로 고친다. (APPCOMMAND_BROWSER_REFRESH)
"BrowserSearch" 아니요 사용자가 선호하는 검색 페이지를 호출한다. (APPCOMMAND_BROWSER_SEARCH)
"BrowserStop" 아니요 현재 페이지 또는 콘텐츠 로드를 중지한다. (APPCOMMAND_BROWSER_STOP)

3.16. 휴대전화 키

key 속성 값 필수 일반적인 사용법(비규범)
"AppSwitch" 아니요 최근 앱 목록을 제공하여 앱 사이를 전환하게 하는 애플리케이션 전환 키. (KEYCODE_APP_SWITCH)
"Call" 아니요 Call 키. (KEYCODE_CALL)
"Camera" 아니요 Camera 키. (KEYCODE_CAMERA)
"CameraFocus" 아니요 Camera focus 키. (KEYCODE_FOCUS)
"EndCall" 아니요 End Call 키. (KEYCODE_ENDCALL)
"GoBack" 아니요 Back 키. (KEYCODE_BACK)
"GoHome" 아니요 휴대전화의 기본 화면으로 이동하는 Home 키. (KEYCODE_HOME)
"HeadsetHook" 아니요 Headset Hook 키. (KEYCODE_HEADSETHOOK)
"LastNumberRedial" 아니요 Last Number Redial 키.
"Notification" 아니요 Notification 키. (KEYCODE_NOTIFICATION)
"MannerMode" 아니요 매너 모드 상태(무음, 진동, 벨소리, ...) 사이를 토글한다. (KEYCODE_MANNER_MODE)
"VoiceDial" 아니요 Voice Dial 키.

3.17. TV 키

key 속성 값 필수 일반적인 사용법(비규범)
"TV" 아니요 TV 시청으로 전환한다. (KEYCODE_TV)
"TV3DMode" 아니요 TV 3D Mode. (KEYCODE_3D_MODE)
"TVAntennaCable" 아니요 안테나 입력과 케이블 입력 사이를 토글한다. (KEYCODE_TV_ANTENNA_CABLE)
"TVAudioDescription" 아니요 오디오 설명. (KEYCODE_TV_AUDIO_DESCRIPTION)
"TVAudioDescriptionMixDown" 아니요 오디오 설명 믹싱 볼륨 낮춤. (KEYCODE_TV_AUDIO_DESCRIPTION_MIX_DOWN)
"TVAudioDescriptionMixUp" 아니요 오디오 설명 믹싱 볼륨 높임. (KEYCODE_TV_AUDIO_DESCRIPTION_MIX_UP)
"TVContentsMenu" 아니요 콘텐츠 메뉴. (KEYCODE_TV_CONTENTS_MENU)
"TVDataService" 아니요 콘텐츠 메뉴. (KEYCODE_TV_DATA_SERVICE)
"TVInput" 아니요 외부 TV의 입력 모드를 전환한다. (KEYCODE_TV_INPUT)
"TVInputComponent1" 아니요 컴포넌트 입력 #1로 전환한다. (KEYCODE_TV_INPUT_COMPONENT_1)
"TVInputComponent2" 아니요 컴포넌트 입력 #2로 전환한다. (KEYCODE_TV_INPUT_COMPONENT_2)
"TVInputComposite1" 아니요 컴포지트 입력 #1로 전환한다. (KEYCODE_TV_INPUT_COMPOSITE_1)
"TVInputComposite2" 아니요 컴포지트 입력 #2로 전환한다. (KEYCODE_TV_INPUT_COMPOSITE_2)
"TVInputHDMI1" 아니요 HDMI 입력 #1로 전환한다. (KEYCODE_TV_INPUT_HDMI_1)
"TVInputHDMI2" 아니요 HDMI 입력 #2로 전환한다. (KEYCODE_TV_INPUT_HDMI_2)
"TVInputHDMI3" 아니요 HDMI 입력 #3로 전환한다. (KEYCODE_TV_INPUT_HDMI_3)
"TVInputHDMI4" 아니요 HDMI 입력 #4로 전환한다. (KEYCODE_TV_INPUT_HDMI_4)
"TVInputVGA1" 아니요 VGA 입력 #1로 전환한다. (KEYCODE_TV_INPUT_VGA_1)
"TVMediaContext" 아니요 미디어 컨텍스트 메뉴. (KEYCODE_TV_MEDIA_CONTEXT_MENU)
"TVNetwork" 아니요 네트워크를 토글한다. (KEYCODE_TV_NETWORK)
"TVNumberEntry" 아니요 숫자 입력. (KEYCODE_TV_NUMBER_ENTRY)
"TVPower" 아니요 외부 TV의 전원을 토글한다. (KEYCODE_TV_POWER)
"TVRadioService" 아니요 라디오. (KEYCODE_TV_RADIO_SERVICE)
"TVSatellite" 아니요 위성. (KEYCODE_TV_SATELLITE)
"TVSatelliteBS" 아니요 방송 위성. (KEYCODE_TV_SATELLITE_BS)
"TVSatelliteCS" 아니요 통신 위성. (KEYCODE_TV_SATELLITE_CS)
"TVSatelliteToggle" 아니요 사용 가능한 위성 사이를 토글한다. (KEYCODE_TV_SATELLITE_SERVICE)
"TVTerrestrialAnalog" 아니요 아날로그 지상파. (KEYCODE_TV_TERRESTRIAL_ANALOG)
"TVTerrestrialDigital" 아니요 디지털 지상파. (KEYCODE_TV_TERRESTRIAL_DIGITAL)
"TVTimer" 아니요 타이머 프로그래밍. (KEYCODE_TV_TIMER_PROGRAMMING)

3.18. 미디어 컨트롤러 키

미디어 컨트롤러(예: 텔레비전, 오디오 시스템 및 셋톱 박스용 리모컨)의 key 속성 값은 부분적으로 다음 소비자 전자 기술 명세에서 파생되었다:

key 속성 값 필수 일반적인 사용법(비규범)
"AVRInput" 아니요 외부 AVR(audio/video receiver)의 입력 모드를 전환한다. (KEYCODE_AVR_INPUT)
"AVRPower" 아니요 외부 AVR(audio/video receiver)의 전원을 토글한다. (KEYCODE_AVR_POWER)
"ColorF0Red" 아니요 인덱스 0(빨강)의 범용 색상 코드 미디어 기능 키. (VK_COLORED_KEY_0, KEYCODE_PROG_RED)
"ColorF1Green" 아니요 인덱스 1(초록)의 범용 색상 코드 미디어 기능 키. (VK_COLORED_KEY_1, KEYCODE_PROG_GREEN)
"ColorF2Yellow" 아니요 인덱스 2(노랑)의 범용 색상 코드 미디어 기능 키. (VK_COLORED_KEY_2, KEYCODE_PROG_YELLOW)
"ColorF3Blue" 아니요 인덱스 3(파랑)의 범용 색상 코드 미디어 기능 키. (VK_COLORED_KEY_3, KEYCODE_PROG_BLUE)
"ColorF4Grey" 아니요 인덱스 4(회색)의 범용 색상 코드 미디어 기능 키. (VK_COLORED_KEY_4)
"ColorF5Brown" 아니요 인덱스 5(갈색)의 범용 색상 코드 미디어 기능 키. (VK_COLORED_KEY_5)
"ClosedCaptionToggle" 아니요 자막 표시를 토글한다. (VK_CC, KEYCODE_CAPTIONS)
"Dimmer" 아니요 상태 사이를 토글하거나 순환하여 장치의 밝기를 조정한다. (VK_DIMMER)
"DisplaySwap" 아니요 비디오 소스를 교체한다. (VK_DISPLAY_SWAP)
"DVR" 아니요 Digital Video Rrecorder를 선택한다. (KEYCODE_DVR)
"Exit" 아니요 현재 애플리케이션을 종료한다. (VK_EXIT)
"FavoriteClear0" 아니요 즐겨찾기 0으로 저장된 프로그램 또는 콘텐츠를 지운다. (VK_CLEAR_FAVORITE_0)
"FavoriteClear1" 아니요 즐겨찾기 1로 저장된 프로그램 또는 콘텐츠를 지운다. (VK_CLEAR_FAVORITE_1)
"FavoriteClear2" 아니요 즐겨찾기 2로 저장된 프로그램 또는 콘텐츠를 지운다. (VK_CLEAR_FAVORITE_2)
"FavoriteClear3" 아니요 즐겨찾기 3으로 저장된 프로그램 또는 콘텐츠를 지운다. (VK_CLEAR_FAVORITE_3)
"FavoriteRecall0" 아니요 즐겨찾기 0으로 저장된 프로그램 또는 콘텐츠를 선택(호출)한다. (VK_RECALL_FAVORITE_0)
"FavoriteRecall1" 아니요 즐겨찾기 1로 저장된 프로그램 또는 콘텐츠를 선택(호출)한다. (VK_RECALL_FAVORITE_1)
"FavoriteRecall2" 아니요 즐겨찾기 2로 저장된 프로그램 또는 콘텐츠를 선택(호출)한다. (VK_RECALL_FAVORITE_2)
"FavoriteRecall3" 아니요 즐겨찾기 3으로 저장된 프로그램 또는 콘텐츠를 선택(호출)한다. (VK_RECALL_FAVORITE_3)
"FavoriteStore0" 아니요 현재 프로그램 또는 콘텐츠를 즐겨찾기 0으로 저장한다. (VK_STORE_FAVORITE_0)
"FavoriteStore1" 아니요 현재 프로그램 또는 콘텐츠를 즐겨찾기 1로 저장한다. (VK_STORE_FAVORITE_1)
"FavoriteStore2" 아니요 현재 프로그램 또는 콘텐츠를 즐겨찾기 2로 저장한다. (VK_STORE_FAVORITE_2)
"FavoriteStore3" 아니요 현재 프로그램 또는 콘텐츠를 즐겨찾기 3으로 저장한다. (VK_STORE_FAVORITE_3)
"Guide" 아니요 프로그램 또는 콘텐츠 가이드 표시를 토글한다. (VK_GUIDE, KEYCODE_GUIDE)
"GuideNextDay" 아니요 가이드가 활성 상태이고 표시되어 있으면 다음 날의 콘텐츠를 표시한다. (VK_NEXT_DAY)
"GuidePreviousDay" 아니요 가이드가 활성 상태이고 표시되어 있으면 이전 날의 콘텐츠를 표시한다. (VK_PREV_DAY)
"Info" 아니요 현재 선택된 컨텍스트 또는 미디어에 대한 정보 표시를 토글한다. (VK_INFO, KEYCODE_INFO)
"InstantReplay" 아니요 instant replay를 토글한다. (VK_INSTANT_REPLAY)
"Link" 아니요 사용 가능하고 적절한 경우 연결된 콘텐츠를 실행한다. (VK_LINK)
"ListProgram" 아니요 현재 프로그램을 나열한다. (VK_LIST)
"LiveContent" 아니요 현재 사용 가능한 라이브 콘텐츠 또는 프로그램 목록 표시를 토글한다. (VK_LIVE)
"Lock" 아니요 현재 콘텐츠 또는 프로그램을 잠그거나 잠금 해제한다. (VK_LOCK)
"MediaApps" 아니요 오디오/비디오 플레이어와 이미지 뷰어 등 미디어 애플리케이션 목록을 표시한다. (VK_APPS)

이 key 값과 "ContextMenu"로 인코딩되는 Windows의 VK_APPS / VK_CONTEXT_MENU 키를 혼동하지 말라.

"MediaAudioTrack" 아니요 오디오 트랙 키. (KEYCODE_MEDIA_AUDIO_TRACK)
"MediaLast" 아니요 이전에 선택한 채널 또는 미디어를 선택한다. (VK_LAST, KEYCODE_LAST_CHANNEL)
"MediaSkipBackward" 아니요 이전 콘텐츠 또는 프로그램으로 건너뛴다. (KEYCODE_MEDIA_SKIP_BACKWARD)
"MediaSkipForward" 아니요 다음 콘텐츠 또는 프로그램으로 건너뛴다. (VK_SKIP, KEYCODE_MEDIA_SKIP_FORWARD)
"MediaStepBackward" 아니요 이전 콘텐츠 또는 프로그램으로 한 단계 이동한다. (KEYCODE_MEDIA_STEP_BACKWARD)
"MediaStepForward" 아니요 다음 콘텐츠 또는 프로그램으로 한 단계 이동한다. (KEYCODE_MEDIA_STEP_FORWARD)
"MediaTopMenu" 아니요 미디어 상위 메뉴. (KEYCODE_MEDIA_TOP_MENU)
"NavigateIn" 아니요 안쪽으로 탐색한다. (KEYCODE_NAVIGATE_IN)
"NavigateNext" 아니요 다음 키로 탐색한다. (KEYCODE_NAVIGATE_NEXT)
"NavigateOut" 아니요 바깥쪽으로 탐색한다. (KEYCODE_NAVIGATE_OUT)
"NavigatePrevious" 아니요 이전 키로 탐색한다. (KEYCODE_NAVIGATE_PREVIOUS)
"NextFavoriteChannel" 아니요 (즐겨찾기 목록에서) 다음 즐겨찾기 채널로 순환한다. (VK_NEXT_FAVORITE_CHANNEL)
"NextUserProfile" 아니요 (여러 사용자 프로필이 있는 경우) 다음 사용자 프로필로 순환한다. (VK_USER)
"OnDemand" 아니요 온디맨드 콘텐츠 또는 프로그램에 접근한다. (VK_ON_DEMAND)
"Pairing" 아니요 장치를 페어링하는 페어링 키. (KEYCODE_PAIRING)
"PinPDown" 아니요 picture-in-picture 창을 아래로 이동한다. (VK_PINP_DOWN)
"PinPMove" 아니요 picture-in-picture 창을 이동한다. (VK_PINP_MOVE)
"PinPToggle" 아니요 picture-in-picture 창 표시를 토글한다. (VK_PINP_TOGGLE)
"PinPUp" 아니요 picture-in-picture 창을 위로 이동한다. (VK_PINP_UP)
"PlaySpeedDown" 아니요 미디어 재생 속도를 낮춘다. (VK_PLAY_SPEED_DOWN)
"PlaySpeedReset" 아니요 재생을 정상 속도로 재설정한다. (VK_PLAY_SPEED_RESET)
"PlaySpeedUp" 아니요 미디어 재생 속도를 높인다. (VK_PLAY_SPEED_UP)
"RandomToggle" 아니요 무작위 미디어 또는 콘텐츠 셔플 모드를 토글한다. (VK_RANDOM_TOGGLE)
"RcLowBattery" 아니요 물리적 키는 아니지만, 리모컨 배터리가 부족할 때 이 key code가 전송된다. (VK_RC_LOW_BATTERY)
"RecordSpeedNext" 아니요 미디어 녹화 속도 사이를 토글하거나 순환한다. (VK_RECORD_SPEED_NEXT)
"RfBypass" 아니요 RF(무선 주파수) 입력 우회 모드를 토글한다(RF 입력을 RF 출력으로 직접 전달). (VK_RF_BYPASS)
"ScanChannelsToggle" 아니요 채널 검색 모드를 토글한다. (VK_SCAN_CHANNELS_TOGGLE)
"ScreenModeNext" 아니요 디스플레이 화면 모드를 다음 사용 가능한 모드로 진행한다. (VK_SCREEN_MODE_NEXT)
"Settings" 아니요 장치 설정 화면 표시를 토글한다. (VK_SETTINGS, KEYCODE_SETTINGS)
"SplitScreenToggle" 아니요 분할 화면 모드를 토글한다. (VK_SPLIT_SCREEN_TOGGLE)
"STBInput" 아니요 외부 STB(set top box)의 입력 모드를 전환한다. (KEYCODE_STB_INPUT)
"STBPower" 아니요 외부 STB(set top box)의 전원을 토글한다. (KEYCODE_STB_POWER)
"Subtitle" 아니요 사용 가능한 경우 자막 표시를 토글한다. (VK_SUBTITLE)
"Teletext" 아니요 사용 가능한 경우 teletext 표시를 토글한다(VK_TELETEXT, KEYCODE_TV_TELETEXT).
"VideoModeNext" 아니요 비디오 모드를 다음 사용 가능한 모드로 진행한다. (VK_VIDEO_MODE_NEXT)
"Wink" 아니요 예를 들어 소리나 표시로 장치가 어떤 방식으로든 자신을 식별하게 한다. (VK_WINK)
"ZoomToggle" 아니요 전체 화면과 확대/축소된 콘텐츠 사이를 토글하거나 배율 수준을 변경한다. (VK_ZOOM, KEYCODE_TV_ZOOM_MODE)

미디어 컨트롤러 표준에서 정의한 일부 키에는 이 명세의 다른 절에서 이미 적절한 키가 정의되어 있다. 다음 표는 이러한 키가 지원되는 경우 반드시 사용해야 하는 key 값을 요약한다:

key 속성 값 필수 일반적인 사용법(비규범)
"AudioVolumeDown" 아니요 오디오 볼륨을 낮춘다. (VK_VOLUME_DOWN)
"AudioVolumeUp" 아니요 오디오 볼륨을 높인다. (VK_VOLUME_UP)
"AudioVolumeMute" 아니요 음소거 상태와 이전 볼륨 수준 사이를 토글한다. (VK_VOLUME_MUTE)
"BrowserBack" 아니요 현재 기록에서 이전 콘텐츠 또는 페이지로 이동한다. (VK_BACK)
"BrowserForward" 아니요 현재 기록에서 다음 콘텐츠 또는 페이지로 이동한다. (VK_FORWARD)
"ChannelDown" 아니요 다음으로 낮은(숫자상 또는 논리상) 채널을 선택한다. (VK_CHANNEL_DOWN)
"ChannelUp" 아니요 다음으로 높은(숫자상 또는 논리상) 채널을 선택한다. (VK_CHANNEL_UP)
"ContextMenu" 화면 메뉴 표시를 토글한다. (VK_MENU)
"Eject" 아니요 이동식 미디어의 꺼내기(열기) 및 삽입(닫기) 상태를 토글한다. (VK_EJECT_TOGGLE)
"End" End 키. 키보드 입력과 함께 사용되어 콘텐츠의 끝으로 이동한다. (VK_GO_TO_END)
"Enter" Enter 키. 현재 선택 항목을 활성화하거나 현재 입력을 수락한다. (VK_SELECT)
"Home" Home 키. 키보드 입력과 함께 사용되어 콘텐츠의 시작으로 이동한다. (VK_GO_TO_START)
"MediaFastForward" 아니요 정상 속도보다 빠른 전방 재생을 시작하거나 계속하고, 이미 빨리 감기 중이면 속도를 높인다. (VK_FAST_FWD)
"MediaPlay" 아니요 현재 정상 속도로 재생 중이 아니면 정상 속도의 미디어 재생을 시작하거나 계속한다. (VK_PLAY)
"MediaPlayPause" 아니요 미디어를 재생 상태와 일시 중지 상태 사이에서 토글한다. (VK_PLAY_PAUSE)
"MediaRecord" 아니요 현재 선택된 미디어의 녹화를 시작하거나 재개한다. (VK_RECORD)
"MediaRewind" 아니요 정상 속도보다 빠른 역방향 재생을 시작하거나 계속하고, 이미 되감기 중이면 속도를 높인다. (VK_REWIND)
"MediaStop" 아니요 이미 정지 상태가 아니라면 미디어 재생, 일시 중지, 앞으로 감기, 되감기 또는 녹화를 중지한다. (VK_STOP)
"MediaPause" 아니요 현재 재생 중인 미디어를 일시 중지한다. (VK_PAUSE)
"MediaTrackNext" 아니요 다음 미디어 또는 프로그램 트랙으로 이동한다. (VK_TRACK_NEXT)
"MediaTrackPrevious" 아니요 이전 미디어 또는 프로그램 트랙으로 이동한다. (VK_TRACK_PREV)
"Power" 아니요 전원 상태를 토글한다. (VK_POWER)
"Unidentified" 이 키 값은 하드웨어, 플랫폼 또는 소프트웨어 제약으로 인해 구현이 다른 키 값을 식별할 수 없을 때 사용된다. (VK_UNDEFINED)

4. 접근성

이 명세는 단순히 key 속성에서 사용하기에 유효한 값 집합을 정의한다. 따라서 접근성 우려가 있는 어떤 기능도 도입하지 않는다.

FAST 체크리스트가 완료되었으며 이 명세에 적용되는 항목은 없다.

FAST 체크리스트 항목 "기술이 국제화 지원을 제공하는 경우"와 관련된 주. 이 명세는 본질적으로 서로 다른 언어 또는 레이아웃용 키보드와 같은 국제 하드웨어를 지원하는 key 값을 정의한다. 또한 "Shift", "Control", "Home" 또는 "ArrowLeft"와 같이 사람이 읽을 수 있는 이름이 부여된 많은 특수 키도 정의한다.

이러한 특수 key 값은 특수 키를 감지하는 코드가 더 이해하기 쉬워지도록 사람이 읽을 수 있는 문자열로 정의된다. 이러한 값은 사용자에게 직접 노출되도록 의도된 것은 아니지만, 그것을 막는 것은 없다. 이러한 값을 노출하기로 선택한 앱은 표시를 위해 이러한 문자열을 번역하는 것이 적절한지 여부를 결정해야 한다(예: 프랑스어 사용자에게 "Backspace"를 "Suppr. arrière"로 표시).

5. I18n

짧은 I18n 체크리스트가 완료되었으며 적용되는 항목은 없다.

6. 보안 고려사항

Security and Privacy Self-Review Questionairre가 다음 주석과 함께 완료되었다:

key 속성과 관련된 보안 우려는 [UIEvents] 명세에서 다룬다.

7. 프라이버시 고려사항

Security and Privacy Self-Review Questionairre가 다음 주석과 함께 완료되었다:

key 속성과 관련된 프라이버시 우려는 [UIEvents] 명세에서 다룬다.

8. 감사의 말

수년 동안 DOM Working Group과 WebApps Working Group의 많은 참여자를 포함하여 많은 사람들이 DOM KeyboardEvent 명세에 기여했다. 현재의 key 값 집합은 그 기간 동안 많은 제안과 변형을 반복한 결과이다. 특히 다음 참여자들의 기여에 감사한다:

Gary Kacmarcik (Google), Masayuki Nakano (Mozilla) and Travis Leithead (Microsoft).

적합성

문서 규약

적합성 요구사항은 설명적 단언과 RFC 2119 용어의 조합으로 표현된다. 이 문서의 규범적 부분에서 쓰이는 핵심어 “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, “OPTIONAL”은 RFC 2119에 설명된 대로 해석해야 한다. 그러나 가독성을 위해 이 명세에서는 이러한 단어가 모두 대문자로 나타나지는 않는다.

명시적으로 비규범으로 표시된 절, 예제 및 주석을 제외하고 이 명세의 모든 텍스트는 규범적이다. [RFC2119]

이 명세의 예제는 “for example”이라는 단어로 도입되거나, 다음과 같이 class="example"을 사용하여 규범적 텍스트와 구분된다:

이는 정보성 예제의 예이다.

정보성 주석은 “Note”라는 단어로 시작하며, 다음과 같이 class="note"를 사용하여 규범적 텍스트와 구분된다:

Note, 이는 정보성 주석이다.

적합한 알고리즘

알고리즘의 일부로 명령형으로 표현된 요구사항 (예: "strip any leading space characters" 또는 "return false and abort these steps")은 알고리즘을 도입할 때 사용된 핵심어 ("must", "should", "may" 등)의 의미로 해석해야 한다.

알고리즘 또는 특정 단계로 표현된 적합성 요구사항은 최종 결과가 동등하기만 하다면 어떤 방식으로든 구현할 수 있다. 특히 이 명세에서 정의하는 알고리즘은 이해하기 쉽도록 의도된 것이며 성능을 의도한 것은 아니다. 구현자는 최적화할 것을 권장한다.

색인

이 명세에서 정의하는 용어

참조로 정의되는 용어

참고문헌

규범적 참고문헌

[RFC2119]
S. Bradner. RFC에서 요구 수준을 나타내기 위해 사용하는 핵심어. 1997년 3월. Best Current Practice. URL: https://datatracker.ietf.org/doc/html/rfc2119
[UAX15]
Ken Whistler. Unicode 정규화 형식. 2024년 8월 14일. Unicode Standard Annex #15. URL: https://www.unicode.org/reports/tr15/tr15-56.html
[UIEvents]
Gary Kacmarcik; Travis Leithead. UI 이벤트. 2024년 9월 7일. WD. URL: https://www.w3.org/TR/uievents/
[UIEvents-Code]
Travis Leithead; Gary Kacmarcik. UI 이벤트 KeyboardEvent code 값. 2023년 5월 30일. CR. URL: https://www.w3.org/TR/uievents-code/
[Unicode]
Unicode 표준. URL: https://www.unicode.org/versions/latest/

정보성 참고문헌

[AndroidKeycode]
Android KeyEvent. URL: http://developer.android.com/reference/android/view/KeyEvent.html
[DASE]
ATSC A/100-2, DTV Application Software Environment Level 1 (DASE-1) Part 2: Declarative Applications and Environment. 2003년 3월 09일. URL: http://atsc.org/standard/a100-dtv-application-software-environment-level-1-dase-1/
[ISO9995-1]
ISO/IEC 9995-1:2009 정보 기술 -- 텍스트 및 오피스 시스템용 키보드 레이아웃 -- Part 1: 키보드 레이아웃을 지배하는 일반 원칙. URL: http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=51645
[KeyEventJava]
Java™ Platform, Standard Edition 6 API Specification, Class java.awt.events.KeyEvent. URL: http://docs.oracle.com/javase/6/docs/api/java/awt/event/KeyEvent.html
[KeysNet]
.NET Framework 4.5 Class Library, Keys Enumeration. URL: http://msdn.microsoft.com/en-us/library/system.windows.forms.keys.aspx
[OCAP]
Open Cable Application Platform 1.1.3. 2010년 6월 03일. URL: https://apps.cablelabs.com/specification/opencable-application-platform-ocap/
[WEB4CE]
ANSI/CTA-2014-B, UPnP 네트워크 및 인터넷에서 원격 사용자 인터페이스를 위한 웹 기반 프로토콜과 프레임워크 (Web4CE). 2011년 1월. URL: https://shop.cta.tech/products/web-based-protocol-and-framework-for-remote-user-interface-on-upnp-networks-and-the-internet
[WmAppCommand]
MSDN WM_APPCOMMAND 메시지. URL: https://msdn.microsoft.com/en-us/library/windows/desktop/ms646275(v=vs.85).aspx