雑文発散

«前の日記(2014-09-02) 最新 次の日記(2014-09-04)» 編集
過去の日記

2014-09-03 [長年日記]

[Emacs] php-completion を Cask でインストールする

昨日の続き。

オレが魔改造(?)している php-completion も Cask でインストールしてみる。

php-completion は PHP の関数名を Emacs Lisp 内部にリストとして持っていたんだけど、こういうの外部ファイルにあった方が良いんじゃないのかなぁと思って(本当にそれが良いのかは分からないのだが)外へ出してしまった。

それから PHPUnit の assert 系メソッド名も新規に外部ファイルを作成して、php-completion の初回起動時に読み込むようにしている。

ただ、この結果「Emacs Lisp ファイル1つをインストールすれば OK」という状態から離れてしまって、M-x auto-install-from-url などが使えなくなってしまった。

Cask の場合は下記の内容が定義できるので、そいつを使えば外部ファイルも一緒にインストールできそうだった。

  • Git リポジトリの指定
  • 特定のブランチなどの指定
  • インストール対象のファイルの指定

結局、このように書いてみている。

;; php-completion
(depends-on "php-completion"
        :git "https://github.com/suzuki/php-completion.git"
        :branch "develop"
        :files ("*.el" "phpcmp-index-of-*"))

分かりやすい記述方法なので、見てすぐ理解できると思うけど、これで develop ブランチの *.el ファイルと phpcmp-index-of-* ファイルがインストールできている。

ただ、cask update を実行すると、毎回この表示が出てしまう。

% cask update
Making version-control local to php-completion-autoloads.el while let-bound!
Wrote /Users/suzuki/.emacs.d/.cask/24.4.50.1/elpa/php-completion-20140728.859/php-completion-autoloads.el

街頭のディレクトリに php-completion-autoloads.el が存在している場合でも、再度ファイルが作成されるようなのだけど、これが正常動作なのか、何かが足りないのかが把握できていない。