Speaking of when things will happen

I’ve recently started looking at calendar options. I use the standard Apple stuff which is good enough for me, except the craziness of the “U.S. Holidays”, which include a heck of a lot of things I’ve never heard of or care about so, of course, I’d like to have something that suits me better. In an ideal world, I’d be able to edit any calendar and be done with it. But apparently you can’t do that.

I found sites that talked about how to subscribe to another calendar (which seem to be .ics files). They are applied to your calendar by telling iOS the website address.

So, I’m a bit confused by all this. For one thing, why can’t you download an .ics file, store it in icloud, and have it accessed that way? I can think of one possibility, but I haven’t read anything to confirm it:

A number of holidays are not the same time each year. An example would be Thanksgiving, which is the 4th Thursday of November. Others are even trickier, such as Easter, Passover, etc. Also, if it is a holiday that the federal govt declares as a day off for their workers, it may be moved from the normal date. Like if December 25 is a Sunday, the day off for workers will be Monday.

Anyway, I had kind of assumed any calendar calculated these things on the fly for each year. But maybe some of these dates have to be applied manually for each year - thus they do it one on their website and people access the website as they use the calendar app. This could make having your own copy in iCloud a problem since you’d also have to update manually for each year for any of those dates.

Another problem is that while there is a lot of stuff about downloading other calendars, there seems to be a dearth of actual info on where these are!

From what I’ve read, an .ics file is a text file. Even if it is written in some obscure way, I’m surprised there isn’t some app that would let you take an existing file and edit out what you don’t want. Well, maybe there is, but I haven’t found it.

I wish Apple would let you list out all their holidays and simply uncheck any you don’t want to see. I don’t think it should be that hard to do.

I have similar issues with birthdays. I used to dutifully add birthdays to metadata as actual birthdays in my contacts database (going back at least a couple decades since I’ve successfully migrated through various platforms). So when I turn on birthday notifications in my calendar I am flooded with multiple birthdays per day worth of clutter. If I turn it off I don’t see the important ones. I’d love the ability to control this by muting individual birthdays.

The only solution I know of is to delete the birthday from the contact’s metadata and type it into the notes field which is the opposite of how you are supposed to treat your data (but a wonderful example of inexorable entropy). I usually don’t even do this since by the time I notice it, it’s too late, and I’m less motivated to delete the data after the fact since it won’t benefit me for another full year. I have people for whom I’ve been through this cycle multiple times!

At least with birthdays you have options. For me, I only put birthdays in directly and set them to repeat annually. So I don’t have very many - most just immediate family. I only recently realized there was an option to include birthdates, that would go on your calendar automatically if you authorize it, in “Contacts”.

It’s been a long time since I’ve done anything special in contacts, but isn’t there an option to create your own categories? If so, you could create one for birthdays, but call it something else (“Birth”?). That way they are in your contacts, in a consistent, specialized place, but wouldn’t go into your calendar. Of course, you could still use the regular birthday field for those you want in your calenday.

That would be a good solution, although I’d still have 1000+ the old way and then accumulating new ones the new way, and next time I migrate my data to a new system it wouldn’t necessarily recognize those as birthdays and treat them properly.

Well, obviously moving all - or most - of those birthdays to a custom field would be time consuming. OTOH, ever one you move is one less showing up on your calendar.

As for migrating data to a new system, wouldn’t that migrate the custom fields too?

It reminds me of the work I had to do to get my music streamlined. I had over 4000 pieces - many from sample CDs of concert band music. When I retired, I didn’t need all that stuff. Yet some of the music on the sample disks were full recordings of stuff I liked. So I methodically listened to parts of most songs (some I already was sure I wanted so I didn’t have to listen to them). I was deleting a lot of stuff. But even then I had too much. So I had to decide which pieces I didn’t want to delete, but I also didn’t want in my iTunes library. So those I put in a different folder. Actually, multiple folders as I tried to keep things grouped by album. It was a lot of work, but each day cleared out a lot of stuff from iTunes until I was done.

Hmmm, I got to thinking of alternatives - specifically thought it might be possible to expert everything to a spreadsheet, edit that spreadsheet - such as creating another column for the new “birth” field and pasting in the info from the “birthday” field. Then import it into a new contact list? On my computer, I have more than one (iCloud, On My Mac, and another which is a second Apple account.

I found this. Kinda old, and has to do with Outlook and Excel, but maybe it will work with Contacts and, if necessary, Numbers:


Another idea I thought of, but have no idea if it would work, would be to edit the “Birthday” field in Contacts. Just give it a different name. If you can edit the name, maybe that would be enough to keep them from automatically being shown in the Calendar. If it works, then maybe you can add another “Birthday” field from Apple’s default choices and just put the birthdays you want into that field so they do show up.

I can imagine possible problems, but I don’t know if there actually would be problems.

I just looked at the option to change the name of a field that is already in your contacts. Doesn’t seem you can do it.

Most systems treat the existing fields as protected and will not allow you to change the names and/or will throw a hissy fit if you delete the column as this is expected data fields.

You should, however, be able to rename any of the custom fields you add.

Corrections by me in bold

In theory, I don’t see why this wouldn’t work, so long as your system supported exporting/importing its data to a spreadsheet or some type of delimited text file. Again, you would most likely have to ensure that the system protected Birthday column remained.

If the export version only includes fields you use, then I would think you could delete any, even system fields, from the spreadsheet and then import to a new contact list. Or add a new custom field, allowing you to create a “birth” field. But even if you can’t delete the Birthday field, as long as you can copy it’s data to another field this way, it will be easier to manually delete the birthday field info in the app rather than also having to retype it.

.ics files contain iCalendar formatted data. The spec is here:


Although they are text files, they’re not very easy to edit by hand. If you’re comfortable with a little coding, there are iCalendar libraries for most languages. In python, for example, there’s ics:

1 Like

That’s not typically how an export/import works. Most (all?) export/import functions export every field in the database (calendar, whatever). then, when you go to import, the function expects to see every field listed, no matter if it actually contains data or not, otherwise, the data could get corrupted by putting it in the wrong fields. An import does not typically look at the field name before it places the data.

Would love to experiment with this stuff, but don’t know how to do it without screwing up what I have since all my Apple accounts already have contact info I don’t want to risk screwing up.

But I would assume, if you had an account that you had not yet created any contacts for, you could export from another one to a spreadsheet, change whatever you wanted (including adding a field by, I assume, inserting another column), and then import that into contacts for that account that hasn’t been used.

Hmmm, seems Contacts only lets you export an a vCard or archive. So that’s a stumbling block right there. I don’t see how to get either one into a spreadsheet. No idea, if you happen to have stuff in a spreadsheet, if you can import that in. I know the article I read was about Outlook and Excel so maybe they allow more options.

I did find that you could select some group of contacts and drag them into an empty spreadsheet in Numbers. But so far I haven’t found anything that lets you bring them into a new Contacts list. Everything I’ve found so far involves using Excel rather than Numbers - and may involve another program to convert the info to vCard.

Hmmm, I dragged contacts into an empty spreadsheet. Then I exported it as a CSV file (which should allow me to import into Contacts. But when I chose the import option and selected the csv file, I always get a popup window saying the file isn’t right. Which means I have no way to see if the other things talked about can be made to work!

I also tried converting to a text file and importing that. Same problem.