Diary?

2007-09-18
Tue

(02:09)

あんまりにも寝付けないのでちょっと起きてメールチェックをしてみたところ、以下のようなバグレポートが。

(1) 新規ファイルをパネルから開く -> Ctrl - s で .py ファイル名を指定したとき(2) リネーム後ときどき(適当ですみません。動いたときと、動かないときがありました)

の場合にインデントが反映されませんでした

でまあちょっと調べて見たところ、 Changer.py に衝撃的なコードが!

self.__siginal_id_1 = self.__editor.connect('rename-document', self.__renamed_cb)

ちょっと待てェェェェェェェェ、なんだその 'rename-document' はぁぁぁぁぁぁぁ!? 'renamed-document' だろうがぁぁぁぁ! コールバック関数の方は renamed になってるのがどうしようもなさに拍車をかけてる。

つーわけで、要するにファイルの保存とリネームのタイミング問題でエラーになってるだけだ。ざっと調べて見たところ

  1. プログラム内部でファイル名の変更がされる (rename-document が emit されて処理開始)
  2. ファイルの保存処理が呼び出される (save-file が emit されて処理開始)
  3. ファイル保存処理中 (saving-file が emit されて多分ステータスバーあたりにメッセージが出てる)
  4. ファイル保存処理後、ファイル名変更後とファイル保存後のコールバックが呼び出される (renamed-document, saved-document の順に emit)

なので、 'rename-document' をフックしてしまうとタイミング次第ではうまく行かないこともあり、また (1) のケースは多分だけどコマンドラインから起動した場合とパネルから新規作成した場合とでは処理が違っていて、それでうまく行ってなかったんじゃないかなあ。

というわけで、ちょっとばっかし緊急気味のリリース。

ざっとしかテストしてないというか、そもそも俺は普段ステータスバーとパネルを隠して使ってるんでこの辺に罠が潜んでいそう。

(21:53)

とりあえず配布用のページを作った。一応英語版のページも作ったけど、ぶっちゃけ俺は英作文はすげえ苦手だ。というか、声に出して読んでみて違和感が無かったら GO! というなかなかふざけたやり方で書いてるからなあ (基本の五文型? 知るかよそんなの)。でもまあ、何もしないよりはブロークンイングリッシュでもいいから何かしら書いておいた方がちったぁマシってもんだろう。どっちにしろ、まだ完全なマニュアルじゃないんだけど。

それにしても、もうちっときちんと英語を勉強しとけば良かったな。

Creative Commons
この怪文書はクリエイティブ・コモンズ・ライセンスの元でライセンスされています。引用した文章など Kuwata Chikara に著作権のないものについては、それらの著作権保持者に帰属します。