AsciiDocでRevision History

見ないうちに8.2.5と随分バージョンが上がったみたいだけど、相変わらずrevisionhistoryがイマイチだなあ。ここだけ専用のDocBookを用意しないといけないのが面倒。

これって、バージョン管理ツールとの連携を踏まえて履歴を外に出す方がいいんだろうか。

gitもMercurialもAsciiDoc使ってるんですねえ。やや広まってきたかな。

AsciiDoc version9なるものを発見。

AsciiDocの方もMercurialを使っているのか。ほほう。なんかいろいろ繋がってきましたな。

次はA-A-Pか。

Advanced Message Queuing Protocol(AMQP)

非常に気になる。またもやErlangかあ。別件で調べていた時もErlangが出てきた。やたら絡んでるなあ。

Mercurial備忘録

最近非常に興味のあるバージョン管理システム。現在Cygwinで動作中。commit logのエンコードは、環境変数HGENCODINGにutf-8として設定。

Webフロントエンドの方は、強引にレポジトリ内のファイルのエンコードにあわせるよう以下のように対処:

$ env HGENCODING=euc-jp hg serve

hgrcにencodingを設定すればいいらしいのだが、commit logが文字化けした。(0.9.4):

[web]
encoding = EUC-JP

最終的にはwebdir形式で、XAMPPのapacheからCygwinPythonをよびだすように設定。

まだ知らないところとしては、ここら辺。

  • MQでpatch管理
  • graphviz拡張でツリーを概観
  • hgsvnでsvnと連携?

分散型バージョン管理システムは、いろいろあってなかなか楽しそう。

個人的な興味としては、『分散』にはそれほどなく、どちらかというと『苦痛にならないブランチやタグ付け』の方にある。

CVSはかなり苦痛だったし、Subversionも改善はされたがやはり辛いものがある。GNU Archの作者Tom Lord氏のインタビュー記事*1を読んで妙に納得してしまった。

PIC -- A Graphics Language

[2021-11-23追記] この記事は2007年に書かれたものなのでだいぶ古い内容になっています。今ならpikchr(https://pikchr.org/home/doc/trunk/homepage.md)がオススメです。

コンピュータを使って文書の中に図を入れたくなった時、みなさんはどうするでしょうか。

Windowsを使っている人は、Word, Excel, PowerPointで文書を書いていると思います。素直な人だとオートシェイプ機能を使うでしょう。

UnixライクなOSを使っている人は、画像作成ツールを使って画像を作り、それからTeXやDocBook文書、その他の形式の文書に画像へのリンクを書き込むでしょう。あるいは自分独自の文書形式を作って作業しているかも知れません。(そんな人の場合、きっとこの文章は必要ないでしょう。)

TeXがなかった時代はどうしていたのでしょう。roffシステムを使ってパイプ&フィルターで文書を作成していました。

roffシステムは、UNIXのポリシーに従って複数のプログラムの組合せで動作するようになっています。

その中の1つにpicがあります。picはPIC言語を読み込み、roffで解釈できるコマンドに変換するものです。

PICの文法や使い方を学ぶには、Eric S. Raymondの文書を見るのがよいでしょう。はっきりいって、PICの情報源は少ないです。私の知っている情報源について、ここに載せておきます。

  1. man pic
  2. UNIXのバックグラウンド
  3. Brian W. Kernighanによるユーザマニュアル
  4. Eric S. Raymondによるユーザマニュアル
  5. W. Richard StevensによるPICマクロ集

1のmanは、あまり詳しく書かれていません。2はUNIXの思想についてroffを使って解説しています。3,4,5はplotutilsに同封されているマニュアルで、どれもわかりやすくすばらしい文書です。特にEric S. Raymondの文書が参考になるでしょう。

PICをサポートしているソフトウェアも少ないです。私の知る限りでは以下の3つです。

  1. gpic
  2. plotutilsのpic2plot
  3. UMLGraph

gpicは、UnixライクなOSだとおそらく標準で入っているでしょう。pic2plotは、フォントのサポートが不十分です。特に日本語は期待できません。UMLGraphは、単体ではPICを解析できませんが、シーケンスチャートを描くためのPICマクロが用意されています。