HTMLSED外部プログラム作成情報

 HTMLSEDの外部プログラム起動はどんなプログラムでも起動できるのですが、そのプログラムを自作する場合、いくつか注意をしておいた方がよい点があります。 その解説を行います。

プログラムの外観

 汎用プログラムを作って、なおかつHTMLSEDから起動させるような場合は、通常のプログラムの外観にしておいた方がよいでしょう。

 そうではなくて、HTMLSEDからしか起動しない場合は、通常のプログラムの外観でも、ダイアログ形式の外観で作っても良いですが、ダイアログ形式の方が違和感無く使えるのではないかと思います。 どっちにしてもそんなに面倒なものでもないですし。

起動パラメータ

 通常、何もパラメータを付けずに起動しますが、登録時に「編集中のファイル名を起動プログラムに渡す」をチェックしている場合は編集プログラム名が第一パラメータとして渡されます。 また、プログラム起動前に編集プログラムが保存されるため、渡されたファイル名のファイルを開くことで現在の状態で内容を処理することが出来ます。

 なお、外部プログラムが起動パラメータとして渡されたファイルを変更しても、HTMLSEDには何も伝えられません。 つまり、変更したからと言って自動的に内容が変わったり、読み直されたりはしません。 その場合は、利用者が該当ファイルを開く作業を行う必要があります。

タグリスト

 プログラム起動時に、HTMLSEDがあるディレクトリにTAGLIST.TXTが作成されます。 これは1行目に編集中ファイルのHTMLのバージョンが入れられています。 2行目以降はタグリスト(スタイルクラス指定含む)が入っています。

 HTMLのバージョンが不要な場合、1行目を削除してタグリストとして使用することが出来ますし、HTMLのバージョンだけが必要な場合は1行目だけ読めば用が果たせます。

HTMLSED.INI

 HTMLSEDがあるディレクトリにはHTMLSED.INIがありますが、これは変更しないでください。 変更しない場合は、内容を読み込んで各種設定を利用することは可能ですが、なるべく短時間だけこのファイルをオープンするようにしてください。 つまり、読み込みを行い、すぐファイルを解放するようにしてください。HTMLSEDは起動時だけでなく、実行中もこのファイルを参照、変更します。その時にファイルが解放していないとアクセスできなくなるので、注意してください。

 そのほかに、INPUTSC.*のファイルも同様に変更しなければ利用しても問題ありません。 その場合もなるべく短時間だけオープンするようにしてください。 使わないままオープンした状態で放置しないでください。

 *.TAGのファイルも読み込むことは可能ですが、このファイルは必ず存在するとは限りませんので(不要な場合は削除している可能性もあります)、それに依存した作り方にしないでください。 また、このファイルの内容が変更されている可能性もありますので、このファイルでチェック(文法チェックなど)しない方がよいと思います。

プログラムの場所

 作成したプログラムはどこにおいても良いですが、HTMLSED.INIや設定ファイルなどを読む場合は、HTMLSEDと同じ場所に置くのが良いと思います。

 そうでない汎用的な作り方の場合や、OLSなどは別な場所においても問題ありません。

クリップボードについて

起動されたプログラム側

 プログラムを起動するに当たって、クリップボードはそのまま継承されます(つまり削除はされていません)。 そのため、クリップボードを使ったデータの受け渡しが出来ます。 ただし、クリップボードの内容にしたがって自動処理は行わない方がよいと思います(ゴミが入っている可能性もありますので)。

 クリップボードの内容で処理を行う場合は、プログラムを起動してメニューやボタンなどでクリップボードの内容で処理をすることを明示させた方がよいです。 特にクリップボードでの処理と、自分で入力を行って処理が出来る様な作りの場合、自動処理しない方が良いです。

 ただし、クリップボードに入れられている内容でしか処理しない場合(もしくはクリップボードでデータを受け渡すことが当たり前の状況)の場合は自動処理を行う方が良いかもしれませんが、その場合はゴミが入っていないかのチェックは十分行うようにしてください。

HTMLSED側

 外部プログラムからHTMLSEDにデータを渡すとき、クリップボードを使うことが出来ます。 ただしその場合も、自動的には編集内容に反映はされません。 自分で貼り付けなどを行う必要があります。

それ以外について

 特に問題になるようなことはないと思いますが、何か分からなかったり問題が起こったりした場合はHOpまでメールしてください。 分かる範囲内で答えたいと思います。

 また、上記仕様でどうしても何とかして欲しいなどのことがありましたら、メールしていただければと思います。


copyright (c) 2000 and