Last week I found that even WordPress was difficult to access from my home, especially the web interface … so I decided to start looking for a blog software.
Being a KDE user I naturally went to kde-apps and found KBlogger. This application is a Kicker applet which appears as a big “Blog” button.
Setting it up was not too difficult but I had to find out that the URL of the blog is not enough, it needs to be pointed to xmlrpc.php.
In term of features it offers:
- fetching categories
- fetching your post for edit or deletion
- posting as draft or published
Unfortunately I couldn’t stand with:
- the “Blog” button takes too much room in my task-bar
- have to right click to have the list of posts .. then wait will it downloads from the server
- there is no caching
- if I press ESC in a dialog it cannot re-open any dialog, I have to remove and add the applet again
- no spell checking (Qt spell checking is said to mess with the output)
Unlike other Emacs features, this one was very easy to setup. The documentation on Emacs Wiki gives you the one or two commands you need and in 2 minutes I had all my entries fetched in Emacs.
So compared to KBlogger, it is very fast because it caches the posts and it supports Emacs spell checking. Since I am always in Emacs anyway writing a Blog post is just a shortcut away. It also makes posting code snippets or writing as you are coding very easy.
Unfortunately it doesn’t support categories yet, and attachments didn’t work …
Also the version I had didn’t work with WordPress very well, it could not upload the edited posts. I tracked down the issue to the format of the post date. Looks like WordPress is expecting a dateTime.iso8601 but receiving a string, a quick hack later and everything works as expected.
If I have time, I might just look into the category feature. It should not be too difficult anyway.
PS: I’ve attached the patched files. They include the patches from EmacsWiki that were needed, plus my own: dateTime format, and i escape strings in CDATA rather than url encoding (at first I thought the problem came from url encoding).