Skip to content

Instantly share code, notes, and snippets.

@andrewgilmartin
Last active December 18, 2018 17:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save andrewgilmartin/9247436c0ec718dff5e33f23bd9224a6 to your computer and use it in GitHub Desktop.
Save andrewgilmartin/9247436c0ec718dff5e33f23bd9224a6 to your computer and use it in GitHub Desktop.
#!/usr/bin/perl -w
use strict;
use Date::Calc qw/Today Delta_Days/;
my @today = Today();
my @events = ();
while ( <DATA> ) {
next if /^#/;
chomp;
next unless /\s*(\d\d\d\d)-(\d\d)-(\d\d)\s+(.*)\s*/;
my $y = $1;
my $m = $2;
my $d = $3;
my $title = $4;
my $event = {
date => "$y-$m-$d",
title => $title,
days => Delta_Days( @today, ( $y, $m, $d ) )
};
push( @events, $event );
}
print "Days remaining\n---\n";
for my $event ( sort { $a->{days} <=> $b->{days} } @events ) {
print $event->{days}, " ", $event->{date}, " ", $event->{title}, "\n";
}
__DATA__
# YYYY-MM-DD DESCRIPTION
2018-12-30 End of year
2019-11-11 Andrew's Birthday
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment