From d2958cd30132b0ffba1b26e1e0f65bb677b3f77e Mon Sep 17 00:00:00 2001 From: Boris Faure Date: Sun, 9 Dec 2018 22:58:22 +0100 Subject: [PATCH] termpty: support DSR-PP (Printer Port) + test --- src/bin/termptyesc.c | 14 ++++++++++++++ tests/dsr-pp.sh | 8 ++++++++ tests/tests.results | 1 + 3 files changed, 23 insertions(+) create mode 100755 tests/dsr-pp.sh diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 0dbc47a3..71b3a587 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -1011,6 +1011,20 @@ _handle_esc_csi_dsr(Termpty *ty, Eina_Unicode *b) termpty_write(ty, bf, len); } break; + case 15: + if (question_mark) + { + /* DSR-PP (Printer Port) + * Reply None */ + termpty_write(ty, "\033[?13n", + strlen("\033[?13n")); + } + else + { + WRN("unhandled DSR (dec specific: %s) %d", + (question_mark)? "yes": "no", arg); + } + break; case 26: if (question_mark) { diff --git a/tests/dsr-pp.sh b/tests/dsr-pp.sh new file mode 100755 index 00000000..8e9ef794 --- /dev/null +++ b/tests/dsr-pp.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +# fill space with E +printf '\033#8' +#set color +printf '\033[46;31;3m' + +printf '\033[?15n' diff --git a/tests/tests.results b/tests/tests.results index b27fcb64..2a96988c 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -23,3 +23,4 @@ dsr-kbd.sh 1c474c101697080a85563d9b5bc1505c dsr-msr.sh 1e695391937cf7235ba96dbeae5227fd dsr-deccksr.sh 6c3483e8e47a110a7b97eaffd9c5ff83 dsr-os.sh 1645f13652d7ee51d66dc93000247280 +dsr-pp.sh 0f0a7d5beccefbad4f4984fc4611276e