読者です 読者をやめる 読者になる 読者になる

FutureInsight.info

AI、ビッグデータ、ライフサイエンス、テクノロジービッグプレイヤーの動向、これからの働き方などの「未来」に注目して考察するブログです。

Google App Engine + Pythonプログラミング環境としてPeggy

Peggyというプログラミング用エディタをご存知でしょうか?

僕も@asheltwに教えてもらうまで知らなかったのですが、これがなかなかいいエディタです。
今までPythonのソースコードを書くときは、Eclipse + PyDevでやっていたのですが、これがいつまでたっても手になじみません。理由はいくつかあるのですが、ざっと上げてみると、

  • 起動がそもそも遅い
  • 変数の補完がかなり適当
  • シンタックスエラーの表示が明示的じゃない
  • インクリメンタルサーチの仕方が未だにわからない

など、まぁ、僕があまりEclipseの仕様が好きじゃないことが主な原因なのですが、最近Google App Engineで本格的にプログラミングを再開しており、このまま我慢してEclipseを使い続けるよりも自分の手になじむ開発環境を作ろうと思い、Pythonの開発環境をPeggyに切り替えました。Peggyは2500円ほどするシェアウェアなのですが、最初の1ヶ月は無料でお試しできるので、1ヶ月使ってみて、気に入った人はPeggyに開発環境をスイッチすればいいと思います。
以下は僕のPythonプログラミング環境としてPeggyの紹介です。

Python2.5キーワードファイルの作成

現状、Peggy用に公開されているPython用キーワードファイルはPython2.4のものです。Google App EngineはPython2.5環境なので、いまのままだとwithなどがキーワードにふくまれていません。このキーワードファイルをまずはアップデートしました。以下がPython2.5用に作成したキーワードファイルです。

こいつをC:\Program Files\Anchor\shareにコピーすればキーワードのPython2.5対応は完了です。

@asheltw作成の狂ったように便利なスクリプト群

素のままでもかなり便利なPeggyですが、@asheltw作成のスクリプト群をインストールすることでさらに便利になります。僕は、以下のページにあるmenucomplete.msとmdi-split.msをインストールしました。インストールはインストールしたファイルをC:\Program Files\Anchor\share\scriptにコピーするだけです。

menucomplete.msは変数名、関数名の補完を行ってくれるスクリプトです。VisualStudioでいうところインテリセンス機能を提供してくれます。以下のやり方に従い、Ctrl+Spaceにこの機能を割り当てています。

mdi-split.msは画面を綺麗に2分割してくれるスクリプトです。どうしてこの機能が標準じゃないのか謎なのですが、こいつをCtrl+2に割り当てています。他にもいろいろ便利なスクリプトがあるので、ぜひお試しください。

Pythonの構文チェックツール

次に、Pythonの構文チェック機能が必要です。Pythonを書いていて、実行して初めてシンタックスエラーが発生することほどバカらしいことはありません。Peggyにはそのような機能はないので、こちらも@asheltwに作ってもらいました。
まず、僕が以下のPythonチェック解析ツールを作成しました。といっても、pyflakesという構文チェックツールをpy2exeでexe化しただけです。

こいつをPathの通っているところにおきます。普通はPythonをインストールしてあるところにはPathを通すと思うんで、python.exeがあるところに一緒においておけばいいのではないのでしょうか?
このあと、@asheltwにPeggyに上記プログラムを呼び出し、構文チェックを行ってくれるスクリプトを作成してもらいました。以下のスクリプトをC:\Program Files\Anchor\share\scriptにコピーします。

このスクリプトを利用することで構文エラーが発生している部分をアウトプットに出力し、該当行にジャンプすることが可能になります。あと、この構文チェックツールは利用していない変数、インポートなどもチェックしてくれるので、Google App Engineのような使った分の金を取られる環境ではなかなか便利です。僕は、この機能はCtrl+1に割り当てています。

環境設定後のPeggy

ここまでで、Python2.5キーワード、変数名&関数名補完、構文チェックの3つの機能が揃いました。以下が僕の開発環境画面です。

下の方のウィンドウにpyflkesの構文チェックの結果が出力されているのがわかるかと思います。Peggyはテストの実行なども左のファイルウィンドウから実行できので非常に便利です。現状、Eclipse+PyDevの環境よりもかなり便利にプログラミングできています。
もし、Pythonでまだしっくりくるプログラミング環境を構築できていない人は是非Peggyをお試しいただきたいと思います。