Skip to content

Commit

Permalink
converted default formatting so single-digit hour times are 0-padded
Browse files Browse the repository at this point in the history
  • Loading branch information
emgelb committed Jun 11, 2019
1 parent 35bf32a commit 1bf9e39
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 2 deletions.
2 changes: 2 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

27 changes: 25 additions & 2 deletions src/output/time.rs
Expand Up @@ -122,17 +122,37 @@ impl DefaultFormat {
}
}


impl DefaultFormat {
fn is_recent(&self, date: LocalDateTime) -> bool {
date.year() == self.current_year
}

fn month_to_abbrev(month: datetime::Month) -> &'static str {
match month {
datetime::Month::January => "Jan",
datetime::Month::February => "Feb",
datetime::Month::March => "Mar",
datetime::Month::April => "Apr",
datetime::Month::May => "May",
datetime::Month::June => "Jun",
datetime::Month::July => "Jul",
datetime::Month::August => "August",
datetime::Month::September => "Sep",
datetime::Month::October => "Oct",
datetime::Month::November => "Nov",
datetime::Month::December => "Dec",
}
}

#[allow(trivial_numeric_casts)]
fn format_local(&self, time: Time) -> String {
let date = LocalDateTime::at(time.seconds as i64);

if self.is_recent(date) {
self.date_and_time.format(&date, &self.locale)
format!("{:2} {} {:02}:{:02}",
date.day(), DefaultFormat::month_to_abbrev(date.month()),
date.hour(), date.minute())
}
else {
self.date_and_year.format(&date, &self.locale)
Expand All @@ -144,7 +164,9 @@ impl DefaultFormat {
let date = zone.to_zoned(LocalDateTime::at(time.seconds as i64));

if self.is_recent(date) {
self.date_and_time.format(&date, &self.locale)
format!("{:2} {} {:02}:{:02}",
date.day(), DefaultFormat::month_to_abbrev(date.month()),
date.hour(), date.minute())
}
else {
self.date_and_year.format(&date, &self.locale)
Expand All @@ -153,6 +175,7 @@ impl DefaultFormat {
}



#[allow(trivial_numeric_casts)]
fn long_local(time: Time) -> String {
let date = LocalDateTime::at(time.seconds as i64);
Expand Down

0 comments on commit 1bf9e39

Please sign in to comment.