久々に、朝から夕方まで、パソコンの前に座っていました。今日は思い切りAB開発に時間を費やしたんですよ。

午前中はサボッていたメール処理。たまっていた要返信メールを書いてしまいます。で、昼食は外へ出かけ、家に戻ってActiveBasic Ver4.04.00の開発を進めます。

まずは「スペース・タブ文字を先頭部分に持つ文字列をVal関数に引き渡すと、戻り値が0になってしまうバグ」について。例えば、

Print Val(” 123″)

などという処理を行うと、画面には123ではなく、0が表示されてしまいます。これは、Valに引き渡す文字列の先頭データにスペースが含まれているからです。しかし、本来このスペースは無視しなければならないものなので、こいつを修正します。それと同時に、バグを報告してくれたユーザーさんにお返事メールを送ってと…。

お次は、#includeディレクティブの参照ディレクトリの問題。結構前から気になっていたバグというか使い辛い仕様というか…。とにかく、#includeディレクティブにダブルクォートで囲った相対パスを指定したとき、それが記述されているファイルのディレクトリが検索対象になるよう、修正したんです。

↑ややこしいですねぇ〜。作業は終わったんで、さっさと頭の中から消し去ります。

最後はエスケープシーケンス “\x” の追加。Ex”文字列” という表記をしたときに、文字列として\x0dなどという指定をすると、任意の文字コード(ここでは&H0D)を埋め込むことができる、ちょっと便利な機能なのです。

この機能がないと、ただ単にバイトコードの処理をするだけなのに、いちいちString型を用意して、Chr$(0)を組み合わせて…という具合にややこしくなってしまうんですね。

こんな感じで地味ぃ〜な作業がほとんどでした。それにしても、よく一日中パソコンにしがみついていられたものです。最近の中では結構長時間だったと思います。