木曜日, 11月 25, 2010

Cocoa Emacs で Python 開発環境を再び整えた

やったことをすぐに記録しないと後で絶対忘れるので、仕事中でも書く!

基本的に以前と同様にこちらで書かれていることをそのままなぞっただけなのですが、結構忘れることがありました。特に pymacs の使い方。こちら(その他に 1, 2)に書かれているようにropemacsも試してみましたが、こちらに書かれているようにやはりうまくいきませんでした。 まずは、setup.py と easy_install が通るようにします。

$ sudo port install py26-distribute
$ sudo port install py26-pip

次に python-mode.el をインストール。ここからダウンロードして load-path の通った何処か(ヲイラは ~/.emacs.d/lisp)に置きます。.emacs.d/init.el には以下のように記載します。

(require 'python-mode)
(setq auto-mode-alist (cons '("\\.py$" . python-mode) auto-mode-alist))
(setq interpreter-mode-alist (cons '("python" . python-mode)
       interpreter-mode-alist))
(autoload 'python-mode "python-mode" "Python editing mode." t)

AutoComplete はこちらにあるまま行いました。emacs から M-x load-file で etc/install.el を読み込み、インストール先(ヲイラは ~/.emacs.d/lisp)を指定するだけです。.emacs.d/init.el へは以下のように記載致しました。

;;
;=======================================================================
; auto complete
;=======================================================================

(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/lisp//ac-dict")
(ac-config-default)

(setq ac-use-menu-map t)
;; デフォルトで設定済み
(define-key ac-menu-map "\C-n" 'ac-next)
(define-key ac-menu-map "\C-p" 'ac-previous)
(global-auto-complete-mode t)

そして pymacs です。こちらからインストールするためのファイルをダウンロードしようとしましたが、何故かアクセスできません。仕方がないので、GitHubから複製しました。pymacs 用のスクリプトは PYTHONPATH の通った所(ヲイラは ~/.emacs.d/pymacs)にコピーします。

$ git clone https://github.com/pinard/Pymacs.git
$ cd Pymacs
$ make
$ cp pymacs.el ~/.emacs.d/lisp/
$ cp -r Pymacs ~/.emacs.d/pymacs

最後に pysmell ですが、これはこちらのままです。pysmell.el やスクリプトは見つからなかったので、こちらの zip ファイルから取得しました(初めからこれでインストールすれば良かったかも)。

$ sudo easy_install pysmell
$ curl -O http://pypi.python.org/packages/source/p/pysmell/pysmell-0.7.3.zip
$ unzip pysmell-0.7.3.zip
$ cp pysmell.el ~/.emacs.d/lisp
$ cp -r pysmell ~/.emacs.d/pymacs
今回のPYSMELLTAGSの作成はこんな感じで。
pysmell /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/ /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/numpy /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scipy /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/matplotlib -x site-packages test -o ~/PYSMELLTAGS.stdlib

.emacs.d/init.el への記載内容はこちらをだいたいそのまま。これでどうにか動くようになったようです。

0 件のコメント: