Request xterm 'modifyOtherKeys' mode to opt-in CSI u key reporting

Various terminal emulators now support this `CSI > 4 ; 1 m` sequence
to enable CSI u style reporting, opt into it on startup.

Closes #4103
This commit is contained in:
Maxime Coste 2021-05-02 17:05:30 +10:00
parent db9ef82398
commit 47c0d20388

View File

@ -412,6 +412,8 @@ void NCursesUI::set_terminal_mode() const
fputs("\033=", stdout); fputs("\033=", stdout);
// force enable report focus events // force enable report focus events
fputs("\033[?1004h", stdout); fputs("\033[?1004h", stdout);
// request CSI u style key reporting
fputs("\033[>4;1m", stdout);
fflush(stdout); fflush(stdout);
} }
@ -420,6 +422,7 @@ void NCursesUI::restore_terminal_mode() const
tcsetattr(STDIN_FILENO, TCSAFLUSH, &m_original_termios); tcsetattr(STDIN_FILENO, TCSAFLUSH, &m_original_termios);
fputs("\033>", stdout); fputs("\033>", stdout);
fputs("\033[?1004l", stdout); fputs("\033[?1004l", stdout);
fputs("\033[>4;0m", stdout);
fflush(stdout); fflush(stdout);
} }