作者: 閑舎
日時: 2003/11/22(23:44)
 皆さん、こんにちは。

 Segmentation Faults をあまり出さなくなったので、取りあえずアップします
(^^;。

    http://rakunet.org/square/software/xmlrec.html

 まだ、XML 文書のスクリプトによる簡単な変換を目指すにはほど遠いのですが、
文字コード変換、タグレベルに応じたインデント揃え、簡単な桁折を実装し、
XML だけでなく HTML4.0 にも対応しています。

 動作環境は UNIX と Windows です。今回の配布から CVS を使い、デバッグは 
gdb をメインとしています。

 タグ、属性の大文字、小文字変換もサポートしています。しかし、現在、世の
中で公開されている HTML のソースはきわめていい加減で、IE, Mozilla などで
表示されているからそのままになっていますので(読売や日経など)。これらをこ
のツールにかけても変換できません。http://validator.w3.org/ にかけてエラー
がない場合について、このツールは使用可です(簡単なエラーチェック機能はあ
りますが…)。

 以下のような整形が可能です。

  <a>
  <b>
  <c>...</c>
  </b>
  </a>

が

  <a>
   <b>
    <c>...</c>
   </b>
  </a>

となる。また、

  <a>
  <b>
  <c>...</c></b>
  <d><c>...</c>
  </d>
  </a>

が

  <a>
   <b>
    <c>...</c>
   </b>
   <d>
    <c>...</c>
   </d>
  </a>

となる。また、

  <!doctype html ...>
  <html>
  <head>
  <meta http-equiv="...">
  <title>..</title>
  <!-- aaa --->
  </head>
  <body>
  <br>
  </body>
  </html>

が

  <!doctype html ...>
  <html>
   <head>
    <meta http-equiv="..." />
    <title>..</title>
    <!-- aaa --->
   </head>
   <body>
    <br />
   </body>
  </html>

となったり、

  <ol>
  <li>...
  ...
  <li><p>...
  </ol>

が

  <ol>
   <li>...
    ...</li>
   <li><p>...</p></li>
  </ol>

となったりします。

--
本田博通(閑舎)
テキストとスクリプトの http://rakunet.org/TSNET/