Documentation ¶
Overview ¶
Package kb provides keyboard mappings for Chrome DOM Keys for use with input events.
Index ¶
Constants ¶
View Source
const ( Backspace = "\b" Tab = "\t" Enter = "\r" Escape = "\u001b" Quote = "'" Backslash = "\\" Delete = "\u007f" Alt = "\u0102" CapsLock = "\u0104" Control = "\u0105" Fn = "\u0106" FnLock = "\u0107" Hyper = "\u0108" Meta = "\u0109" NumLock = "\u010a" ScrollLock = "\u010c" Shift = "\u010d" Super = "\u010e" ArrowDown = "\u0301" ArrowLeft = "\u0302" ArrowRight = "\u0303" ArrowUp = "\u0304" End = "\u0305" Home = "\u0306" PageDown = "\u0307" PageUp = "\u0308" Clear = "\u0401" Copy = "\u0402" Cut = "\u0404" Insert = "\u0407" Paste = "\u0408" Redo = "\u0409" Undo = "\u040a" Again = "\u0502" Cancel = "\u0504" ContextMenu = "\u0505" Find = "\u0507" Help = "\u0508" Pause = "\u0509" Props = "\u050b" Select = "\u050c" ZoomIn = "\u050d" ZoomOut = "\u050e" BrightnessDown = "\u0601" BrightnessUp = "\u0602" Eject = "\u0604" LogOff = "\u0605" Power = "\u0606" PrintScreen = "\u0608" WakeUp = "\u060b" Convert = "\u0705" NonConvert = "\u070d" HangulMode = "\u0711" HanjaMode = "\u0712" Hiragana = "\u0716" KanaMode = "\u0718" Katakana = "\u071a" ZenkakuHankaku = "\u071d" F1 = "\u0801" F2 = "\u0802" F3 = "\u0803" F4 = "\u0804" F5 = "\u0805" F6 = "\u0806" F7 = "\u0807" F8 = "\u0808" F9 = "\u0809" F10 = "\u080a" F11 = "\u080b" F12 = "\u080c" F13 = "\u080d" F14 = "\u080e" F15 = "\u080f" F16 = "\u0810" F17 = "\u0811" F18 = "\u0812" F19 = "\u0813" F20 = "\u0814" F21 = "\u0815" F22 = "\u0816" F23 = "\u0817" F24 = "\u0818" Close = "\u0a01" MailForward = "\u0a02" MailReply = "\u0a03" MailSend = "\u0a04" MediaPlayPause = "\u0a05" MediaStop = "\u0a07" MediaTrackNext = "\u0a08" MediaTrackPrevious = "\u0a09" New = "\u0a0a" Open = "\u0a0b" Print = "\u0a0c" Save = "\u0a0d" SpellCheck = "\u0a0e" AudioVolumeDown = "\u0a0f" AudioVolumeUp = "\u0a10" AudioVolumeMute = "\u0a11" LaunchApplication2 = "\u0b01" LaunchCalendar = "\u0b02" LaunchMail = "\u0b03" LaunchMediaPlayer = "\u0b04" LaunchMusicPlayer = "\u0b05" LaunchApplication1 = "\u0b06" LaunchScreenSaver = "\u0b07" LaunchSpreadsheet = "\u0b08" LaunchWebBrowser = "\u0b09" LaunchContacts = "\u0b0c" LaunchPhone = "\u0b0d" BrowserBack = "\u0c01" BrowserFavorites = "\u0c02" BrowserForward = "\u0c03" BrowserHome = "\u0c04" BrowserRefresh = "\u0c05" BrowserSearch = "\u0c06" BrowserStop = "\u0c07" ChannelDown = "\u0d0a" ChannelUp = "\u0d0b" ClosedCaptionToggle = "\u0d12" Exit = "\u0d15" Guide = "\u0d22" Info = "\u0d25" MediaFastForward = "\u0d2c" MediaLast = "\u0d2d" MediaPlay = "\u0d2f" MediaRecord = "\u0d30" MediaRewind = "\u0d31" Settings = "\u0d43" ZoomToggle = "\u0d4e" AudioBassBoostToggle = "\u0e02" SpeechInputToggle = "\u0f02" AppSwitch = "\u1001" )
DOM keys.
Variables ¶
View Source
var Keys = map[rune]*Key{}/* 226 elements not displayed */
Keys is the map of unicode characters to their DOM key data.
Functions ¶
func Encode ¶
func Encode(r rune) []*input.DispatchKeyEventParams
Encode encodes a keyDown, char, and keyUp sequence for the specified rune.
func EncodeUnidentified ¶
func EncodeUnidentified(r rune) []*input.DispatchKeyEventParams
EncodeUnidentified encodes a keyDown, char, and keyUp sequence for an unidentified rune.
TODO: write unit tests for non-latin/ascii unicode characters.
Types ¶
type Key ¶
type Key struct { // Code is the key code: // "Enter" | "Comma" | "KeyA" | "MediaStop" Code string // Key is the key value: // "Enter" | "," "<" | "a" "A" | "MediaStop" Key string // Text is the text for printable keys: // "\r" "\r" | "," "<" | "a" "A" | "" Text string // Unmodified is the unmodified text for printable keys: // "\r" "\r" | "," "," | "a" "a" | "" Unmodified string // Native is the native scan code. // 0x13 0x13 | 0xbc 0xbc | 0x61 0x41 | 0x00ae Native int64 // Windows is the windows scan code. // 0x13 0x13 | 0xbc 0xbc | 0x61 0x41 | 0xe024 Windows int64 // Shift indicates whether or not the Shift modifier should be sent. // false false | false true | false true | false Shift bool // Print indicates whether or not the character is a printable character // (ie, should a "char" event be generated). // true true | true true | true true | false Print bool }
Key contains information for generating a key press based off the unicode value.
Example data for the following runes:
'\r' '\n' | ',' '<' | 'a' 'A' | '\u0a07' _____________________________________________________
Click to show internal directories.
Click to hide internal directories.