For calendar, I use khal, which offers a TUI (ikhal
command) and a non-captive UI that can print a simple list like you might want (khal
command). It supports multiple calendars, ical, recurring events, etc. Since it support ical, you can add locations, times, dates, alarms, pretty much anything you want. No database required, each event is saved into a seperate ical file (easy to import into another program, if you wanna switch someday).
I also use todoman for to-do lists, which is pretty similar to khal in terms of interface — having both a captive TUI and a non-captive UI.
I realize this doesn’t interest you, but as a side-note: Both of these use portable file-formats that can be synced with any pretty much any calendar-syncing service using vdirsyncer, which I use to sync my events and todo-lists and address book using Posteo.
The best I can think of would be tmux/screen with khal running in a pane beside todoman; sorry. :o