Q: how can I make org-mode
read the time in timestamps intelligently?
org-mode
uses org-read-date
(which in turn relies on parse-time-string
) to create/modify timestamps, scheduled items, and deadlines. I'm trying to figure out how to make it smarter when it reads in the time of an event.
One can enter times:
- on a 24-hour clock (
9:00
=> 9:00AM,21:00
=> 9:00PM), or - with AM or PM suffixes (
9am
=> 9:00AM,9pm
=> 9:00PM).
That's all well and good, but here's where I'd like it to be smarter in a DWIM fashion. There are whole stretches of the day during which, on a 12-hour clock, I always mean PM (ie, for times in the middle of the night). For example, if I enter 2:00
, I always mean "2:00PM", but on the 24-hour clock it means "2:00AM". The problem is that I commonly forget to append the pm
part, and then my agenda informs me that the meeting I have for 2:00 in the afternoon is actually scheduled for 2:00 in the morning.
So: how can I convince org-read-date
to accept a range of times to mean PM unless I explicitly add the am
suffix? I'd like to be able to enter any time from, say, 1:00
to 6:59
and have it mean 1:00PM to 6:59PM unless I explicitly enter something like 1:00am
.
NB: see this related thread on getting org-mode
to understand alternative day/month abbreviations.