日曜プログラミング

休日趣味でやってるプログラミング関連記事をダラダラと

el-getインストール

こんにちわ。趣味でやってる休日プログラミングを忘備録的に書いていこうと思ってます。

早速本題、el-get とは。

Emacs のパッケージ管理システムの一つ。24 系だと標準で package.el が付いているんだがこれにはどうやらアップデートと言う概念はなく、バージョン違いのものをどんどん放り込むらしい。それに対して el-get はアップデートの概念があったり git 対応してたりと色々と良さそう。以下の記事で興味を持った。

It's just same as dust ahead of a wind: el-get を使って Emacs でパッケージ管理


そもそも何で Emacs かと言うと、元々 clojure を覚えたくて IDE を色々試してたんだけどどれもイマイチしっくりこなくてじゃ一つ Emacs を使ってみるかと思ったのが始まり。で、Emacs って拡張性はとんでもなく高いのは知ってるんだが、常用せずにサブで使おうとすると設定が面倒でずっと避けてきた。xyzzyclojure-mode があると個人的にはベストなんだけどそれはさておき。

 

記事に起こそうと思ったのはインストール成功するまでに結構苦労したから。

では本題。

 

1.実施Windows環境・対象

Windows7 Home 64bit SP1

Emacsキーバインド表記など多少は知っている

あと未確認だが後述の 2,4,5 は Unix 系 OS 由来のツールの Windows 版になるので、インストールするパスは日本語や空白は含めない方がよさげ。

 

2. Emacsインストール

gnupack Users Guide - ダウンロード から単体のEmacsをDL・インストール。

インストールは単に自己解凍書庫なので、パス指定して展開するだけ。

起動は展開したフォルダの bin\runemacs.exe で起動する。

本家じゃないのは MS-IME のインライン入力ができないから。gnupack にある Emacs だと MS-IME インライン入力対応パッチが入っている。で、gnupack でも Emacs 単体なのは gnupack 独自に設定する config.ini でのローカル環境変数で PATH を引き継ごうとすると ini ファイル/Emacs/cygwin どれ起因かは分からんがサイズ制限らしきもので途中で切れてしまい、後述のインストールに支障が出る為。

 

gnupack の cygwin も使いたい人は config.ini で設定されてる PATH を直接 Windows の環境変数に設定してやれば使えるかもしれないけど未確認。自分は必要ないので単体にした。

 

3. google IME インストール

 Windwos7 + MS-IME + gnupack Emacs だと何故か漢字変換できない。google IME だと可能なのでインストール。MS-IMEがいい!って人はひらがな入力で頑張るか諦めて下さい。

 

4. Windows 版 Git インストール

El-get は Git も使ってるらしいのでGit - Fast Version Control System のトップからダウンロード。対象プラットフォームはサイトにアクセスすると勝手に判断してくれるっぽい。

後述の el-get から呼び出せるよう、インストールフォルダの bin 以下のパスを環境変数PATHに追加しておく。cygwin 版のインストールだと openssh や bash などの依存関係考慮して入れる必要があるが、Windows 版はそれら必要な物が全てインストールフォルダ\bin 以下に入っているっぽい。

 

5. GnuWin 32 TexInfo for Windows インストール

dimitri/el-get - GitHub の説明読むと Windows だとバックエンドで使う install-info は cygwin 版だと上手く動作しないので GnuWin 32 版使ってね、らしき事を書いているので TexInfo for Windows からダウンロード・インストールする。この中に実際に使う install-info.exe が入っている。こちらも PATH を通しておく事。

 

6. el-get インストール

さあ、ようやっと本題。

5 まで仕込めば dimitri/el-get - GitHub に書いてある Install Dependincies に載っている Stable Branch か Master Branch の elisp コードを Emacs 上で実行してしばらく待つだけ。

無事成功すれば"Congrats, el-get is installed and ready to serve!"とメッセージが出るのでそれで完了。

 

雑感

Unix 系由来ツールを Windows で使おうとするとやっぱ苦労する

・あれー、clojure は?と自分でも思ったが、その為の下準備と無理矢理納得