An Emacs Client For Blogger

Post by T.V. Raman, Google Research Scientist

From The Everything Can Be Done In Emacs Dept...

Blogger exposes a clean API based on Atom Publishing Protocol (APP) and Google Data APIs (GData). This Emacs module leverages this functionality to enable one to blog from within the comfort of a full-featured editing environment.

Where to get it

The Emacs Blogger client is part of g-client, a suite of Emacs clients for accessing Google Services. The current distribution can be downloaded from Google Code and the source code is available via Subversion.

Installation
  1. Unpack the tar archive and place the resulting g-client directory on your emacs load-path.
  2. Type make to compile the code.
  3. In your .emacs, add (load-library "g") to set it up.
Google Blogger gblogger

This client implements posting, editing and deleting of blog entries using the new Blogger API --- it replaces the now obsolete atom-blogger that implemented similar functionality using the old Blogger API. It uses value of customization option g-user-email by default; this can be overridden via option gblogger-user-email. See Blogger GData API for the underlying APIs used. For editing posts, I recommend installing nxml-mode.
  • Browse command gblogger-blog brings up the list of blogs owned by the currently authenticated user.
  • Posting command gblogger-new-entry takes a post URL and sets up a special buffer where you can compose your article. The post url is obtained from the feed of blogs above; use the post link for the blog to which you wish to post.
  • Browsing command gblogger-atom-display displays the atom feed for a specified blog as a browsable HTML page. In addition to reading your blog, this helps you find the edit url for individual posts.
  • Editing command gblogger-edit-entry takes the edit url of a previously posted entry. It retrieves the entry, and sets up a special composition buffer where you can edit the entry.
  • Submitting - the special composition buffer created by commands gblogger-new-entry and gblogger-edit-entry provide a special command gblogger-publish (bound to C-c C-c) that submits the entry to blogger.
  • Deleting Command gblogger-delete-entry deletes an entry specified by its edit url.
The emacspeak blog has further details.