mirror of
https://github.com/fish-shell/fish-shell
synced 2025-01-15 14:34:05 +00:00
Work around old Zellij by parsing unsolicited DECRQM
Zellij 0.41.2 has a bug where it responds to printf '\x1b[?2026$p'; cat -v with '^[[2026;2$y' (DECRQM) instead of '^[[?2026;2$y' (DECRPM). This is fixed by https://github.com/zellij-org/zellij/pull/3884 We fail to parse it, leading to an extra y added to the input queue. Since it seems easy to work around for us, let's do that, I guess.
This commit is contained in:
parent
cbbf95ee55
commit
c77c35152d
1 changed files with 9 additions and 7 deletions
|
@ -961,14 +961,16 @@ pub trait InputEventQueuer {
|
|||
|
||||
let key = match c {
|
||||
b'$' => {
|
||||
if next_char(self) == b'y' {
|
||||
if private_mode == Some(b'?') {
|
||||
// DECRPM
|
||||
if private_mode == Some(b'?') && next_char(self) == b'y' {
|
||||
if params[0][0] == 2026 && matches!(params[1][0], 1 | 2) {
|
||||
self.push_front(CharEvent::Implicit(
|
||||
ImplicitEvent::SynchronizedOutputSupported,
|
||||
));
|
||||
}
|
||||
|
||||
}
|
||||
// DECRQM
|
||||
return None;
|
||||
}
|
||||
match params[0][0] {
|
||||
|
|
Loading…
Reference in a new issue