Monthly Archives: 9月 2013

ガス、電力、太陽光の熱量について考えてみた

家のガス料金が気になったので調べてみた。
うちのガスは LPG です。集合住宅で東邦北海道という会社が管理しています。料金メニューはあるんだろうけど、普段投函される請求書などからは不明。Web からも出てきません。電話したら教えてくれるのかな?
こんな不透明な LPG 物件を選んでしまったのを悔やんでももう遅いので、とりあえず湯を沸かすなら何がお得なのかを計算してみました。

Continue reading ガス、電力、太陽光の熱量について考えてみた

いまさらXSLT

ちょっと仕事で XSLT を使おうか悩んでいた。

“XSLTProcessor::transformToUri — URI に変換する”

PHP: XSLTProcessor::transformToUri – Manual
ToUri ってなっているので URI に書き出すってことで「?」ってなってたけど、ローカルのファイルシステムは file:/// ってことね。了解。
というわけで、後は XSLT を作れば XML が好きな形式に変換できるぜ、って思ったら、元の XML の形式がクソで挫折。子ノードに値を持っているノードの子ノードが始まる前までの値を取り出すのが不可能っぽいから。
<parent>ここ<child>ここはいらない</child>ここもいらない</parent>
まー、古くからあるシステムだから仕方がないのかねー。
仕方がないので、その仕事は SimpleXML で解析してちまちま代入する方式にしておいた。
そんなわけで、今回は XSLT を使うことはなかったのだが、ちょっと調べて、なんか楽しかったので、別の機会に使ってみたいと思った。とはいえ、今後 XML を扱う仕事が来るのか・・・。ちょっと古い感じがするよね。

mod_sedを試してみた

さて、自分は vim 派です。って宣言したら Emacs な人たちがいい顔しないかもしれません。
というのは置いといて、vim の先祖なのか親戚なのか分からないが、同じ ed というエディタを先祖に持つ sed が Apache のモジュールとして取り込まれた。
mod_sed – Apache HTTP Server
これは vim 派としては放っておけない。
Gentoo があれば USE フラグを調整すれば一発なのだが、今は手元にない。ので CentOS の 5 系にソースからインストール。しかし apr と apr-util がない。yum で入れてもバージョンが合わない。こいつらもソースからインストール。間違って apr-iconv も入れちゃって変な感じになる。
とまぁ色々あって、やっとインストール完了。今回は単なる検証なので –prefix=$HOME、一般ユーザで立ち上げる。mod_sed を試したいので –enable-sed も指定。後はソースから入れた apr と apr-util を指定して完了。あ、あと設定ファイルでポートを変えるのが面倒だったので –with-port も指定。
デフォルトでは mod_sed が無効になっているため設定ファイルで有効化。起動。うむ。起動している。しかし、これでは mod_sed の検証にはならない。とあるディレクトリに以下のような設定を入れる。
AddOutputFilter SED .html
OutputSed "s/bad/good/g"

うむ、bad が good になった。なんかハッピー。
はて、なんで mod_sed がハッピーかと言うと、sed があれば、テキストをかなり自由に編集して出力することができるからなんです。前からあった mod_substitute のような正規表現での変換だけではないのです。例えば、このサイトで紹介されているような、テキストの行を逆順にして出力することも可能になります。
共通テーマ: 実例でわかる sed 第 3 回
逆順にしたら HTML が崩れるじゃんって?違います。CSV 形式で追記したデータを上が最新になるようにして、さらに HTML 形式に変換して出力することが可能なのです。
まー、そんなん Perl とか PHP でやればいいじゃん、なんて声が聞こえてきそうですが、メモリ消費がかなり少ないってメリットを主張して終わりにしておきます。