優雅な生活の設計と実装

The Design and Implementation of the Gracious Days


LAST MODIFIED: 2003/06/10 19:58:39 UTC

新しい秩序の確立は、他の何にも増して難しく、
成功する可能性が低く、危険な事業である。
改革者は旧秩序から利益を得ている
全ての者を敵にまわし、
新秩序から利益を受けるはずの者からは
及び腰の支持しか集められない。
--- Niccolo Machiavelli, The Prince

この種の「保護」は初心者を保護するかも知れないが、
熟練ユーザを窮地に追い込むことになる。
というのは、何が親切であり、何が適切でないかかという
オペレーティングシステムの考え方の裏をかくことばかりに
かなりの労力を費やさなければならないからである。
--- A.S.Tannenbaum, Modern Operating Systems


不定期更新の日記です。ディスクスペースの関係上、 あまりに古くなったものは順次消していきます。 この日記の更新は、今野さんの *BSD Diary Links から取得することが可能です。

June 2003

感想はこちらまで (内容は匿名のメールで送られます)

コメント:

注: お返事が必要な場合は直接メールください。 ただし、確実にお返事するかどうかはわかりませんのであしからず。

Wednesday, June 11

* pTeX + JadeTeX (continued)

あはは。 DSSSL の日本語資料は皆無なので、ぜひ読みたいです :-)。 ISO/IEC 10179:1996 の規格書って読みにくくはないんですが、 Grove の概念を知らないと読んでもよくわからんところが多い (というか佐藤はそうだった) のが問題ですな。 Jade の実装も偏っているので、どれが使えてどれが使えないのか調べつつ スタイルシートを書くのは結構大変。

最近の流行りは XML+XSLT なのですが、個人的には XSLT よりも Scheme の方がコーディングしやすくて好きなので、 勉強のために DSSSL で XPath を実装したりしてます。

‥‥で、本題の pTeX + JadeTeX の patch がほぼできました。 FreeBSD の ports にしたものはこちらです。 パッチを全部ひとつにしちゃってたりしているので、 もう少し整頓が必要ですが、動作には問題ないかと思います。

中身については、簡単にですが README.pjadetex というファイルに書いてあります。 英語版と共存させたいので、名前を pjadetex に変えました。 pTeX は 3.1 以降でないとちゃんと動きません。

debian の patch ってこれかしら。 動作を確認できる環境がないのですが、 ざっとみたところでは babel dependancy と T2A エンコーディングの修正が入っていますね。 ただ、これだと明朝体しか出てこないと思います。 こっちの patch ではそのあたりを拡張して、 和文フォントの選択ができるようにしてあります。

Sunday, June 1

* NetBSD Guide (continued)

だめだこりゃ。

作業がぶつかるとムダになるので、「どういう方針でやるつもりなの?」 って何回メール出しても返事ひとつしないし、 patch の URL 送っても、見てる形跡まったくなし。 htdocs/guide 以下は en/ だけ残して全部消すとか、 変更だけは加えられている。全然意図が分からない。

なるべく patch が小さくなるよう構造を変えずに作業していたのだけど、 見てくれってメール書く文句もネタ切れ状態。 作業は進めたいので、どうせ見てくれないならいいやと思って、大幅に書き直し。 FreeBSD ではこのあたり複雑になりすぎて失敗しているので、 その反省をもりこみつつ、がりがり再実装 & マークアップ修正。

単一 HTML, 分割 HTML, PostScript, PDF 版の 4 種類が作成できて、 「xxx(n)」部分が manpage→HTML 変換をするウェブサーバにリンクする機能を追加。 さらに翻訳用のカスタマイズレイヤを確保しつつ、Jade でも xsltproc でもタイプセットできるように書き直した patch を作成。今までの全変更点が入っているので、かなりでかいです。

手元の NetBSD/sparc64 に必要な toolchain を入れて、 半自動で定期的にタイプセット処理をするようにする。 pkgsrc にある Norm's DSSSL stylesheet は 1.57 と悲しくなるほど古いので、1.73 に対応させたものを作成。 tidy も改造しないと英語以外では不具合が出るはず。 今は英語しかタイプセットしていないので、さしあたりそのまま。 ちなみに XSLT を使った場合は HTML しか作れません。 XSL-FO を経由した PDF 版作成ができれば万全なのですが、 佐藤の知る限りフリーの処理系は Java で動くものしかないので保留。

成果物はこのへんに置いてあります。これは Jade でタイプセットしたものです。 上記 patch をあてると xsltproc + Norm's XSL stylesheet でも処理できるようになりますが、いくつかバグを踏んでしまうらしく、 一部リンクが正常に生成されないという症状が出ていました。 原因はほぼわかっているので、しかるべきところに報告するつもりでいます。

‥‥で、結局肝心の grant@ からは無視されっぱなしでコミュニケーションは全然進展していないのだけど、 netbsd-docs@ とか grant@ 宛には「今のままじゃ printable format 作れないけど、どないするねん」と何度もメールしていた手前もあるので、 「とりあえず最新の xml ファイルから printable format 作れるようにしたよ」ってタイプセットしたサンプルを そこに置いてメールしたら、jschauma@ から「リンクしたよ」ってメールが‥‥。

改善するための patch は無視するくせに、 こういう反応だけされると正直ヘコみます。 動くことをアピールするためのサンプルとして一時的に置いたつもりだったのですが、 しょうがないので当面はそこに置いておくことにしました。 どうせドキュメントなんて読めるものがどこかにあれば、 それでいいと思ってるんじゃないかと邪推。

「おれにやらせろ」って叫んでみればってコメントを数人からいただいているのですが、 コミュニケーションがとれない以上叫びようがない感じです。

* JadeTeX + pTeX

今までの問題が完全に解決して、日本語でも 400 ページ超のドキュメントがタイプセットできるようになりました。 ただいまフォントまわりなどを調整して ports にまとめる作業をしてます。

近いうちに FreeBSD ハンドブックその他が、PDF でまともに読めるようになるはず。めでたい。