On Day 1 (the same Day 6 link above) I said I’d write a script. The script is called blog_post.py and is, of course, in Python 2.7. When I post a blog on Octopress it basically consists of these steps.
- Run the new_post command to create a file.
- Edit the file to write the post with Emacs, using the Markdown language.
- Save the file.
- Generate the blog with a generate command which updates the entire static site meaning all of the HTML, CSS, image and other files used to create the website.
- Copy all of those files to a Github directory.
- Add, commit and push the Github directory up to Github.
The script currently handles the first three steps and all I have to do is specify the title on the command line. The remaining steps are still manual but I plan to add an automatic version of them, or at least a more-automated version, to the script.
For as much posting as I’ve been doing lately, making it this much more convenient is more important than normal.
Some of you might point out that much of this automation is already built into Octopress. I think the fact that I want to deviate from the out-of-the-box functionality it provide means it’s easier just to write a program in Python I can maintain rather than learning how to hack the Octopress system.
Speaking of Github, it’s the third leg of my switch to Octopress and Markdown. It’s turned out to be a great hosting solution. It’s free, reliable, and performs well. Uploading is super efficient, too, of course.