トップ «前の日(02-27) 最新 次の日(02-29)» 追記

2004-02-28

_ FreeBSD 5.2.1 はもうちょい待ちで

まだやっぱ微妙ですね。FreeBSD は見事に stable 待ちだなぁ。current は職場で余っている機械に入れて楽しんでみるか。時間があれば。

Tags: Unix

2006-02-28

_ 春を感じるきっかけ

車が汚い

車の汚さが目につくほど日が差すようになり、同時に地面や空からの水攻撃が減り、乾いた跡が目立つようになってきている証拠。

洗車してないのかって? 北陸の人間が冬の間に洗車なんかするわけないでしょ。そんな無駄なこと。

Tags: 日々

_ PukiWiki のパーサだけ取り出せないか

PukiWiki/1.4.6読み込み - PC説教講座

ちゅーことで読み始めてみた。まだ目と grep だけで追ってるので漏れてる可能性おおいにあり。今のところパーサの動作とリンクの生成とページの生成がうまく切り離せていないので必要なファイルがやたら多そうに見えるけど、切り離せればもう少し減らせると思う。

最終的にはパーサの動作だけを取り出して markdown みたいに独立したライブラリとして利用できる形を目指したいんだけど、どこまでできるかな。今思っているのは

  1. PukiWiki のパーサだけでテストが書けるようにしたい
  2. PukiWiki のパーサを自作のツールで利用したい
  3. markdown など著名なテキスト整形ライブラリと同じ API を用意する
  4. 本当に独立したライブラリにできたらどっかプロジェクトとして登録して自分以外の誰かに管理してもらいたい
    • 先に登録するって手もあるけど、成果が出るかどうか分からないのでまだ保留
  5. PukiWiki のパーサを他の Wiki や blog ツールなんかで利用したい

4 から先までの道のりはちょっとヘビーだなと思っている。(その前にたぶん 2 まで行く辺りで一度飽きるだろう:-)何しろ汎用のツールとするにはあまりに global な名前空間を汚してしまっているからだ。(一応あまりに多くの変数に分かれていたのを、ハッシュにして数を減らす方向でバージョンは上がっているんだけど。)

あと、5 を本気で自分でも思っているのかというと実は疑問。*1たぶん 2 を実現したらあとは放り投げて他の人が適当にいじって管理してくれたら嬉しいなくらいにひどいことを考えている気がする。

ていうかスタート段階で「自分よりやる気のある人がいたらおれは喜んでお手伝いに回るよ」とマジで考えているので、どこまでできるかはまったくの未知数です。

*1 ただ、切り離しておくと GPL 汚染を回避したいプロダクトは作りやすくなるよなとは思っている。基本的に pukiwiki のパーサは同梱せずにモックのパーサをつけておけばいいんだから。


2007-02-28

_ ansi8 + M-x customize で emacs22 への準備

やっと M-x customize で色の設定の仕方が分かった。つかまぁ今まで例によって放置だったんだけど。

M-x customize で Faces → Font Lock → Font Lock Highlighting Faces にある。ちゃんとメニューを探して設定していけば .emacs に値が保存されるので安心。よしよし。ちょっと設定がいっぱいあるとめげるけど、まぁ見たままだし、基本的にすぐに反映されるし。

あと起動時のオプションで --color=ansi8 にすると ANSI の 8色だけで使える。つまり、

Emacs 22 を Terminal.app でも安心して使える

わけ。なんか 256 色にしたい人が世の中には意外といるみたいだけど、おらぁそんなものには興味ねーだ。Unicode と svn への対応がよくなって、起動が速いってだけで十分です。

※ ansi8 のビビッドな色で十分満足できるのは OSX + Terminal + 背景色白っていう組み合わせのせいなのかもしれないけど。putty + 背景色黒のときは見にくかったし。(結局 putty でも黒文字白背景にしてた。*1

Tags: Emacs

*1 Terminal も他のウィンドウと同じ設定の方が目が疲れなくていいと思う。まぁ、自分も SVGA とかの大昔の時代には暗めのブルーを背景にして白文字で使ってたけど、これはこの組み合わせの方が文字が大きく見えて視認性がよく、かつ真っ黒の背景より目が疲れなかったから。今はこんなノウハウ要らないよね。


2009-02-28

_ Ruby の WWW::Mechanize のコツが少し分かってきた

ただし WWW::Mechanize 0.8.x + Hpricot 時代のノウハウ。

  1. オプション一つで取得した HTML とその解析結果のオブジェクトを全ページ保存できるようにしておく
  2. Logger に吐かれる HTTP のログもひとまとめに扱えるようにしておく
  3. 保存された情報を穴が開くほどよく見る
    • ブラウザではうまくいくけど Mechanize ではダメな場合、HTTP のログはかなり重要なヒントを与えてくれる

以上。

特に mechanize の取得した HTML とその解析結果のオブジェクトを自動で保存しておくようにすると、どこの何の解釈に失敗しているのかを究明するのがだいぶ楽になる。単に Hpricot を使ったときなんかもそうなんだけど、とにかく取得した HTML は即座に保存しておいた方がいいと思う。サーバにも優しいしね。

で、実際これを思ってから2週間後にできあがった、楽できるフレームがこれ。

個人的にはこれ超使える。