Blob


1 typedef struct Keyboardctl Keyboardctl;
3 struct Keyboardctl
4 {
5 struct Channel *c; /* chan(Rune)[20] */
7 char *file;
8 int consfd; /* to cons file */
9 int ctlfd; /* to ctl file */
10 int pid; /* of slave proc */
11 };
14 extern Keyboardctl* initkeyboard(char*);
15 extern int ctlkeyboard(Keyboardctl*, char*);
16 extern void closekeyboard(Keyboardctl*);
18 enum {
19 KF= 0xF000, /* Rune: beginning of private Unicode space */
20 /* KF|1, KF|2, ..., KF|0xC is F1, F2, ..., F12 */
21 Khome= KF|0x0D,
22 Kup= KF|0x0E,
23 Kpgup= KF|0x0F,
24 Kprint= KF|0x10,
25 Kleft= KF|0x11,
26 Kright= KF|0x12,
27 Kdown= 0x80,
28 Kview= 0x80,
29 Kpgdown= KF|0x13,
30 Kins= KF|0x14,
31 Kend= '\r', /* [sic] */
33 Kalt= KF|0x15,
34 Kshift= KF|0x16,
35 Kctl= KF|0x17,
36 };