]> git.rmz.io Git - dotfiles.git/blob - mutt/ical2txt
email: remove gmail and office365 accounts
[dotfiles.git] / mutt / ical2txt
1 #!/usr/bin/env python3
2
3 from icalendar import Calendar
4
5 def format_cal(event):
6 start = event.get('dtstart').dt
7 end = event.get('dtend').dt
8 str = "Start: {:%Y-%m-%d %H:%M}\n".format(start.astimezone())
9 str += "End: {:%Y-%m-%d %H:%M}\n".format(end.astimezone())
10
11 if event.get('attendee') is not None:
12 attendees = [ a.params['cn'] for a in event.get('attendee') ]
13 str += "Attendees:\n"
14 for a in attendees:
15 str += "\t{}\n".format(a)
16 str += "\n"
17
18 description = event.get('description')
19 if description is not None:
20 str += description
21
22 return str
23
24
25 with open('/dev/stdin', 'r') as f:
26 cal = Calendar.from_ical(f.read())
27
28 for c in cal.walk():
29 if c.name == "VEVENT":
30 print(format_cal(c))