mirror of
https://github.com/wez/wezterm.git
synced 2024-11-27 02:25:28 +03:00
term: fix encoding F1-F4
This was accidentally broken by 8da1f676a8
refs: #892
This commit is contained in:
parent
1f97a8324e
commit
0e5d0d8117
@ -17,7 +17,7 @@ impl TerminalState {
|
||||
},
|
||||
)?;
|
||||
|
||||
// debug!("sending {:?}, {:?}", to_send, key);
|
||||
log::trace!("sending {:?}, {:?}", to_send, key);
|
||||
self.writer.write_all(to_send.as_bytes())?;
|
||||
self.writer.flush()?;
|
||||
|
||||
|
@ -411,13 +411,17 @@ impl KeyCode {
|
||||
Function(n) => {
|
||||
if mods.is_empty() && n < 5 {
|
||||
// F1-F4 are encoded using SS3 if there are no modifiers
|
||||
match n {
|
||||
1 => "\x1bOP",
|
||||
2 => "\x1bOQ",
|
||||
3 => "\x1bOR",
|
||||
4 => "\x1bOS",
|
||||
_ => unreachable!("wat?"),
|
||||
};
|
||||
write!(
|
||||
buf,
|
||||
"{}",
|
||||
match n {
|
||||
1 => "\x1bOP",
|
||||
2 => "\x1bOQ",
|
||||
3 => "\x1bOR",
|
||||
4 => "\x1bOS",
|
||||
_ => unreachable!("wat?"),
|
||||
}
|
||||
)?;
|
||||
} else {
|
||||
// Higher numbered F-keys plus modified F-keys are encoded
|
||||
// using CSI instead of SS3.
|
||||
@ -1532,5 +1536,9 @@ mod test {
|
||||
KeyCode::PageUp.encode(Modifiers::ALT, mode).unwrap(),
|
||||
"\x1b[5;3~".to_string()
|
||||
);
|
||||
assert_eq!(
|
||||
KeyCode::Function(1).encode(Modifiers::NONE, mode).unwrap(),
|
||||
"\x1bOP".to_string()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user