プラグインなどで、pythonスクリプトを利用する方法。
こちらhttp://vim-users.jp/2010/03/hack132/を参考に
まずはpython2.7をインストールした。
その後、環境変数pathにpythonのインストールディレクトリを指定して、
vimコマンドから
:echo has(‘python’)
を実行して、1が帰って来たら利用出来る。
画面
|
|||||
|
プラグインなどで、pythonスクリプトを利用する方法。 こちらhttp://vim-users.jp/2010/03/hack132/を参考に まずはpython2.7をインストールした。 その後、環境変数pathにpythonのインストールディレクトリを指定して、 vimコマンドから :echo has(‘python’) を実行して、1が帰って来たら利用出来る。 画面 GAEでの開発中に、エラーハンドリングしてExceptでエラーをcatchすることまではできたのだけど、 stacktraceをうまいこと処理する方法が見つからなかったので調べた。以下のようにすると、ログに出力できる。 logging.error(traceback.format_exc(sys.exc_info()[2])) sys.exc_info()[2]で、stacktraceオブジェクトを取得して、 traceback.format_excで文字列にフォーマットしている。 ということが、リファレンスに書いてあった! http://www.python.jp/doc/2.4/lib/module-traceback.html pythonの動的メソッド呼び出しの方法を使って、 python+appengineで、urlを設定するときに、各urlごとにクラスを作成せずに クラスの中のメソッド呼び出しを変更する方法。 class OAuth(webapp.RequestHandler): def get(self , methodname): logging.info(methodname) try: method = getattr(self, methodname) except AttributeError: self.response.set_status(404) return method() def aaa(self): logging.info(“aaa called”) pass pagemapping = [(‘/oauth(.*)’,OAuth ) ] application = webapp.WSGIApplication(pagemapping, debug=True) def main(): run_wsgi_app(application) if __name__ == “__main__”: main() /oauthaaaの時、 aaaのメソッドが呼び出される(pagemappiongのカッコで囲んだ値が、getメソッドの第2引数になる。)。 メソッドが無いときは、404を返す。 ちょっと考えると、プライベートにしときたいから呼び出して欲しくないメソッドが呼ばれちゃうとかあるけど、 そこはまぁ、うまいことやると言うことで。 1.pydevのインストール ヘルプ->新規ソフトウェアのインストールから pydev(http://pydev.org/updates/)を追加して、インストール 2.ウィンドウ->設定から、pydevの設定をする pythonを普通にインストールしていれば、auto configをクリックするだけでok 3.新規プロジェクトの作成で、google appengineプロジェクトを作成する ここで、Browseからappengineのパスを設定する プロジェクトエクスプローラーに作成される 4.実際に動作させる 実行の構成から、動作環境を作成する。 Projectに自分の選択したプロジェクト、MainModuleにappengineフォルダのdev_appserver.pyを設定する。 appengineフォルダは、browseから辿れないので直で打ち込む。 argumentsタブの設定をする 引数に、ダブルクォートでソースのフォルダを囲んで記述する。 実行をクリックすると、コンソールにメッセージが出るので、それを確認して 表示されたアドレスにブラウザからアクセスする。 画面が表示されればOK。 [...] 前提:Pythonは既にダウンロード&インストール済みであること。 http://www.python.org/download/ 1.SDKのダウンロード(http://code.google.com/intl/ja/appengine/downloads.html) 2.ダウンロードしたmsiファイルでインストール 完了。 [...] |
|||||
|
Copyright © 2012 wp.krks.net - All Rights Reserved |
|||||