今月のEmacsの メーリングリスト をブラウザで開く短いコードです。

メーリングリストに登録したいものの、
メールが多すぎて追いきれない人向けです。

URLに日付が含まれていて直接ブックマークできないので
Emacsから開くようにしています。

本当はRSSで読みたいんですけどね…ないものはしゃーない。

たぶん、どこかに落ちてそうですが、
こんなのは自作した方が早いのでさくっと書きました。

fset 関数を使い、以下のコマンドを一括して定義します。

  • M-x emacs-devel
  • M-x bug-gnu-emacs
  • M-x emacs-bug-tracker
  • M-x emacs-buildstatus
  • M-x emacs-diffs
  • M-x emacs-elpa-diffs
  • M-x gnu-emacs-sources
  • M-x help-emacs-windows
  • M-x help-gnu-emacs
  • M-x info-gnu-emacs
  • M-x emacs-tangents (<2015-11-11 Wed>追加)

レキシカルクロージャ を使っているので
lexical-binding = t です。

設定 mylisp-emacs-ml.el(以下のコードと同一)

;;; -*- lexical-binding: t -*-
(defun open-emacs-ml (name)
  (browse-url (format "http://lists.gnu.org/archive/html/%s/%s/"
                      name (format-time-string "%Y-%m"))))
(dolist (ml '(emacs-devel bug-gnu-emacs emacs-bug-tracker emacs-buildstatus emacs-diffs
                          emacs-elpa-diffs gnu-emacs-sources help-emacs-windows
                          help-gnu-emacs info-gnu-emacs emacs-tangents))
  (fset ml (lambda () (interactive) (open-emacs-ml ml))))

(provide 'mylisp-emacs-ml)

実行方法

$ wget http://rubikitch.com/f/mylisp-emacs-ml.el
$ emacs -Q -f package-initialize -l mylisp-emacs-ml.el

本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。