Emacs上でポリンゴンショックさせてみた。

はじめに

Emacsでの作業に集中しているため、Windows上でスケジュールソフトからの通知に気が付かないことが多く、不便に感じていました。
不快に思うくらい目立つ実装にしてみてはどうかと考えて、ポリゴンショックを作ってみました。

動作イメージ

動作イメージは、不快にならないよう、リンクにしておきます。
動作イメージ

以下の2枚の画像のように、赤背景と青背景が高速で入れかわります(マシンスペックに依存)


使い方

導入
M-x install-elisp RET
https://gist.github.com/sanryuu/7734853/raw/af2f3299aa8af1113042799067f3ffaf264f9b92/polygon-shock.el RET
C-c C-c
ポリゴンショック開始

開始時は、以下のコマンドを使ってください。

M-x polygon-shock-start
ポリゴンショック停止

他のEmacsの拡張と同じ感覚で利用できるように、C-gで終了できるようにしています。

C-g
備考

通知なのでコードの中で呼び出して使います。
(run-at-time TIME nil 'polygon-shock-start)
Emacsのタイマーを使っているので以下のコードと組合せると良さそう。
http://d.hatena.ne.jp/ozawanay/20110124/p1

おわりに

もっと綺麗な実装にできそうなのですが、quoteの中の文字列を変数に置き換えられないなどありまして、汚ないコードになっています。
Emacsのカーソルを激しく点滅させるEmacs Lisp - hitode909の日記 を参考に改善したいです。
社内で使ってたら、「頭おかしい」みたいな反応されたので、使いどころを選びます。