   "Timer function for recent tweets, called via a timer"
   (twit-parse-xml-async (format twit-friend-timeline-file 1) 'twit-follow-recent-tweets-async-callback))
 
-;;* recent async 
+;;* recent async timer
 (defun twit-follow-recent-tweets-async-callback (status url xml)
+  "Callback function, called by `twit-follow-recent-tweets-timer-function'"
   (when (not status)
 		(save-window-excursion
-		 (set-buffer (get-buffer-create "*Twit-recent*"))
-		 (toggle-read-only 0)
-		 (twit-write-recent-tweets xml)
-		 (toggle-read-only 1))))
-
-;;* rate
+		 (save-excursion
+		  (with-twitter-buffer "*Twit-recent*"
+			(twit-write-title "Following Recent tweets: %s\n" (format-time-string "%c"))
+		    (twit-write-recent-tweets xml))))))
+
+;;* rate var
 (defvar twit-last-rate-limit
   twit-standard-rate-limit
   "What is the previous rate limit?")

;;            features.  More and better searches to come.
;;          - Properly Makred my own, and Therons changes in the changelog.
;;          - Added macro for displaying tiwtter buffers
;;          - commentary, installing, and other documentation improved.
;; * 0.1.1  - Fixed image bug with filename collisions.
;;          - Fixed bug with twit-follow-recent-tweets

;;; Bugs:
;; * Follow-recent-tweets might have a serious memory leak.  This
;;   probably has to do with the temporary buffers that are being created
;; * zebra tables are hosed with filtering
;; * too much Unilinguality.  Multi-lingual messages would be ideal.

;; Please report bugs to the twit emacs wiki page at:
;;   http://www.emacswiki.org/cgi-bin/wiki/TwIt

;;; xml parsing is a little hacky and needs work.
;;* tweets write memoryleak last-tweet
(defun twit-write-recent-tweets (xml-data) 
  (if (twit-header-error-p (twit-parse-header (car xml-data)))
	  (twit-display-error xml-data)
	  (let* ((first-tweet (xml-first-child (cadr xml-data) 'status))
