#!/usr/bin/perl -wl use strict; # Get the month using cal my @cal = `cal @ARGV`; my $date = shift @cal; $date =~ s/^\s+//; $date =~ s/\s+$//; shift @cal; # Ignore short day names pop @cal; # Ignore blank row unshift @cal, 'Sun Mon Tue Wed Thu Fri Sat'; # Add days # Some simple Html formatting print ''; print ''; print '
'; print ''; print "\t\n\t\t\t\n"; # Print each day as a "; my @days = split ' '; # Left or right pad short weeks if (@days < 7) { if ($days[0] == 1) { unshift @days, (' ') x (7 -@days); } else { push @days, (' ') x (7 -@days); } } print "\t\t" for @days; print "\t"; } print '
" . "
$date
element for (@cal) { print "\t
$_
'; print '
'; print ''; print ''; __END__