Wassr.vim: Update to 0.2.1
posted by jun-g at 日, 20 7月 2008 02:35 JST
色々立て込んでいて間が開いてしまいましたが、少し機能を追加したので0.2.1としてリリースします。ダウンロードはこちらからどうぞ。→ wassr.vim-0.2.1
以下変更点。
- バッファ上に表示された発言に対して返信する :WassrReply を追加。
- バッファ上に表示された発言に対して「イイネ!」を付ける :WassrFavAdd を追加。
- バッファ上に表示された発言に対して「イイネ!」を外す :WassrFavDel を追加。
- 「@id」を含まない返信の場合、返信先の「@id」を発言の末尾に付与するようにした。
今回追加した :WassrReply と :WassrFavAdd と :WassrFavDel は、バッファ上に表示されたタイムラインのカーソルがある行の発言に対する操作となります。
以下、全然減らないTODO。
- タイムラインの自動読込
- 新着メッセージのハイライト
- TODOの追加・更新・削除
- その他のAPIが扱えるように
- IM風の操作機能
現在、法事の為に高知(妻の実家)に帰省中。AirH"だと自宅サーバにログインしての作業が辛いです。
PythonでAMF
posted by jun-g at 月, 14 7月 2008 01:39 JST
PYthonでAMFを扱うためのライブラリにPyAMFというのがありまして、こいつにはDjangoやGAE、WSGI上で動作させる為のゲートウェイモジュールが含まれていて、サイトに掲載されているサンプルもそれらを利用したものになっているのですが、そもそもそういったフレームワークが使えない、WSGI準拠でもない既存の環境で使用するにはどうすれば良いのか今ひとつわからなかったので、ちょろっと調べて、サイトにあるHelloWorldを動作させる為のシンプルなCGIを書いてみました。
#!/usr/bin/env python
# coding: utf-8
import sys
import pyamf
import pyamf.remoting.gateway
def echo(value):
return value
services = {"echo": echo}
base_gateway = pyamf.remoting.gateway.BaseGateway(services)
context = pyamf.get_context(pyamf.AMF0)
pyamf_request = pyamf.remoting.decode(sys.stdin.read(), context)
pyamf_response = pyamf.remoting.Envelope(pyamf_request.amfVersion,
pyamf_request.clientType)
for name, message in pyamf_request:
pyamf_response[name] = base_gateway.getProcessor(message)(message)
print "Content-type: %s\n" % pyamf.remoting.CONTENT_TYPE
print pyamf.remoting.encode(pyamf_response, context).getvalue()
とまあ、こんな感じで、リクエストデータをPythonオブジェクトに変換、処理結果をAMFに変換してレスポンス、とすれば良いみたいです。何者にも依存しない最小の処理が分かれば既存の環境への組み込み方も考え易くなりますね。
ちなみに、Flexを全然触っていないので、AMF3で新たに扱えるようになったオブジェクトがそれぞれどういったものなのか、さっぱりわかっていません…。まずい…。
あと、FreeBSD portsにPyAMFが存在しなかったので、作ってsend-prしておきました。ports/125573です。
そんなこんなで、今日もわさびむの更新は無しです。という言い訳を書きたかっただけなのでした。
今日はアップデート無し
posted by jun-g at 日, 13 7月 2008 03:42 JST
抜本的にコードを書き直しているので、今日はwassr.vimの更新は無し。
ちなみに、自宅ではwassr.vimではなくぴじつたを使ってます。