EmacsからPowアプリを管理するための拡張emacs-powのご紹介

Railsアプリの開発にPowが便利なわけですが、EmacsでPowにRackアプリを登録したり管理したりするための拡張がなかったので作りました。powderAnvilのEmacs版みたいなやつです。Emacs 24 以上に対応しています。

yukihr/emacs-pow

基本的な使い方

以下のコマンドはアプリのファイルや、ディレクトリのDiredバッファなどにいる状態で実行してください

RackアプリをPowに登録する

M-x pow-register-current-app

Powアプリをブラウザで開く

M-x pow-open-current-app

Powアプリを再起動する

M-x pow-restart-current-app

Powのログを確認する

M-x pow-tail-current-log

Powアプリのリストを表示する

M-x list-pow-apps

このコマンドはどんなバッファにいてもつかえます。リストのバッファで使えるコマンドはこちら

他の拡張と組み合わせる

Rails開発に使うのであれば、普段使いのRails開発用拡張と組み合わせて使うのがお勧めです。例えば、僕はprojectile-rails参照)と一緒に使っているので、次のように設定しています。

(require 'pow)
(define-key projectile-rails-mode-map (kbd "C-c ; w") 'pow-restart-current-app)
(define-key projectile-rails-mode-map (kbd "C-c ; o") 'pow-open-current-app)
(define-key projectile-rails-mode-map (kbd "C-c ; g l") 'pow-tail-current-log)
(define-key projectile-rails-mode-map (kbd "C-c ; g L") 'pow-tail-current-app-log)

インストール

これを使おうとする人であれば事後とは思いますが、事前にPowをインストールしておいてください(後々、インストールしてないようなら自動でインストールされるようにしたい)。

Melpaから

まだMelpaの設定をしてないなら次の設定を設定ファイルに加えて、

(require 'package)
(add-to-list 'package-archives
             '("melpa" . "http://melpa.milkbox.net/packages/") t)
(package-initialize)

Emacsの再起動(または上の式の評価)ができたら、M-x list-packageして、powをインストールしてください。

起動時に自動インストールするには、さらに次を設定に加えてください。

(unless (package-installed-p 'pow)
  (package-install 'pow))

というわけで

バグ報告や機能の追加リクエストがあればぜひGithubのissueにおねがいします!