How to Change the Default Duration of New iCal Events

Question:

Karl writes: While in the month view of iCal, all new events default to an “all day” duration. Unchecking “all day” converts the event into an 8-hour block spanning from 10 a.m. to 6 p.m., a block of time that is rarely applicable to the majority of my events, especially when I’m on the go and only have a moment to enter a new event’s start time. Modifying the start time preserves the 8-hour block by adjusting the end time accordingly.

While I can obviously correct each event’s end time manually, there must be a better method. How can I modify iCal so that new events are a shorter duration by default?

Answer:

In previous versions of iCal, all new events defaulted to a 1-hour duration. Starting with OS X Lion, however, new events created in iCal’s month view default to an all-day duration and then, if all-day is deselected, to an 8-hour block. New events created in the day or week views still default to 1-hour durations.

iCal Month View Default DurationNew events created in the month view of iCal in Lion default to an all-day duration or, if deselected, an 8-hour duration.

Unfortunately, Apple does not provide a way, via Preferences or the Terminal, to change iCal’s month view behavior. Switching to the day or week views is a workaround, as long as those views fit your workflow and personal preference.

If so, and if a 1-hour duration doesn’t fit your needs, the default duration can still be changed using a Terminal command. Quit iCal, launch Terminal, and enter the following command, replacing the “X” at the end with a number of minutes for the new default event duration, and hit Return:

defaults write com.apple.iCal 'Default duration in minutes for new event' X

For example, replacing “X” with “30” will result in all new events having a duration of half an hour.

If you prefer to stick with month view, however, you can force iCal to set a specific duration by adding more information to your event title. Starting with Lion, Apple introduced contextual input in iCal, which allows users to set the start and end time of an event by adding it to the event name.

iCal Contextual EntryEnter the start and end time of your event in the event’s name.

For example, to create a new event in month view, double-click on the desired day and type the event’s name. Before pressing Return, add the event’s duration at the end of the title. Pressing Return now creates the event with the specified duration. As in the screenshots above and below, entering “Meeting 2p to 4:30p” created an event, “Meeting,” with a start time of 2:00 p.m. and an end time of 4:30 p.m.

iCal Event Entry

By entering the start and end times for an event in the event name, iCal will automatically set the applicable duration.

Alternatively, new events that only identify a start time can be created via this same method. In that case, iCal’s default event duration, which is 1-hour unless changed with the Terminal command above, will apply to the event. As seen below, creating a new event with a title of “Party at 8p” creates a new event, “Party,” with a start time of 8:00 p.m. and an end time of 9:00 p.m. by default.

iCal Event Start Time Only

Entering only the start time in an event’s name will create an event with iCal’s default duration, which can be changed with a Terminal command.

While Apple may have made working in Lion’s iCal month view a tad more frustrating, we hope this new functionality eases the pain.

[Teaser graphic via Shutterstock]