Mac OS X YosemiteにGNU Emacsをインストール
前回の記事でHomebrewを導入 しましたが、その続きでGNU Emacsをインストールします。
Emacsのインストール
検索するとhomebrew版とhomebrew-cask版の両方がヒットしますが、
% brew search emacs emacs #=> homebrew版 Caskroom/cask/emacs #=> homebrew-cask版
homebrew-caskの方はCLIがない上にCocoaアプリ(Emacs.app)も表示崩れが起きて 使いものにならなかったので、homebrewの方をインストールします。
% brew install --cocoa emacs
install時に--cocoa
オプションを付けることで、
Cocoaアプリ(Emacs.app)も合わせてビルドされます。
Emacsを起動
早速起動してみます。
CLIの起動
ターミナルアプリで以下のコマンドを入力します。
% /usr/local/bin/emacs"
さらに~/.zshrc
等で以下のようにエイリアスを定義しておくと表示色も増えてよいかも。
alias emacs="TERM=xterm-256color /usr/local/bin/emacs"
Cocoaアプリの起動
Finderで/usr/local/Cellar/emacs/<version>/Emacs.app
を探してクリック。
または、以下のようにシンボリックリンクを作成すると、Launchpadから起動可能に。
% cd ~/Applications % ln -s /usr/local/Cellar/emacs/<version>/Emacs.app Emacs.app
または、CLI版と同様にaliasを付けるとターミナルアプリからも起動できてよいと思います。
emacs.app='open /usr/local/Cellar/emacs/<version>/Emacs.app'
基本的な設定
設定ファイル~/.emacs.d/init.el
の基本的な設定だけを上げてみます。
日本語環境
UTF-8で統一。他のアプリとのコピペも楽です。
(set-language-environment "Japanese") (set-default-coding-systems 'utf-8) (set-terminal-coding-system 'utf-8) (set-keyboard-coding-system 'utf-8) (set-buffer-file-coding-system 'utf-8)
キーバインド
以下の設定で¥キーでバックスラッシュが入力できるようになります。
(global-set-key [?\] [?\\]) ;; \の代わりに\を入力
フォント設定 (Cocoaアプリの場合)
(if window-system (progn ;; フォント ;; (pp (font-family-list)) でfont-familyの出力可能 (set-face-attribute 'default nil :height 120 :family "Menlo" ) (set-fontset-font nil 'japanese-jisx0208 (font-spec :family "Noto Sans Japanese"))
またinit.el
を開いた状態でM-x eval buffer
と実行すると、
再起動しなくても即座にinit.el
の内容が反映されて便利です。
OptionキーをMetaキーにする
個人的にはターミナルアプリ内(iTerm2+GNU Screen)のCLI起動でEmacsを使う事がほとんどなのですが、 OptionキーやCommandキーがMetaキーに割り当てられておらず不便なことがあります。
その場合は以下のように設定すると良いです。
iTerm2の場合
[iTerm]→[Preferences]から[Keys]タブを開き
Left option key act as:
のチェックを変更する。
ターミナルの場合
[環境設定]→[プロファイル]→[キーボード]を開き 「メタキーとしてoptionキーを使用」にチェックを入れる。
Caskによるelispパッケージの追加
elispパッケージをスマートに管理するためにcaskを導入します。 名前が紛らわしいですが、homebrew-caskとはまったく別モノです。
Caskのインストール
% brew install cask
Caskファイルの作成
~/.emacs.d
直下にCask
という名前のファイルを作成し、
取得するelispパッケージリストを列挙していきます。
% cd ~/.emacs.d % emacs -nw Cask
このファイルにはパッケージの取得元source
と
取得するパッケージ名depends-on
を単純に列挙します。
gnuやmelpaのような有名どころに所望のelispがない場合は、 以下のようにGitHubのURLを直接指定することもできて便利です。
;;;; source (source gnu) (source melpa) ;;;; packages ;;; helm (depends-on "helm") (depends-on "helm-ack") (depends-on "helm-c-moccur") (depends-on "helm-gtags") (depends-on "helm-etags-plus" :git "https://github.com/jixiuf/helm-etags-plus.git") ;;; auto complete mode (depends-on "auto-complete") ;;; yasnippet (depends-on "yasnippet") ;;; ...
elispのインストール
% cask install
~/.emacs.d/.cask/<emacs version>/
というディレクトリに
elispの自動取得およびbyte-compileまで実行されます。
追加でパッケージをインストールしたい時は
Caskファイルを更新しcask install
を再実行すればよいです。
インストール済みのパッケージを更新したい場合はcask update
でOK。
elispのロードパス設定
~/.emacs.d/init.el
に以下を追記するだけで、自動的に各種elispがロードパスに追加されます。
(when (require 'cask nil t) (cask-initialize))
また別の機会に具体的なelispパッケージを導入について書こうかなと思います。
最後に
手前味噌ながらGitHubに設定ファイルを置いています。良かったら参考にしてみてください。