Halting and Ruminating, like a Kangaroo: 2008/11b


11 / 16 (Sun)

_ 日記

そういえば、日本でWikiのマークアップ方法を統一しよう!って息巻いていた人がいたように記憶しているんだけど、あれってどうなったの?

↑書いてからその嫌味さにげんなりした。

例のcgi wrapperのurlmapperの表記が、試行錯誤の結果web.pyとほぼ同じになってさらにげんなりした。

self.urlmap = (\
    '/index', ('index', ('GET',)),
    '/changes', ('changes', ('GET',)),
    '/(.+?)/diff/(\d+).(\d+)/', ('diff', ('GET',)),
    '/(.+?)/update', ('update', ('POST',)),
    '/(.+?)/edit', ('edit', ('GET',)),
    '/(.+?)/history', ('history', ('GET',)),
    '/(.*)', ('main', ('GET',)),
)

11 / 17 (Mon)

_ 日記

雀へようこそ。 雀は簡単で、コンパクトで普遍的に目的とされたwikiengineです。

彼らは、他の鳥ほどあなたが毎日雀を見ないで、また特に美しくもなくて、またクールでもありません。 同様に、このwikiengineは他のwikiengines、例えば、MoinMoinより大規模ではありません。 しかし、大規模なwikienginesはいつも最も良い選択ではありません、そして、あなたはしたがって、時々、Sparrow(そして、他のコンパクトなwikiengines)が最も良い選択であると思います。

excite翻訳って実は結構進化してる? それとも私の英文が更に退化した?

difflib.HtmlDiffなんてものがあるのを知ってのけぞった。battery included万歳。使わないけど。

11 / 18 (Tue)

_ 日記

んー、例のcgi wrapperでApache 1.3.41, Firefox 3.0.4だと、なぜか新規ページを開く時にBroken Pipeになってるなあ。FirefoxがGETを発行して途中で切断してもっかいGETを投げてる感じ? OperaとかIEだと再現しない。一回目のGETは何かApacheのログに残るlengthがおかしい。なんだこれ。2回目のGETで取得できてるからFirefoxからみたら少しページの表示が遅いくらいなんだけど、うーん。しかも訪問済みリンクをGETする時には発生しない。

エラーはこんな感じ。

Traceback (most recent call last):
  File "wsgiref/handlers.py", line 93, in run
  File "wsgiref/handlers.py", line 134, in finish_response
  File "wsgiref/handlers.py", line 223, in write
IOError: [Errno 32] Broken pipe

んで、handlers.pyの223行目ではself._flushを呼び出してるから、

def _flush(self):
  self.stdout.flush()
  self._flush = self.stdout.flush

でstdoutが閉じられちゃってるよーと。

紆余曲折の後、出力されるHTMLの

<meta http-equiv="content-type" content="text/html; charset=utf-8">

を削ったら症状が軽くなった。そういえばwrapperのほうでもcharset指定してたなあと思いつつ見てみると...

self.headers['content-type'] = 'text/html; charset: %s' % self.charset

んんん???

'text/html; charset: %s'

なぜに:..............orz。

そういえば、そんな中でぐるぐるしてたら、Firefoxにabout:robotsなんてのがあるのをはじめて知った。かなりアホい(褒め言葉)。

11 / 20 (Thu)

_ 日記

昨日の件、結局直ってないじゃん........。んー、HTTPヘッダではcharset付けて、htmlではmeta要素なしで大部分は抑えられるみたいだから、とりあえずそれでいこう。

11 / 22 (Sat)

_ epy.py - implementation of ePython

諸君、私はendが嫌いだ

諸君、私はendが嫌いだ

諸君、私はendが大嫌いだ

発端は簡単なCGIに使えて、勝手にquoteしてくれて、forを回せて、endを書かなくていいテンプレートシステムがなかったから。pyTenjinに付いてたベンチで試してみたら恩を仇で返すような結果になってしまったので、ベンチは公開しない。書いてた初日は天才になった気分だったんだけど、何のことはない。Erubisの人が天才なだけだったりする。

今更感ただよってるけど、まあ自分で使うもんだし。

# 別にRubyでendを書くのには抵抗はない。Pythonなのにendがやだっただけ。


No Unix, No Life.
©2009 H.Miyamoto

Generated by Pygeon