That’s a good idea. Because, you can’t mark events as done like you can in Reminders.
What you want to do is not too hard unless you have hundreds of events in one day. Although, it might be a little harder if you’re considering repeating events.
Here’s a quick script to get you started. It only checks the Home calendar.
-- Event rescheduler.
-- Covers only the Home calendar.
set todayMidnight to date (short date string of (current date))
set tomorrowMidnight to todayMidnight + 24 * hours
tell application "Calendar"
launch
activate
set todayEvents to every event of calendar "Home" whose (start date) ≥ todayMidnight and (start date) < tomorrowMidnight
set eventCount to count todayEvents
if eventCount is 0 then return
set eventSummaries to {}
repeat with i from 1 to eventCount
set thisEvent to item i of todayEvents
set thisSummary to summary of thisEvent
set end of eventSummaries to ((i as string) & "." & tab & thisSummary)
end repeat
end tell
activate
choose from list eventSummaries with title "Calendar Rescheduler" with prompt "Select events to reschedule:" with multiple selections allowed
set userSelection to result
if userSelection is false then
beep
return
end if
set eventIndices to {}
set tids to AppleScript's text item delimiters
set AppleScript's text item delimiters to {tab}
repeat with thisSel in userSelection
set thisIndex to text item 1 of thisSel
set end of eventIndices to thisIndex as integer
end repeat
set AppleScript's text item delimiters to tids
-- From here eschedule events with eventIndices and todayEvents.
-- You could use same properties for each event except that the start date will be for the next day.
-- You could prompt the user for a new start date.
-- You could open the info window for the event.
-- There are many ways to reschedule.
-- Also, repeating events are very hard to include.
It only covers the Home calendar and doesn’t actually reschedule for obvious reasons. It should be harmless because it doesn’t change anything.
Edited: also, you might include the start date in the choose from list dialog. Events can have the same summary which is confusing.