git-gutter.el

寝れないので変な時間にブログを書いたりする。

時折思い立ったように Emacs Lisp を見直して色々導入を試みたりするも、結局割り当てたキーバインドを忘れてたりして定着しない、というものは多い。そんな中でもここ1, 2ヶ月くらいで定着したのが git-gutter.el

このように緑のプラス記号なんかが出て git で管理しているファイルを編集した場合の差分がどこかが一目でわかる。

多くの elisp がそうなんだけど、導入する前までは便利そうだけどそこまで必要かな? と思いつつ入れてみたらもう手放せなくなった、そういう類です。ぼーっとしながらコード書いてる時でも、あそことあそことあそこを編集したんだなってのが git diff とかしなくても分かる。

これを入れるとちょっと動きがモッサリするみたいな話もあるけど、作者の id:syohex さんが鋭意改善中 (http://d.hatena.ne.jp/syohex/20130303/1362298738) のようです。自分は MacBook Pro でそんなに気にならないかな。

他に magit、anything-project、ace-jump-mode なんかも最近導入してみたけど、結局手に馴染まずに使えてない。magit は最初便利だなと思ったけど、結局 git コマンドの方が何も考えずに操作できてしまうのでそちらを使っている。

elisp は M-x list-packages (ELPA) で入れよう

ところで近頃 elisp はもう可能な限り ELPA から入れるようにしている。ELPA年始にもちょっと紹介したEmacs Lisp のパッケージアーカイブサービス。要するに Emacs における yum や apt みたいなの。

ELPA で入れたパッケージは

  • M-x list-packages で一覧を出す
  • U を押して upgrade 可能なパッケージに一括でマーキング
  • x で upgrade 実行

で、既存のものをまとめて最新化できる。

git-gutter.el のように開発がアクティブで、最新版を使ったほうが高速なんてものを追いかけるのが楽になる。というか今まで wget で生ファイル取ってきてたとか、なんていうか 21世紀にもなって何やってるんだって感じですよね。生 elisp 直で済ませていいのは小学生まで。まあ、ELPA や MELPA に置かれてないパッケージもちょこちょこあるので、全部が全部というわけにはいかないのですけども。