Image may be NSFW.
Clik here to view.
こんにちは、okutani(@okutani_t)です。本記事ではEmacsのパッケージを便利に管理できる『Cask』の使い方について説明しています。
今までパッケージの導入には『EmacsWiki』 や『URL指定』『package.el』など使っていたかと思いますが、Caskを利用することで「利用したいパッケージを設定ファイルにそれぞれ記述して、コマンドひとつで導入」といったことができるようになります。
よくある使い方では、GitHubといったクラウドサービスにCaskの設定ファイルを置いておき、Emacs環境をポータブルにするといったことができます。というより、僕がこれをやりたかったのでこの記事を書きました。
なお、Macのパッケージ管理ツールHomebrew Caskとは全くの別物なので、混同しないようにしましょう。
というわけで、さっそくCaskを使ってEmacsのパッケージを管理&インストールを実行までを試してみましょう。
スポンサーリンク
Caskのインストール
Caskのインストールはターミナルからおこないます。次のコマンドを実行。
$ curl -fsSL https://raw.githubusercontent.com/cask/cask/master/go | python
Macユーザーの方はHomebrewを使った方法でもokです。私はこちらで導入しました。
$ brew install cask
Caskを導入すると、次の場所にcask.elが配置されます。
- curlでの導入
- Homebrewでの導入
「~/.cask/cask.el」
「/usr/local/opt/cask/cask.el」
Caskファイルの初期化
次のコマンドでCaskファイルの初期化をおこないます。
;; Caskのアップグレード $ cask upgrade $ cd ~/.emacs.d ;; Caskファイルの初期化 $ cask init
これで「~/.emacs.d/Cask」が生成されます。このCaskファイルにパッケージを記述していきます。
ちなみに、次のようにCaskファイルにはデフォルトでいくつかパッケージが記述してあります。
Image may be NSFW.
Clik here to view.
これらは下記のサイトで解説していました。参考にしてください。
参考Cask init して入ってくるライブラリ一覧 – 亀岡的プログラマ日記
Caskファイルにパッケージなどを記述
「~/.emacs.d/Cask」に、次のように記述していきます。
;; パッケージリポジトリの指定 (source gnu) (source melpa) (source marmalade) ;; インストールしたいパッケージを記述 (depends-on "anzu") (depends-on "expand-region") (depends-on "highlight-symbol") (depends-on "multiple-cursors") ;; バージョン指定も可能 (depends-on "magit" "0.8.1") ;; 直接リポジトリの場所を指定可能 ;; (depends-on "magit" :git "https://github.com/magit/magit.git") ...省略...
「source リポジトリ名」と記述すると、Caskでインストールできるパッケージのリポジトリを追加することができます。
「depends-on “パッケージ名”」とすると、記述したパッケージ名が、次で紹介するコマンドで順番にインストールされます。
Caskを使ったインストールの実行
Caskの設定が完了したので、実際にCaskを使ってパッケージをインストールしてみましょう。下記コマンドを実行。
$ cd ~/.emacs.d ;; インストール実行 $ cask install
これだけで、Caskファイルに記述したパッケージがすべてインストールされます。
パッケージは下記の場所にインストールされます。確認してみてください。
~/.emacs.d/.cask/emacs-version/
Cask設定ファイルをinit.elで読み込む
「~/.emacs.d/init.el」の先頭あたりに下記のコードを記述します。
;; Macの場合 (require 'cask) ;; Linuxの場合 ;; (require 'cask "~/.cask/cask.el") (cask-initialize)
これで、Caskでインストールしたパッケージを読み込んでくれます。
また、LinuxとMacとではrequireの指定のしかたが、上記のように変わるので注意してください(参考brew install caskした場合のcask.elの場所 – Qiita)。
あとは、気が付いたときに次のコマンドでCaskをアップデートしてあげると良いです。
$ ~/.emacs.d $ cask update
参考になったサイト
下記のサイトが参考になりました。入れたいパッケージも人それぞれだと思うので、下記のサイトを一通り見ておくと良いかと思います。
参考[Emacs] 俺がCaskで入れたパッケージを1つ1つ解説していく – Qiita
参考package.elから Caskに切り替えました – syohex’s diary
参考amacou’s blog — Emacsのelの管理をcaskで行うことにした。
一応、僕のCask設定をGitHubで晒してあります。emacsはまだまだ使いこなせてないので参考になるかは分かりませんが|壁|・ω・`) チラッ
参考dotfiles/Cask at master · okutani-t/dotfiles
Caskを使ったパッケージインストール方法については以上です。まだ使っていない方はこの機会に使ってみてください。