ml-ent

設定ファイルは下の説明と少し違うこともあると思いますが、ひらけば一目瞭然なのでひらいて見てください。より詳しくは同梱のソースを見てください。

2002.01.19

ml-ent for Win95/2K: α公開

ふつうのコピー&ペースト
コピーする→貼り付ける
変換つきコピー&ペーストの例
コピーする→[Ctrl][Ctrl][A]と叩く→貼り付ける

デモ

例えば、次のようにメールの一部を貼り付けたとします。

不等号のような特殊文字を含むテキスト

このままではHTMLとしてまずいです。そこで、HTMLとして有効にしたい部分を選択して――

――切り取ります:

これでクリップボードにこの部分が転送されました。

ここで ml-ent を起動します。手元では Orchis2 というランチャーに登録しているので、[Ctrl][Ctrl][A] ([CTRL]を二連打してから[A]を叩く)というキーボード操作で、ml-ent が機能します。ml-ent がクリップボードから読み込んだバイト数とクリップボードに書き戻したバイト数を報告するので [OK] を押してください。

入力と出力の文字数をそれぞれ表示

すると ml-ent は勝手に自分で終了し、コントロールが戻ります。クリップボードの中味はHTMLとして正当なものに変換されています。貼り付けたい場所にペーストしてください。

特殊文字は適当に変換されています

デフォルトでは、&, <, >, ", ' がそれぞれ &amp;, &lt;, &gt, &quot;, &#39; に、タブが空白4個に変わります。ただし、ml-ent.ini で、quot=0 とすると二重引用符は無変換, apos=0 とすると一重引用符は無変換、apos=1 とすると XML Entity の &apos; に。

さらに設定しだいで、改行文字→<br>変換も。nl2br=1 とすると改行文字を<br>に変換、nl2br=2 で<BR>に。ただしデフォルトでは nl2br=0 すなわち改行文字は無変換です。これは<pre>のなかに書くのをメインに考えているためです。tab=数字(1〜16)にてtabを置換する空白の個数を設定できます。tab=0とするとタブ文字は無変換でスルーになります。

という、ただそれだけの小物です。

説明

JavaScript のソースやなんかをHTML内で紹介するのに、参照すべき文字の変換、タブ→空白変換など、いつもいつも決まり切ったテキスト変換をするのにうんざりして、めんどくさいから一発でできるように自分でトゥールを作ろうと思って作りました。

自分が使うので作っただけなので製品品質はおろかβ品質もありません。手元でとりあえず動けばいいや、ということで、メモリの最適化とか細かいことは考えてません。バッファサイズぎりぎりのテキストの変換とか、変換途中でべつのソフトがクリップボードをいじるとか、極端な状況、例外的な状況下にまであまり配慮してません。バッファは10KBまで読み込めます。大きすぎれば大きすぎるというエラーがでて何もしないはず。出力用は、その16倍、確保してます。たぶんあふれないでしょう。

Windows 2000 と Windows 95 で動作確認しています。ほかのバージョンの Windows でもたぶん動くでしょう。

インストール

必要ありません。ml-ent-alpha.zip(41KB)を解凍して出てくる ml-ent.exe は(たぶん)ただちに動きます。Orchis2 と連携させることで、あらゆるアプリケーションからコピーしたテキストを HtmlEntities 変換して、任意のアプリケーションにペーストできます。

ml-ent.exe は通常の Windows ソフトと違って、まったくウィンドウを生成しませんが、GUIベースでダイアログを出します。

アンインストール

単に削除するだけ。レジストリはおろか、iniファイルにすら書き込みしません。

設定

同梱の ml-ent.ini で行います。ひらけば分かります。

ml-ent.ini がなくても動きます。その場合、デフォルトの動作になります。

めんどくさいので書式を柔軟にしてません。例えば apos=1 というときの等号の前後にスペースを入れたり、大文字小文字を違えたり、右辺値を引用符で囲ったりといったことをすると、設定が認識されず、既定値のままになります。設定の行の順序はどうでもかまいません。# から始まる行は無視されます。ml-ent にとって意味のない行や設定値も無視されます。必要に応じて、同梱の ml-ent.cpp も参考にしてください。

バージョン情報

半角小文字の v 一文字(末尾に改行文字もなし)をクリップボードにコピーした状態で起動すると、バージョン情報を表示し、表示した内容をクリップボードに書き戻します。今回のファースト・リリース(α版)は、次の通り:

ml-ent
http://www.faireal.net/
Build: Jan 19 2002 02:56:26
www.faireal.net <webmaster@faireal.net>