最近、僕は堕落しています。どれくらい堕落しているのかというと、五月病のロスタイムと称して5月32日とか書いちゃうくらい堕落しています。
9月にLispに本格入門してから9ヶ月が経ち、さらにEmacsに乗り換えてから4ヶ月が経ちました。もはやS式以外見るのが苦痛ですし、初心者のころから使い込んだVimのキーバインドはほとんど忘れてしまいました。
そろそろ、この自堕落な生活に終止符を打たなければなりません。
dont-type-twice.el
EmacsはVimほどキーバインドが最適化されていません。足りない機能も多いです。そのため、ついつい同じキーやパターンを連打してしまいます。これは非常に悪い癖です。どれくらい悪い癖かと言うと、コーヒー飴とコーヒーを一緒に飲んじゃうくらい悪い癖です。
そこで自分を律するという名目でdont-type-twice.elというライブラリを作ってみました。例によってGitHubに上がっています。
http://github.com/fukamachi/dont-type-twice-el
これは何?
同じキーを連打するとミニバッファに警告を出してくれます。
インストール
auto-install.elをインストール済みの人は*scratch*で以下のコードを実行してください。
(auto-install-from-url "http://github.com/fukamachi/dont-type-twice-el/raw/master/dont-type-twice.el")
インストールしてない人はしてください。
設定
.emacs.elに以下のコードを追加してください。
(require 'dont-type-twice) (global-dont-type-twice t)
その後、Emacsの*scratch*など、いくつかのメジャーモードで使えるようになります。自動で使えるようになるメジャーモードはdt2-modesに入っているので、お気に入りのものがあればappendすれば自動ロードされます。
Growl (or notify-send) で通知
デフォルトではミニバッファにささやかな警告が出されるだけなので、救いようがないほど堕落している人には効果がないでしょう。そういう人のためにGrowlやnotify-sendで警告する方法もあります。
※Growlで通知するためにはgrowlnotify、notify-sendで通知するためにはlibnotify-binをインストールしておく必要があります。
;; Growl (setq dt2-notify-func 'dt2-growl) ;; notify-send (setq dt2-notify-func 'dt2-notify-send)
するとそれぞれ以下のように表示されます。
- Growl

- notify-send

さすがにいっぱいポップアップされると、ちょっと改めようかなという気にもなります。
今のところ、同じキーの連打と、同じキーパターンを続けて入力 (C-e C-j C-e C-jなど)した場合のみ表示されます。これから少しずつ、複雑なケースでも非効率なキーには警告を出すように表示できるようにしたいです。
ぜひ使ってみて、できれば感想や改善案など寄せてもらえるとうれしいです。ここのコメントか、@nitro_idiotまでお願いします。




最近のコメント