18 February 2010

Projany

A short note about Projany

Projany is a meta project-manager I wrote for emacs. I wrote it because:

  • I wanted a way to store org-rememebr notes in a project-oriented way. That is, after issuing the command `org-remember', pick a project by name, then pick an org doc file within that project to direct the note to.
  • My forthcoming project Emtest wants to can launch all tests for some given project.

I looked over existing emacs project managers and there are too many! Worse, one is big and overkill-ish (ede) and the others are tiny and are probably underkill. I was not keen on committing to one, writing code to fit it, and then finding that I should have picked a different one.

As I was trying to pick The Right One, it dawned on me that I shouldn't be trying to pick one at all, I should just support a common interface for all of them. So I wrote projany.

weblogger, g-client, and I'm back

weblogger, g-client, and I'm back

Despite the multiweek hiatus, I have not forgotten blogging. I had been using the library weblogger.el to post, but it's not satisfactory. Not sure exactly why it stopped working. I didn't want to spend serious time fixing it, because it uses an older protocol; it uses XML-RPC instead of Atom API.

Too bad, because I had already done a little coding to make it post directly from org-mode.

So I have switched over to T V Raman's g-client. The switch may be temporary or not - we'll see.

Using g-client was not straightforward - you have to know the trick of first calling `gblogger-blog', getting the [post] url from that, and using that as the URL. It's not obvious. This page was very helpful in getting it running so I updated emacs-wiki to point to it.

This is not to run Raman down. He does say that it's a work in progress. And his code is clean and well-structured, to be sure. He structures code like I do, but he has a different way of folding it (folding.el vs allout.el)

This post is a test of g-client working with some org-oriented support code I just wrote.