diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 20420643..8db6bd9a 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -1011,6 +1011,20 @@ _handle_esc_csi_dsr(Termpty *ty, Eina_Unicode *b) (question_mark)? "yes": "no", arg); } break; + case 62: + if (question_mark) + { + /* DSR-MSR (Macro Space Report) + * Reply 0 */ + termpty_write(ty, "\033[0000*{", + strlen("\033[0000*{")); + } + else + { + WRN("unhandled DSR (dec specific: %s) %d", + (question_mark)? "yes": "no", arg); + } + break; case 75: if (question_mark) { diff --git a/tests/dsr-msr.sh b/tests/dsr-msr.sh new file mode 100755 index 00000000..b0ab15bc --- /dev/null +++ b/tests/dsr-msr.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +# fill space with E +printf '\033#8' +#set color +printf '\033[46;31;3m' + +printf '\033[?62n' diff --git a/tests/tests.results b/tests/tests.results index 2cf1bae5..fe8721d3 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -20,3 +20,4 @@ xterm-osc-2-title.sh e8485fd460aba2a2ae1d4e63a1143b32 dsr-cpr.sh a03cfba07a7b76075a4126f452d48ad5 dsr-dir.sh 28b0d8b4b60f3c61d49cee69895a07b2 dsr-kbd.sh 1c474c101697080a85563d9b5bc1505c +dsr-msr.sh 1e695391937cf7235ba96dbeae5227fd