Writing with style – in textile
Disclaimer: This is not a comprehensive guide, and it did not involve in-depth research for solutions of the problems I am describing. It is more like fun DIY stuff I did to kill some time and learn more about vim, ruby, bash and textile. I am not bashing anyone from WordPress about their decisions – big props to the guys (especially Niki) for making sites like I can has cheezburger possible.
Prolonged exposure to the 37signals’ products Basecamp and Campfire made me a textile addict. Textile is very natural for mind flow, and allows me toMy search for textile plugins for WordPress was quite unsuccessful – some half-baked solutions which for some reasons did not work for me. concentrate on what I want to say, while taking care of the mundane html details.
However, I am bound to WordPress installations for all of my current content publishing places. I used textpattern for a while before, but at some point the convenience of the hosted WordPress blog and my lazyness turned out to be more important.
My search for textile plugins for WordPress was quite unsuccessful – some half-baked solutions which for some reasons did not work for me.
On top of this, the WordPress writing mode leaves a lot to be desired. I can’t stand wiziwig (no, won’t bother to write it properly). The html editor does not have fullscreen mode. On top of this, I am vim addict, and writing in anything else for long time is a pain in the right wrist.
Another thing that really bothers me in WordPress is the lack of revision history. Of course, re-implementing source control in a blog engine would not be the wisest thing to do. I believe that this is why some bloggers started using Github as blogging engine. When you’re a programmer, this looks completely natural, right? Well, let’s find a solution for these.
How to use textile – the programmer’s way
First things first, let’s move writing back to the desktop. I am a huge proponent of using web based applications whenever possible, but in this case I will stand on the opposite side. I need a full-screen, feature-rich environment, which allows me to concentrate on the writing. Actually, writing is much like coding. Hm, let’s try the same approach, shall we? For coding, I use vim + screen + gnome-terminal on full-screen mode. This gives me huge amount of whitespace(or, should I say, blackspace?), while hiding the clutter of the OS menus.
Hm, not really. When you write code, you need to see a lot at every moment. For the content, this is not that essential. In fact I would love the opportunity to enjoy the beautiful Consolas font in large size Yep, I must confess I use vista fonts on Ubuntu.
Let’s zoom a bit then (^+, can zoom out with ^-). Should love these features of the terminal. Much better.
Inspirational. We’re set.
Textile highlighting (why not?)
A simple google search for vim and textile provides great results, so I won’t bother discussing this at all.
The hard part – sending textile to WordPress
As said earlier, textile and WordPress do not like each other. I could go for writing plugin myself, but PHP is not something I would like to dig into right now. Let’s do it with ruby, then.
From this point, all you have to do is grab the source from the generated html file (this could be automated from vim using xclip) and paste it in the WordPress text field.
Source controlling your blog posts.
I am already using git for work and for fun (besides, subversion repository would be an overkill). In fact, I really don’t need my content stored somewhere on a public space – too shy to share the drafts anyway. Let’s just store it locally, then.
cd ~/Documents && git init git add blogging-with-textile.textile git commit -m "first draft"
Bonus tip – spell check your blog post in vim.
Don’t tell me that you don’t use the spell checking feature of vim. You don’t? Well, I did not use it too, till recently, but it is quite handy. Spend some time in the :help spell section, for mastering the art of spell-checking in vim. It is worth it.

