Back from the ethers,
an apparition appears.
Scary ghost noises!

Soooo, I've been away.

But I'm back now.

I recently made the switch for this blog from Wintersmith to Ghost.io. I'd been keeping tabs on Ghost ever since it was in Kickstarter mode a few years back, my only concern being whether or not it had enough staying power to get proper development. The use of Markdown has always been appealing (and was one of the main reasons I had settled on Wintersmith earlier). Overall, Ghost feels like a less-bloated and more developer-friendly version of Wordpress. Though, to be fair, I may have no given Wordpress enough of a fair chance back in the pre-2.x days.

Migrating all the old posts hasn't been too painful, tags are natively supported instead of awkwardly hacked, and so far, it's been an absolute joy to write and publish in its interface. This change also gave me the opportunity to transition my stylesheets from Skeleton to Min. I never really needed the full functionality of Skeleton, and going back to basics made it a lot easier for me to make styling consistent everywhere. Also, apparently my implementation of Skeleton broke my site on mobile, and I just never realized. Oops.

My delta printer development has stalled a bit, but I've still making progress and learning a lot, so I'll get back to documenting that as soon as I'm able.

Update (11-12-15): Realized I probably should detail some of the minor modifications I made to properly transition from Wintersmith to Ghost.

Wintersmith used the --- separator to break up excerpts and the rest of the post. I used this Gist post to use the <!--preview--> separator instead. As a Ghost comment (I'm presuming), it doesn't render in posts by default, and so we only need to scan for it prior to rendering content. I took out the addition of the randomized number and the subsequent javascript injection to hide that new content. It wasn't really clear to me why this was necessary (possibly related to how Ghost or some servers cache pages??), and this hack seems to work just fine w/o that addition.

Wintersmith also used /articles/ preceding the post title in the url. Since Ghost doesn't by default, that breaks any links to my posts from search engines or other sites. Apparently a permanent way to update the url style is by changing the settings in Ghost's sqlite database.

Another way seems to be to update the redirection scripts. My requirements were a bit different, since Ghost is up to version 0.7 now instead of the version 0.3 documented in that link. I ended up updating /ghost/core/server/routes/frontend.js by adding:

 router.get(/^\/(articles\/?).*/, function redirect(req,res){
    res.redirect(301, req.url.substr(9));
});

right after the redirect line for ghost-admin. Just as dirty as the link above suggests, but also just as effective.