Emacs Advent Calendar jp: 2011 の 17 日目です。16 日目は、@asudofu
さんの点数付けの導入でタスク管理を楽しくする[Emacs拡張] でした。

Emacs Advent Calendar jp には初めて参加します。Emacs は 2000 年から
使っていますが [2009-06-26-2] 、あんまり凝ったことはしていません。な
ので、今回は私の .emacs から良さそうな設定を 3 つ紹介します。

Dired で今日変更したファイルを色づけ

こんな感じに今日変更したファイルの日時に色が付きます。なかなか便利
です。
dired-todays-color

※ 意味もなく、s' でファイルを時間順に並べ替えるのも好きです。s'
で元に戻ります。

元々 blankspace > emacs > dired にあった設定なので、ご存知の方も多
いのではないでしょうか。今の私のコードはこのようになっていました。
日付が “12 15” でも “Dec 15” でも色が付くようになっています。

フォントを大きくしたり小さくしたり

Emacs-23.1 からフォントを動的に大きくしたり小さくしたり出来るように
なりました。等幅フォントでは出来ないかもしれません。

M-x text-scale-adjust の後に +' するだけでフォントが大きくなります。 -’ で小さくなります。`0’ で元に戻ります。

emacs-1x 等倍
emacs-5x 5回+
emacs-10x 10回+

私は C-q C-a に割り当てて、何か行き詰まると大きくしたり小さくしたり
しています。

Mac な方は、フォントの設定は Cocoa Emacs のフォント設定について がてっ
ぱんです。

自分のはてなブックマークをEmacsから検索

これも使っている人は多いと思います。M-x anything-hatena-bookmark で
自分のはてブを検索できます。これを使い始めてから、私のはてブの利用
率が急上昇しました。

M-x anything-hatena-bookmark -> emacs したところ

画像

導入は少し面倒です。

  1. migemo をインストールする。(Mac な方は [2011-10-10-1] が参考になるかも)
  2. anything.el をインストールする。
  3. anything-hatena-bookmark.el をインストールする。

3 はリポジトリが変わっていました。

% git clone git://github.com/k1LoW/anything-hatena-bookmark.git

M-x anything-hatena-bookmark-get-dump で自分のはてブのキャッシュファ
イル ~/.hatenabookmark を作成できます。でも重いので、シェルスクリプ
ト版を使うと良いでしょう。

自分のはてなブックマークを検索するanything-hatena-bookmark.elのデータ更新用シェルスクリプト - aki77の日記

svn で取得するのが簡単です。

% svn co http://svn.coderepos.org/share/lang/shellscript/misc anything-hatena-bookmark-get-dump

Mac な方は、GNU 版の sed が必要です。私は 0:30, 3:30,.. 23:30 のよ
うに 3 時間間隔で実行するように crontab に設定しています。

30 0-23/3 * * * PATH=/usr/local/bin:$PATH SED=gsed LANG=ja_JP.UTF-8 $HOME/bin/anything-hatena-bookmark-get-dump masutaka26

※1 GNU sed は Homebrew でインストールしました。
※2 cron で実行する場合は環境変数 LANG の設定が必要です。

以上のように少々面倒ですが、一度設定すれば快適はてブ生活を送ること
が出来るので、是非導入すべきでしょう。

終わりに

今回久しぶりに自分の .emacs を最初から最後まで読みましたが、結構し
んどいですね(1694行)。init-loader.el のような分割は好きではないので、
アウトラインモードで管理したいところです。標準の
outline-minor-mode を emacs-lisp-mode で使うと ;;; が * に相当する
ようですが、あまり使い勝手がよろしくありません。org-minor-mode って
ないですかね?

明日 18 日目は、@Oh_CanNotAngel さんです。