#! /usr/local/bin/ruby
require 'calendar'
include Calendar
def cal(m, y)
printf(" %s %d\n", MONTH_NAMES[m], y)
printf(" S M Tu W Th F S\n")
fst = absolute_from_gregorian(m, 1, y)
print(' ' * day_of_week_from_absolute(fst))
days = gregorian_last_day_of_month(m, y)
for i in 1..days
printf('%2d', i)
if day_of_week_from_absolute(fst + i) != 0
print(' ')
else
print("\n")
end
end
if ((day_of_week_from_absolute(fst) + days) / 7) < 5
print("\n")
end
print("\n")
end
def main()
if $*.length > 2
printf($stderr, "usage: cal [ month [year] ]\n")
exit(1)
end
now = Time.now
m = now.mon
y = now.year
m = $*[0].to_i if $*.length >= 1
y = $*[1].to_i if $*.length >= 2
cal(m, y)
end
main()
syntax highlighted by Code2HTML, v. 0.9.1