2009年3月19日木曜日

lxmlがpython3に対応してた

lxml 2.2 beta4でpython3に対応したみたい。
lxmlが使っているCythonは去年の11月にリリースされた0.10で対応してたようだ。
Python3自体インストールしていないので試してはいない。

2009年3月14日土曜日

wxPython TreeListCtrl

TreeListCtrlを使うときはFrameでイベントをbindしても受け取れずにTreeListCtrl.GetMainWindowに対してbindするとFrameでイベントを受け取れる。
Linux(Gtk+)だと上からリサイズするとヘッダーが欠ける。

他のウィジェットとはかなり使い方が違う箇所がある上、ドキュメントもサンプルもほとんどない。
そのため動作が不安定な所があるが使い方を間違えているのか、TreeListCtrlのバグか判断することができない。

2009年3月13日金曜日

Amara2

Amaraでは4Suite_XMLを使っていたが、Amara2ではライブラリに依存せずC拡張を使っている。
速度がAmaraで5秒ぐらいかかっていたものがAmara2では1秒ぐらいしかかからなくなっており高速化されており、ElementTreeとほど変わらない速度になっている。
APIが大幅に変わっており、amara.parseはdomパーサに変わっており、Amaraと同じように使うには、amara.bindery.parseを使うように変更する必要がある。
関数名と同じタグがあった場合、Amaraだと_タグ名でアクセスする必要があったがAmara2だとエラーが発生する。
html5libを使えば、amara.bindery.html.parseでhtmlを扱うことも出来る。

2009年3月9日月曜日

Mercurial Bookmarks Extension

headにローカルタグを付ける拡張。ブランチのように利用することができる。
ブランチはchangesetに保存するため作成すると削除することができないが、
bookmarksは".hg/bookmarks"に保存するため"hg bookmark -d"で削除することができる。

>hg bookmark test
>hg bookmarks
* test 0:00465edff3ff
>hg commit
>hg bookmarks
* test 1:cad989aa14e1
>hg update -r0
>hg bookmark test2
>hg bookmarks
test 1:cad989aa14e1
* test2 0:00465edff3ff
>hg commit
create new head
>hg bookmarks
test 1:cad989aa14e1
* test2 2:bd7b9b5e2796
>hg bookmark -d test
>hg bookmarks
* test2 2:bd7b9b5e2796

コミットするとブックマークがheadに移動する。

2009年3月6日金曜日

BitbucketにPatchを登録する

  1. BitbucketでPatchをあてるリポジトリを表示させてpatch queueを選択してリポジトリを作成。
  2. 1で作成したリポジトリをhg qcloneをする。
  3. MQを使ってPatchを作成する。
  4. hg qcommitをする。
  5. patchフォルダ(.hg/patches)に移動してhg pushする。
Patch Queues

mercurialで'0x5c'が含まれるパスに対応させるpatch

Mercurial 1.2がリリースされていたので、'0x5c'が含まれるパスでも動くようにするpatchを作成した。
簡単な確認をして動作を確認したものをbitbacketに置いておきます。

win32mbcs-patch