twittering-mode を popwin に閉じこめる

私は普段、PC から twitter へのアクセスでは hootsuite か twittering-mode を使っています。

emacs で何か作業している時に twittering-mode を呼ぶと、その作業を完全に中断されるので、本当は shell-pop ライクな操作でチラ見できればいいんだけどなぁ……、と思っていました。

そこで、最近 emacs 設定の整理をあれこれやっていたこともあって、popwin に閉じ込めてみることにしました。

(defun twittering-pop ()
  (interactive)
  (if (popwin:popup-window-live-p)
      (popwin:close-popup-window)
    (if (twittering-get-buffer-list)
        (display-buffer ":home")
      (let ((cb (buffer-name)))
        (twittering-mode)
        (switch-to-buffer cb)
        (display-buffer ":home"))
      )))
(push '(":home" :height 10 :position bottom) popwin:special-display-config)

(global-set-key (kbd "<f10>") 'twittering-pop)

twittering-mode 自体の設定にも手を入れて、twittering-initial-timeline-spec-string によく見る timeline をセットしたり、h と l で timeline の切り替えができるようにしたりしてみました。

結果、「twitter でも眺めるかなー」と思ったら F10 で :home timeline をポップアップさせ、h/l で各種 timeline をザッピングして、用が済んだら C-g (もしくは F10) で消す、という操作の流れになりました。幸せ。

私は minibuffer を使っているので問題ありませんが、popwin の仕様では編集バッファを出すとポップアップが消えてしまうはずなので、つぶやくのにそっちを使っている場合はイマイチかも知れません。