From 3e1afae00450cf3ddadec904e3f37966bb866209 Mon Sep 17 00:00:00 2001 From: Hiltjo Posthuma Date: Tue, 7 Feb 2023 20:00:59 +0100 Subject: ignore C1 control characters in UTF-8 mode Ignore processing and printing C1 control characters in UTF-8 mode. These are in the range: 0x80 - 0x9f. By default in st the mode is set to UTF-8. This matches more the behaviour of xterm with the options -u8 or +u8 also. Also see the xterm resource "allowC1Printable". Let me know if this breaks something, in most cases I don't think so. As usual a very good reference is: https://invisible-island.net/xterm/ctlseqs/ctlseqs.html --- st.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/st.c b/st.c index 0b443b5..d4c7d22 100644 --- a/st.c +++ b/st.c @@ -2537,6 +2537,9 @@ check_control_code: * they must not cause conflicts with sequences. */ if (control) { + /* in UTF-8 mode ignore handling C1 control characters */ + if (IS_SET(MODE_UTF8) && ISCONTROLC1(u)) + return; tcontrolcode(u); /* * control codes are not shown ever -- cgit v1.2.3-70-g09d2