aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2019-11-01 13:51:41 -0400
committerJesse Luehrs <doy@tozt.net>2019-11-01 13:53:32 -0400
commit88eb324741effc1f8dec39e4fd696f0cb79f09d3 (patch)
tree321a3f0d37133cc0768ebdef4549dd960999a52d
parent41b1b57793f4e8b751b6843d29dd33fe2cd7c07c (diff)
downloadvt100-rust-88eb324741effc1f8dec39e4fd696f0cb79f09d3.tar.gz
vt100-rust-88eb324741effc1f8dec39e4fd696f0cb79f09d3.zip
implement decsed and decsel
-rw-r--r--src/screen.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/screen.rs b/src/screen.rs
index 79248f3..3700df3 100644
--- a/src/screen.rs
+++ b/src/screen.rs
@@ -283,6 +283,11 @@ impl State {
}
}
+ // CSI ? J
+ fn decsed(&mut self, params: &[i64]) {
+ self.ed(params);
+ }
+
// CSI K
fn el(&mut self, params: &[i64]) {
let pos = *self.grid().pos();
@@ -294,6 +299,11 @@ impl State {
}
}
+ // CSI ? K
+ fn decsel(&mut self, params: &[i64]) {
+ self.el(params);
+ }
+
// CSI L
fn il(&mut self, params: &[i64]) {
let count = params.get(0).copied().unwrap_or(1);
@@ -591,6 +601,8 @@ impl vte::Perform for State {
_ => {}
},
Some(b'?') => match c {
+ 'J' => self.decsed(params),
+ 'K' => self.decsel(params),
'h' => self.decset(params),
'l' => self.decrst(params),
_ => {}