support alpha, numeric, f0..10, punctuation, math keys
parent
9ce50f2622
commit
6536daee7f
|
|
@ -34,6 +34,9 @@ Think Dug's Twitch Chat Plays
|
|||
|
||||
Each client needs 1 executable and 1 env file with a unique set of buttons
|
||||
|
||||
> 10 buttons per player
|
||||
> `go doc key Undef | grep Key | grep -v Undef | wc -l` total (54)
|
||||
|
||||
The server cannot be a client because math. Maybe a VM on the client as a server would work tho.
|
||||
|
||||
```bash
|
||||
|
|
|
|||
|
|
@ -38,6 +38,24 @@ var (
|
|||
'8': N8,
|
||||
'9': N9,
|
||||
'0': N0,
|
||||
'!': F1,
|
||||
'@': F2,
|
||||
'#': F3,
|
||||
'$': F4,
|
||||
'%': F5,
|
||||
'^': F6,
|
||||
'&': F7,
|
||||
'*': F8,
|
||||
'(': F9,
|
||||
')': F10,
|
||||
',': PComma,
|
||||
'.': PPeriod,
|
||||
'/': PFSlash,
|
||||
';': PSemicolon,
|
||||
'[': POpenBracket,
|
||||
']': PCloseBracket,
|
||||
'-': PMinus,
|
||||
'=': PEqual,
|
||||
}
|
||||
keyToChar = func() map[Key]byte {
|
||||
result := map[Key]byte{}
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ func TestFromChar(t *testing.T) {
|
|||
if got := FromChar('A'); got != A {
|
||||
t.Error(got)
|
||||
}
|
||||
if got := FromChar('!'); got != Undef {
|
||||
if got := FromChar(byte(0)); got != Undef {
|
||||
t.Error(got)
|
||||
}
|
||||
if got := ToChar(A); got != 'a' {
|
||||
|
|
|
|||
|
|
@ -5,41 +5,59 @@ import "github.com/micmonay/keybd_event"
|
|||
type Key int
|
||||
|
||||
const (
|
||||
Undef = Key(keybd_event.VK_SP11)
|
||||
A = Key(keybd_event.VK_A)
|
||||
B = Key(keybd_event.VK_B)
|
||||
C = Key(keybd_event.VK_C)
|
||||
D = Key(keybd_event.VK_D)
|
||||
E = Key(keybd_event.VK_E)
|
||||
F = Key(keybd_event.VK_F)
|
||||
G = Key(keybd_event.VK_G)
|
||||
H = Key(keybd_event.VK_H)
|
||||
I = Key(keybd_event.VK_I)
|
||||
J = Key(keybd_event.VK_J)
|
||||
K = Key(keybd_event.VK_K)
|
||||
L = Key(keybd_event.VK_L)
|
||||
M = Key(keybd_event.VK_M)
|
||||
N = Key(keybd_event.VK_N)
|
||||
O = Key(keybd_event.VK_O)
|
||||
P = Key(keybd_event.VK_P)
|
||||
Q = Key(keybd_event.VK_Q)
|
||||
R = Key(keybd_event.VK_R)
|
||||
S = Key(keybd_event.VK_S)
|
||||
T = Key(keybd_event.VK_T)
|
||||
U = Key(keybd_event.VK_U)
|
||||
V = Key(keybd_event.VK_V)
|
||||
W = Key(keybd_event.VK_W)
|
||||
X = Key(keybd_event.VK_X)
|
||||
Y = Key(keybd_event.VK_Y)
|
||||
Z = Key(keybd_event.VK_Z)
|
||||
N1 = Key(keybd_event.VK_1)
|
||||
N2 = Key(keybd_event.VK_2)
|
||||
N3 = Key(keybd_event.VK_3)
|
||||
N4 = Key(keybd_event.VK_4)
|
||||
N5 = Key(keybd_event.VK_5)
|
||||
N6 = Key(keybd_event.VK_6)
|
||||
N7 = Key(keybd_event.VK_7)
|
||||
N8 = Key(keybd_event.VK_8)
|
||||
N9 = Key(keybd_event.VK_9)
|
||||
N0 = Key(keybd_event.VK_0)
|
||||
Undef = Key(keybd_event.VK_SP11)
|
||||
A = Key(keybd_event.VK_A)
|
||||
B = Key(keybd_event.VK_B)
|
||||
C = Key(keybd_event.VK_C)
|
||||
D = Key(keybd_event.VK_D)
|
||||
E = Key(keybd_event.VK_E)
|
||||
F = Key(keybd_event.VK_F)
|
||||
G = Key(keybd_event.VK_G)
|
||||
H = Key(keybd_event.VK_H)
|
||||
I = Key(keybd_event.VK_I)
|
||||
J = Key(keybd_event.VK_J)
|
||||
K = Key(keybd_event.VK_K)
|
||||
L = Key(keybd_event.VK_L)
|
||||
M = Key(keybd_event.VK_M)
|
||||
N = Key(keybd_event.VK_N)
|
||||
O = Key(keybd_event.VK_O)
|
||||
P = Key(keybd_event.VK_P)
|
||||
Q = Key(keybd_event.VK_Q)
|
||||
R = Key(keybd_event.VK_R)
|
||||
S = Key(keybd_event.VK_S)
|
||||
T = Key(keybd_event.VK_T)
|
||||
U = Key(keybd_event.VK_U)
|
||||
V = Key(keybd_event.VK_V)
|
||||
W = Key(keybd_event.VK_W)
|
||||
X = Key(keybd_event.VK_X)
|
||||
Y = Key(keybd_event.VK_Y)
|
||||
Z = Key(keybd_event.VK_Z)
|
||||
N1 = Key(keybd_event.VK_1)
|
||||
N2 = Key(keybd_event.VK_2)
|
||||
N3 = Key(keybd_event.VK_3)
|
||||
N4 = Key(keybd_event.VK_4)
|
||||
N5 = Key(keybd_event.VK_5)
|
||||
N6 = Key(keybd_event.VK_6)
|
||||
N7 = Key(keybd_event.VK_7)
|
||||
N8 = Key(keybd_event.VK_8)
|
||||
N9 = Key(keybd_event.VK_9)
|
||||
N0 = Key(keybd_event.VK_0)
|
||||
F1 = Key(keybd_event.VK_F1)
|
||||
F2 = Key(keybd_event.VK_F2)
|
||||
F3 = Key(keybd_event.VK_F3)
|
||||
F4 = Key(keybd_event.VK_F4)
|
||||
F5 = Key(keybd_event.VK_F5)
|
||||
F6 = Key(keybd_event.VK_F6)
|
||||
F7 = Key(keybd_event.VK_F7)
|
||||
F8 = Key(keybd_event.VK_F8)
|
||||
F9 = Key(keybd_event.VK_F9)
|
||||
F10 = Key(keybd_event.VK_F10)
|
||||
PComma = Key(keybd_event.VK_COMMA)
|
||||
PPeriod = Key(keybd_event.VK_Period)
|
||||
PFSlash = Key(keybd_event.VK_BACKSLASH)
|
||||
PSemicolon = Key(keybd_event.VK_SEMICOLON)
|
||||
POpenBracket = Key(keybd_event.VK_LeftBracket)
|
||||
PCloseBracket = Key(keybd_event.VK_RightBracket)
|
||||
PMinus = Key(keybd_event.VK_MINUS)
|
||||
PEqual = Key(keybd_event.VK_EQUAL)
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in New Issue