diff --git a/kitty/parser.c b/kitty/parser.c index 184226d61..99fbf0067 100644 --- a/kitty/parser.c +++ b/kitty/parser.c @@ -151,6 +151,8 @@ handle_normal_mode_char(Screen *screen, uint32_t ch, PyObject DUMP_UNUSED *dump_ case CSI: case OSC: case DCS: + case APC: + case PM: SET_STATE(ch); break; case NUL: case DEL: diff --git a/kitty_tests/parser.py b/kitty_tests/parser.py index 654b02ec3..03bb0a2e2 100644 --- a/kitty_tests/parser.py +++ b/kitty_tests/parser.py @@ -167,6 +167,6 @@ class TestParser(BaseTest): def test_oth_codes(self): s = self.create_screen() pb = partial(self.parse_bytes_dump, s) - for prefix in '\033_', '\033^': + for prefix in '\033_', '\033^', '\u009e', '\u009f': for suffix in '\u009c', '\033\\': pb('a{}+++{}bcde'.format(prefix, suffix), 'abcde')