(defvar blogspot-post-username "yourname"
  "The first part of the email address: `blogspot-post-username'.`blogspot-post-blog'@blogger.com")
(defvar blogspot-post-blog-list '("blog1" "blog2")
  "List with second parts of the email address: `blogspot-post-username'.`blogspot-post-blog'@blogger.com")
(require 'cl)
(defun blogspot (title url &optional text)
  "Opens a gnus msg buffer with the active region or the parameters passed in the body.
Configure `blogspot-post-username' and `blogspot-post-blog-list' to set it up."
  (interactive "sPost title: 
sPost link (tip - an empty string won't create the link): ")
  (let* ((blogspot-post-blog (completing-read "Where to? " blogspot-post-blog-list nil nil (car blogspot-post-blog-list)))
	 (to (concat blogspot-post-username "." blogspot-post-blog "@blogger.com"))
	 (subject (cond ((and title url (not (string= url "")))
			(concat "<a href= \""
				url
				"\">"
				title
				"</a>"))
		       (title title)
		       (t "")))
	(body (or text "")))
    (let ((gnus-posting-styles
	   (mapcan (lambda (x)
		     (list (remove-if (lambda (y) (and (listp y)
						       (string= (car y) "Face")))
				      x)))
		   gnus-posting-styles)))
      (gnus-msg-mail to subject))
    (save-excursion
      (when body
	(raise-frame)
	(insert body)))
    (message "Edit the buffer and press \\C-c \\C-c to post it to %s." blogspot-post-blog)))
(defun blogspot-region (beg end title url)
  "Call `blogspot-text' and inserts the active region as the post's body."
  (interactive "r
sPost title:
sPost link: ")
  (blogspot title url (buffer-substring-no-properties beg end)))
-- 
Edgar Gonçalves - http://www.esw.inesc-id.pt/~eemg
Software Engineering Group @ INESC-ID
 IST/Technical University of Lisbon
0 comments:
Post a Comment