]> git.rmz.io Git - dotfiles.git/blob - mutt/ical2txt
mutt: delete wio.sig
[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 att = event.get('attendee')
13 if not isinstance(att, list):
14 att = [att]
15 attendees = [ a.params['cn'] for a in att]
16 str += "Attendees:\n"
17 for a in attendees:
18 str += "\t{}\n".format(a)
19 str += "\n"
20
21 description = event.get('description')
22 if description is not None:
23 str += description
24
25 return str
26
27
28 with open('/dev/stdin', 'r') as f:
29 cal = Calendar.from_ical(f.read())
30
31 for c in cal.walk():
32 if c.name == "VEVENT":
33 print(format_cal(c))