From a936e9735e988df83fbe54c950c6c4cf6aacf436 Mon Sep 17 00:00:00 2001 From: pompolic <pompolic@special-circumstanc.es> Date: Tue, 18 Oct 2022 16:03:37 +0200 Subject: [PATCH] (WIP) Split up input into screen-width chunks --- gdb-port/top-level-parse.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gdb-port/top-level-parse.py b/gdb-port/top-level-parse.py index f1e448b..8951743 100644 --- a/gdb-port/top-level-parse.py +++ b/gdb-port/top-level-parse.py @@ -507,6 +507,18 @@ class TopLevelParse: inputfragment = (self.input_ptr+start).string('UTF-8','replace',fragmentlen) #encoded_inputfragment = inputfragment.replace("\n", "<0A>").replace("\r", "<0D>").replace(" ", "<20>").replace("\t", "<09>") encoded_inputfragment = inputfragment.replace("\n", ".").replace("\r", ".").replace("\t", ".") + screens = fragmentlen // w + last_chunk_width = fragmentlen % w + for chunk in range(0, screens): + inputfragment = (self.input_ptr + (start + w * chunk) ).string('UTF-8', 'replace', w) + encoded_inputfragment = inputfragment.replace("\n", ".").replace("\r", ".").replace("\t", ".") + print(encoded_inputfragment) + print("chunk: ", chunk) + print("last chunk:", last_chunk_width) + inputfragment = (self.input_ptr + (start + w * screens)).string('UTF-8', 'replace', last_chunk_width) + encoded_inputfragment = inputfragment.replace("\n", ".").replace("\r", ".").replace("\t", ".") + print(encoded_inputfragment) + if rec_depth == 0: print(encoded_inputfragment) self.print_input_chunk(token, rows, start, start+min(w, end-start)) -- GitLab