As per my previous entry concerning blogging through iCal, I've gotten a decent amount of emails on it. One from Timothy Appnel suggests using a Movable Type plugin to encode the characters necessary for iCal. Of course! So, I ran over to Brad Choate's MT Hacks page, picked up MTRegEx and, as you can see with the newest template code and calendar, now have encoded characters (in testing with redmonk, we've encoded commas, semi-colons, and quotes... there's probably more though - it just feels more exciting to experiment at this point, then read some dusty old specification).
The URLs that Apple uses on their calendar library all come with webcal:// for a protocol. If you're using Internet Explorer, simply click, and that calendar will be imported. However, that doesn't work very well with my preferred browser (Mozilla) - there's actually no visual indication that anything has happened. Thus, it's probably better, cross-browser wise (iCab, OmniWeb, Chimera, etc.) to use just http:// and have people cut and paste into iCal. Finally, Apple is using a content-type of text/plain for their calendars, so you won't need to change anything on your webserver to properly serve the files (assuming, of course, that your webserver defaults to text/plain for files it doesn't have a mapping for). Update: Apparently, if you set up the webcal:// protocol within the Internet Explorer preferences, that also sets it for the whole OS - after doing so and restarting Mozilla, webcal:// worked as intended.
Surprisingly enough, if your vCalendar file has Mac linefeeds, then it's going to break iCal. redmonk has already filed a bug on it, but I wrote him a quick mac2unix script hosted on disobey.com (see, he uses Frontier for his backend, which always sends Mac linefeeds). To use the script, just pass your URL to my URL, like this. Incidentally, that link will give you his calendar for subscribing. Neater: Mike Krus of NewsIsFree.com is now providing Slashdot in vCalendar format. Yes!
To create clickable URLs (one of the things that I felt would stop blogs over iCal from being as great as they could be), an anonymous user writes: In the iCal help file it explains how to add clickable URLs to events: "To include a clickable URL in the subject for an event, type the URL between angle brackets. For example, <http://www.apple.com>". I've since fixed my MT template and you can see the changes on the calendar. Sadly, this only seems to work in the DESCRIPTION, and not the SUMMARY. Update: This does work in SUMMARY, but only if the URL is the only thing there - if you include your entry title or what have you, then it's not gonna fly. I'm not a fan of that idea, so I've not done this to my templates.
To customize the title of your calendar, and how it displays in iCal, modify the X-WR-CALNAME;VALUE=TEXT:
value - mine has been set for "Disobey Nonsense Network". I've also added a DESCRIPTION (different from SUMMARY). Things I'd like to see: how to do comments in vCalendar (so that I can point people looking at the template to these blog entries), and a Movable Type plugin that takes all the links in a post and turns them into footnotes, like so:
this is a url [1] that you should really visit!
.
.
.
[1] http://www.url.com/you/should/visit.html
Comment through email or on the O'Reilly weblogs.