improve device attributes queries

This commit is contained in:
Boris Faure 2013-04-17 22:13:00 +02:00
parent bf3e2ab5c0
commit 59ad20f6f8
1 changed files with 21 additions and 12 deletions

View File

@ -467,20 +467,29 @@ _handle_esc_csi(Termpty *ty, const Eina_Unicode *c, Eina_Unicode *ce)
} }
} }
break; break;
case 'c': // query device id case 'c': // query device attributes
{ {
char bf[32]; char bf[32];
// 0 → VT100 if (b && *b == '>')
// 1 → VT220 {
// 2 → VT240 // Primary device attributes
// 18 → VT330 // 0 → VT100
// 19 → VT340 // 1 → VT220
// 24 → VT320 // 2 → VT240
// 41 → VT420 // 18 → VT330
// 61 → VT510 // 19 → VT340
// 64 → VT520 // 24 → VT320
// 65 → VT525 // 41 → VT420
snprintf(bf, sizeof(bf), "\033[>41;285;%ic", 0); // 61 → VT510
// 64 → VT520
// 65 → VT525
snprintf(bf, sizeof(bf), "\033[>41;285;%ic", 0);
}
else
{
// Secondary device attributes
snprintf(bf, sizeof(bf), "\033[?64;1;2;6;9;15;18;21;22c");
}
termpty_write(ty, bf, strlen(bf)); termpty_write(ty, bf, strlen(bf));
} }
break; break;