conf/shortcuts.rs: add info_message_{next,previous}

pull/144/head
Manos Pitsidianakis 2021-09-05 12:49:58 +03:00
parent 07e166e1fb
commit 13c5798c7b
Signed by: Manos Pitsidianakis
GPG Key ID: 73627C2F690DF710
3 changed files with 45 additions and 7 deletions

View File

@ -609,6 +609,14 @@ Go to the
.Em n Ns .Em n Ns
th tab th tab
.Pq Em cannot be redefined .Pq Em cannot be redefined
.It Ic info_message_next
Show next info message, if any
.\" default value
.Pq Ql Em M->
.It Ic info_message_previous
Show previous info message, if any
.\" default value
.Pq Ql Em M-<
.El .El
.sp .sp
.Em listing .Em listing

View File

@ -222,7 +222,9 @@ shortcut_key_values! { "general",
scroll_right |> "Generic scroll right (catch-all setting)" |> Key::Right, scroll_right |> "Generic scroll right (catch-all setting)" |> Key::Right,
scroll_left |> "Generic scroll left (catch-all setting)" |> Key::Left, scroll_left |> "Generic scroll left (catch-all setting)" |> Key::Left,
scroll_up |> "Generic scroll up (catch-all setting)" |> Key::Char('k'), scroll_up |> "Generic scroll up (catch-all setting)" |> Key::Char('k'),
scroll_down |> "Generic scroll down (catch-all setting)" |> Key::Char('j') scroll_down |> "Generic scroll down (catch-all setting)" |> Key::Char('j'),
info_message_next |> "Show next info message, if any" |> Key::Alt('>'),
info_message_previous |> "Show previous info message, if any" |> Key::Alt('<')
} }
} }

View File

@ -700,12 +700,30 @@ impl State {
if self.display_messages.len() > 1 { if self.display_messages.len() > 1 {
write_string_to_grid( write_string_to_grid(
if self.display_messages_pos == 0 { &if self.display_messages_pos == 0 {
"Next: >" format!(
"Next: {}",
self.context.settings.shortcuts.general.info_message_next
)
} else if self.display_messages_pos + 1 == self.display_messages.len() { } else if self.display_messages_pos + 1 == self.display_messages.len() {
"Prev: <" format!(
"Prev: {}",
self.context
.settings
.shortcuts
.general
.info_message_previous
)
} else { } else {
"Prev: <, Next: >" format!(
"Prev: {} Next: {}",
self.context
.settings
.shortcuts
.general
.info_message_previous,
self.context.settings.shortcuts.general.info_message_next
)
}, },
&mut self.overlay_grid, &mut self.overlay_grid,
noto_colors.fg, noto_colors.fg,
@ -1174,7 +1192,15 @@ impl State {
self.redraw(); self.redraw();
return; return;
} }
UIEvent::Input(Key::Alt('<')) => { UIEvent::Input(ref key)
if *key
== self
.context
.settings
.shortcuts
.general
.info_message_previous =>
{
self.display_messages_expiration_start = Some(melib::datetime::now()); self.display_messages_expiration_start = Some(melib::datetime::now());
self.display_messages_active = true; self.display_messages_active = true;
self.display_messages_initialised = false; self.display_messages_initialised = false;
@ -1182,7 +1208,9 @@ impl State {
self.display_messages_pos = self.display_messages_pos.saturating_sub(1); self.display_messages_pos = self.display_messages_pos.saturating_sub(1);
return; return;
} }
UIEvent::Input(Key::Alt('>')) => { UIEvent::Input(ref key)
if *key == self.context.settings.shortcuts.general.info_message_next =>
{
self.display_messages_expiration_start = Some(melib::datetime::now()); self.display_messages_expiration_start = Some(melib::datetime::now());
self.display_messages_active = true; self.display_messages_active = true;
self.display_messages_initialised = false; self.display_messages_initialised = false;