aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/config/bindings.rs6
-rw-r--r--src/config/mod.rs2
2 files changed, 6 insertions, 2 deletions
diff --git a/src/config/bindings.rs b/src/config/bindings.rs
index 9bbd496c..2cf22de9 100644
--- a/src/config/bindings.rs
+++ b/src/config/bindings.rs
@@ -72,10 +72,12 @@ pub fn default_key_bindings() -> Vec<KeyBinding> {
Key::Home, ~TermMode::APP_CURSOR; Action::Esc("\x1b[H".into());
Key::End, +TermMode::APP_CURSOR; Action::Esc("\x1bOF".into());
Key::End, ~TermMode::APP_CURSOR; Action::Esc("\x1b[F".into());
- Key::PageUp, [shift: true]; Action::Esc("\x1b[5;2~".into());
+ Key::PageUp, [shift: true], ~TermMode::ALT_SCREEN; Action::ScrollPageUp;
+ Key::PageUp, [shift: true], +TermMode::ALT_SCREEN; Action::Esc("\x1b[5;2~".into());
Key::PageUp, [ctrl: true]; Action::Esc("\x1b[5;5~".into());
Key::PageUp; Action::Esc("\x1b[5~".into());
- Key::PageDown, [shift: true]; Action::Esc("\x1b[6;2~".into());
+ Key::PageDown, [shift: true], ~TermMode::ALT_SCREEN; Action::ScrollPageDown;
+ Key::PageDown, [shift: true], +TermMode::ALT_SCREEN; Action::Esc("\x1b[6;2~".into());
Key::PageDown, [ctrl: true]; Action::Esc("\x1b[6;5~".into());
Key::PageDown; Action::Esc("\x1b[6~".into());
Key::Tab, [shift: true]; Action::Esc("\x1b[Z".into());
diff --git a/src/config/mod.rs b/src/config/mod.rs
index 4ff0cb78..3f0cd0bb 100644
--- a/src/config/mod.rs
+++ b/src/config/mod.rs
@@ -937,6 +937,8 @@ impl<'a> de::Deserialize<'a> for ModeWrapper {
"~AppCursor" => res.not_mode |= mode::TermMode::APP_CURSOR,
"AppKeypad" => res.mode |= mode::TermMode::APP_KEYPAD,
"~AppKeypad" => res.not_mode |= mode::TermMode::APP_KEYPAD,
+ "~Alt" => res.not_mode |= mode::TermMode::ALT_SCREEN,
+ "Alt" => res.mode |= mode::TermMode::ALT_SCREEN,
_ => error!("Unknown mode {:?}", modifier),
}
}