summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCanop <cano.petrole@gmail.com>2022-12-15 15:57:30 +0100
committerCanop <cano.petrole@gmail.com>2022-12-15 15:57:30 +0100
commite4097c9d09b6df41203b0ca99fc3b728a0ca8970 (patch)
treed796537d7570df5ae72b0c0d465eed63c2f3ab60
parentb93d834433dcef2dc3dfc4e9695290d87473fc6f (diff)
allow going to help with just `?` on Windows
-rw-r--r--Cargo.lock2
-rw-r--r--Cargo.toml2
-rw-r--r--src/command/panel_input.rs3
-rw-r--r--src/display/displayable_tree.rs19
4 files changed, 14 insertions, 12 deletions
diff --git a/Cargo.lock b/Cargo.lock
index 77292b1..da99ec9 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -140,7 +140,7 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "broot"
-version = "1.17.1"
+version = "1.17.2-dev"
dependencies = [
"ahash 0.7.6",
"ansi_colours",
diff --git a/Cargo.toml b/Cargo.toml
index e485fcd..b745a01 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "broot"
-version = "1.17.1"
+version = "1.17.2-dev"
authors = ["dystroy <denys.seguret@gmail.com>"]
repository = "https://github.com/Canop/broot"
homepage = "https://dystroy.org/broot"
diff --git a/src/command/panel_input.rs b/src/command/panel_input.rs
index c49244f..192645c 100644
--- a/src/command/panel_input.rs
+++ b/src/command/panel_input.rs
@@ -306,7 +306,8 @@ impl PanelInput {
return Command::from_parts(parts, true);
}
- if key == key!('?') && (raw.is_empty() || parts.verb_invocation.is_some()) {
+ if (key == key!('?') || key == key!(shift-'?'))
+ && (raw.is_empty() || parts.verb_invocation.is_some()) {
// a '?' opens the help when it's the first char
// or when it's part of the verb invocation
return Command::Internal {
diff --git a/src/display/displayable_tree.rs b/src/display/displayable_tree.rs
index 5e8696e..f4f4974 100644
--- a/src/display/displayable_tree.rs
+++ b/src/display/displayable_tree.rs
@@ -18,7 +18,7 @@ use {
task_sync::ComputationResult,
tree::{Tree, TreeLine, TreeLineType},
},
- chrono::{DateTime, Local, TimeZone},
+ chrono::{DateTime, Local, LocalResult, TimeZone},
crokey::crossterm::{
cursor,
QueueableCommand,
@@ -222,14 +222,15 @@ impl<'a, 's, 't> DisplayableTree<'a, 's, 't> {
seconds: i64,
selected: bool,
) -> Result<usize, termimad::Error> {
- let date_time: DateTime<Local> = Local.timestamp(seconds, 0);
- cond_bg!(date_style, self, selected, self.skin.dates);
- cw.queue_g_string(
- date_style,
- date_time
- .format(self.tree.options.date_time_format)
- .to_string(),
- )?;
+ if let LocalResult::Single(date_time) = Local.timestamp_opt(seconds, 0) {
+ cond_bg!(date_style, self, selected, self.skin.dates);
+ cw.queue_g_string(
+ date_style,
+ date_time
+ .format(self.tree.options.date_time_format)
+ .to_string(),
+ )?;
+ }
Ok(1)
}