#define IDM_SAVEDSESS 0x0150
#define IDM_COPYALL 0x0160
+#define IDM_SESSLGP 0x0250 /* log type printable */
+#define IDM_SESSLGA 0x0260 /* log type all chars */
+#define IDM_SESSLGE 0x0270 /* log end */
#define IDM_SAVED_MIN 0x1000
#define IDM_SAVED_MAX 0x2000
/* Note if AltGr was pressed and if it was used as a compose key */
if (!compose_state) {
- compose_key = -1;
+ compose_key = 0x100;
if (cfg.compose_key) {
if (wParam == VK_MENU && (HIWORD(lParam)&KF_EXTENDED))
compose_key = wParam;
/* Reorder edit keys to physical order */
if (cfg.funky_type == 3 && code <= 6 ) code = "\0\2\1\4\5\3\6"[code];
+ if (vt52_mode && code > 0 && code <= 6) {
+ p += sprintf((char *)p, "\x1B%c", " HLMEIG"[code]);
+ return p - output;
+ }
+
+ if (cfg.funky_type == 5 && code >= 11 && code <= 24) {
+ p += sprintf((char *)p, "\x1B[%c", code + 'M' - 11);
+ return p - output;
+ }
+ if ((vt52_mode || cfg.funky_type == 4) && code >= 11 && code <= 24) {
+ int offt = 0;
+ if (code>15) offt++; if (code>21) offt++;
+ if (vt52_mode)
+ p += sprintf((char *)p, "\x1B%c", code + 'P' - 11 - offt);
+ else
+ p += sprintf((char *)p, "\x1BO%c", code + 'P' - 11 - offt);
+ return p - output;
+ }
if (cfg.funky_type == 1 && code >= 11 && code <= 15) {
p += sprintf((char *)p, "\x1B[[%c", code + 'A' - 11);
return p - output;
return p-output;
}
+ /* If we're definitly not building up an ALT-54321 then clear it */
+ if (!left_alt) keys[0] = 0;
}
/* ALT alone may or may not want to bring up the System menu */