cinaq / reminders2calendar

Apple shortcuts that synchronizes Apple Reminders to Apple Calendar
Other
39 stars 2 forks source link

[Feature] Improved automation flow #1

Closed schaafjs closed 1 year ago

schaafjs commented 1 year ago

Hi there,

I discovered the original article a couple of days ago and really like the whole approach.

I have one suggestion which in my opinion improves the user experience drastically, especially when mirroring multiple reminder lists. Instead of using a single shortcut per reminder list as done with Reminders Personal.shortcut, you can also use the iterable "for line in text" as a shortcut action to iterate over lines in the user provided text and call Reminders2Calendar.shortcut for each line (each containing the name of one of the reminder lists). That way only one wrapper shortcut is required for an arbitrary amount of reminder lists.

If you wish, I can also share a minimum working example.


On a different note I suggest adding the license of the shortcut also to this repository.

xiwenc commented 1 year ago

@schaafjs sounds like a good idea. Please create a PR for the iterable. I was also thinking to make it more flexible so that Reminder List name does not have to match the Calendar name. That's currently a restriction because I could only accept 1 parameter at a time. Could be solved by accepting still 1 parameter but perhaps as a json dictionary. like:

{
"My reminder list1": "calendar 1",
"Another list": "Another calendar"
}
schaafjs commented 1 year ago

Please create a PR for the iterable.

Done.

I was also thinking to make it more flexible so that Reminder List name does not have to match the Calendar name.

I like the idea but am not sure about the implementation. Have you tried something already? When thinking about iterating through a dictionary (which Shortcuts supports natively), we should also think about error checking in my opinion.

More specifically (in my opinion) the shortcut should ensure:

  1. That the provided dictionary/json is of valid form.
  2. That the calendar exists.
  3. That the reminder exists.

Additionally, the names of the reminder list and calendar should also be extracted to variables and the shortcut actions should only rely on them instead of hardcoded challenges.

xiwenc commented 1 year ago

Thanks for PR @schaafjs !