TB-LAB BLOG

坪川研究室ブログです!適当に更新します!

Macでemacsを設定しよう

pruneです.

今日は何を書くの?

最近emacsをいじり始めました.とっても楽しいです.
SDが先月vim特集,今月はemacs特集をやってました.
なので今回のblogはemacsについて書いていきたいと思います.
今回は最初にemacsの設定編(mac)をやっていきたいと思います.

emacsってなーに

エディターです.細かい説明はしらん!笑
pruneは大学に入って1年生の時に出会いました.
というのも大学で最初にいじらされるエディタがemacsです.
周りの友達には「普通のGUIがついてるテキストエディタでいいじゃん!」
って友達が多かったです.ですがpruneはなるべく何か書くときはemacsでやってきた(つもり)です.
2年生になって総合開発環境(NetBeans)に出会ってからはプログラミングはそっちでやってきました.
Texを書くときなどはemacsでしたけど.

総合開発環境を初めて使ったときは「補完機能すげえええ!」って思ったのを今でも覚えています.
ある先生は「実はemacsとかのエディタでもできるんだけど(ボソッ」って言っていたのも覚えています.
そして最近emacsをいじろう!みたいなのをnashioと話していじることを決意しました.
最近はemacsの設定ばっかりいじってます.

vi(m) VS emacs の宗教対立

vi(m)とemacsは宗教対立があると言われています.
Q.なんでおまえemacs使ってるの?
A.かっこいいからです.あとなんかfit感がある.

Q.なんでvimじゃないの?
A.理由ありません.ただemacsキーバインドの方が僕は好きだからです.勘違いしないでほしいのはvimもすばらしいエディタです.大学の授業で先にvim使っていたらたぶんvimでした.

Q.普通のテキストエディタとかでいいじゃん!
A.それはそれでいいと思います!自分が使いたいと思った時が使いどきだと思います.

Q.便利なことはなに?
A.自分で結構なんでも設定できるのと,キーバインドが基本どこでも使える.例えばいまblog書いてるけどここでもemacsの改行やcursor移動に使える.

気になった人はDownloadしてみよう

emacsが気になった人は本題の設定に移りましょう!
そもそもMacにはemacsが入っています.

% emacs --version

どうですか?バージョン22らへんが表示されたと思います.
バージョンは現在24らへんが最新ですので,そこら辺までバージョンUPしていきましょう.
emacs For Mac OS X 僕はいつもここからとってます.
ここからDownloadしてください.そしたら実行してApplicationフォルダにドロップしてください! これで基本的なインストールは完了しました!
ApplicationフォルダーのEmacs.appをクリックすれば実行されます.

CUIから使う

コマンドで

% emacs hoge.txt

emacsから起動できます!
・・・と?思いきや?デフォルトで入ってたemacsが起動されてしまいます.
なのでzshなら.zshrcに,bashなら.bash_profile(だっけ?)にaliasで新しいバージョンの方をよんであげます.

% cd ~
% emacs .zshrc
---ここから編集---
alias E="TERM=xterm-256color /Applications/Emacs.app/Contents/MacOS/Emacs -nw"
alias emacs="TERM=xterm-256color /Applications/Emacs.app/Contents/MacOS/bin/emacsclient -nw"
alias ekill="emacsclient -e '(kill-emacs)'"
(Control-x C-sで保存してC-x C-cで終了)
----------------
% source .zshrc
% emacs --version

これでバージョンが変わっていることを確認してください.
ちなみにaliasするコマンドは各自自由にしてください.

pruneは

% E --daemon

emacsをデーモン化してます.理由はinit.el書いてたら遅くなってきたからです. デーモンは23以降から標準でサポートされたものです.
そして普通に

% emacs hoge.txt

ってやった時はデーモン化してあるemacsを呼び出すようにしてます. emacsclientはそのためのコマンドです.
これもちゃんとaliasしないとエラーがでて起動しません(それで数日感考えてました).
最後のaliasはデーモン化したサーバーを殺すコマンドです.
これでなにか怒られたらemacsを起動して,
M-x server-force-dalete
で同様に起動してるサーバーを削除できます.
同様にemacsからdaemon化するには
M-x server-start
で起動できます.
(Mはメタキーです通常はescを一回おすだけでOKです.このホームポジションがくずれるのが嫌であればターミナルを起動して[ツールバーのターミナル]→[環境設定]→[キーボードタブ]→[メタキーとしてoptionキーを使用]にチェックを入れたらOKです.optionキーは押しながら使いますが,escキーは一回押して話せばMとして認識されます.ここに違いがありますのでご注意ください)

その他

daemonしたemacsを起動して終了するときは
C-x # なので間違えないようにしてください.
C-x C-cで終了するとemacs自体が終了してしまうそうです.(pruneはまだ確認してません)

最後に

今後はemacsの設定についてかけたらなーと思います.
よいemacs Lifeを!
pruneでした