2002-02-28

いちおう、2/26のWhining Expressからのつづき。

ユーザーがマクロをダウンロードし、アーカイブを解凍して得たファイルを、現状では基本的に、ユーザー自身が適切なフォルダにコピーする必要がある、というのが、どうもマクロを利用することへの敷居を高くしているような気がしてきました。もうC:¥Program Files以下をユーザーに開かせる時代でもないかな、とも思います。

というわけで、「マクロ導入サポート」プラグイン、プロトタイプを作ってみました。

「マクロ導入サポート」プラグイン スクリーンショット

プラグインとして登録すると、メニューの[マクロの実行]コマンドの下に[マクロのインストール]コマンドが追加されます。[戻る]と[次へ]のナビゲーションでひとつずつ質問に答えていく、ウィザード形式です。あとはこういうマクロなので、より親切な表記とか解説とかがもちろん必須なんですが、それはおいおいブラッシュアップしていくとして、とりあえずご意見等広く募集中です。

もうちょっと完成度が上がったらTX-Cライブラリに登録する予定。ヘルプ用のドキュメントなど、マクロに付随するファイルがインストールできないとか、そのあたりはどうにかしたいですし。

もっとも、いちばんはじめにこのマクロをインストールするときは、どう転んでも旧来の方法でしかできないわけですが。

2002-02-27

Bluetooth ReportでPCカード型のBluetoothアダプタについて、「欲を言えば、コンパクトフラッシュ版があれば最高でしたけど。」などと書いていたら、同ページを見てくださったWOOZLEさんから、「Socketからこんなのが出ています。」とSocket CommunicationsBluetooth Connection Kitを教えていただきました。

3ComのワイヤレスBluetooth PCカードを買うより前に、CFサイズの(はみ出しのない)Bluetoothアダプタはけっこう探したつもりだったのですが、Windows CE専用のものがほとんどで……。というか、Socketのこの製品も基本的にはCE用なんです。ところが、同社のWeb掲示板で、「Nokiaのドライバを使えばWindows 98/XPで使えるよ」という情報が出てるというではないですか。どうやらいまのところはPCカードアダプタ経由での話のようですが……。もっともWOOZLEさんからの情報によれば、Windows XP用のドライバが近日公開予定だそうですので、そちらを待っていればよいようです。

うーん、メインマシンのThinkPad X20はPCカードスロットとCFスロットがひとつずつついているんですが、CFスロットのほうはまったく使ってないんです。できることならCFサイズのほうが理想だったので、これを知ってしまうと俄然気になってきます。いっぽうで、いま使ってる3Comのがけっこう安定してて馴染んできてるというのもたしかなんですよね。……どうしよう。

それはさておき、WOOZLEさん、情報の提供ありがとうございました。

2002-02-26

これまでのあらすじ2/23のFinal β Laboratory更新履歴、「プラグインマクロ考」を参照してください。関係ないですが、2/23の更新履歴で2/24の記事への反応をいただいてます(笑)。

設定ダイアログを出すのと、「これはプラグインだからプラグイン管理ダイアログから登録してちょ」というメッセージを出すのと、どっちがいいかなあ。一見、前者の方が親切なように思えますが、そもそもプラグインマクロをどう使うか分かっていない(登録が必要だということを知らない)ユーザー(プラグインマクロを「マクロの実行」から呼ぼうとするくらいですから、こういった人である可能性も結構あるかなと)のことを考えたら、後者もありのような気がします。

ただメッセージボックスで「登録してちょ」よりはヘルプなどへ誘導するようなつくりのほうがいいとは思います。親切に念を入れるならWZ Xのように実行形式のアーカイブでインストールまで面倒見てしまうとか……(だから自動MAKEされないと意味ないんですが)。もっともWZ Xはある意味VCオフィシャルプラグインだからまた特別ですけど。あるいは「プラグインなので登録しないと使えません、登録しますか?」という展開にするとかですかね。

とはいえ、本筋と関係ないコードがいっぱいになるので、じっさいにはよほど会心の作でもできないことにはそこまではできませんね。

……いや、「利用しやすく」という観点からいえば、マクロの振る舞いを云々する以前に、もっと根本的な問題があるような気がしてきました……。

2002-02-25

今週の木曜日(2月28日)発売の「DOS/V POWER REPORT」誌4月号の付録CD-ROMに、「Cファイル入力支援」、「コマンドラインをWZから実行」、「CSVフォーム」の3つのマクロが収録されます。

……などとさらりと書いてますが、じつは初の雑誌収録依頼にめちゃくちゃ舞いあがってたりします。しかも、なんと誌面での紹介までしていただけるとのこと。オンラインソフトコーナーでのテキストエディタ特集ということだそうです。エディタのマクロで紹介記事まで書いてもらえるとは思いもよりませんでした。もう同誌の編集部には大感謝です。某所にも今後は足を向けて寝られません。

ほかのエディタにどんなマクロがあるのかというのもちょっと気になりますし。

……いや、やっぱり自分のマクロがどんなふうに紹介されるかがいちばん気になります(笑)。

2002-02-24

マクロソースの自動コンパイルについてのY.Nakamuraさんとのやりとり(ビレッジセンター掲示板、WZユーザ広場1の#2372、 #2373)からちょっと脇道へ……。

WZの既存のコマンドをフックするだけのプラグインなどでは、操作といえばプラグインに登録するだけで、[マクロの実行]ダイアログから実行する機会のないようなもの(ここの例でいえば「Cファイル入力支援」とか)もあります。そういったマクロでは、あえてmain関数を用意する理由は乏しいのですが、僕は、TX-Cライブラリに公開するようなマクロでは基本的に(一見必要ないように見えても)main関数を用意するようにしてます。

mainは[マクロの実行]ダイアログでマクロ名のみを入力して実行したときに呼び出されるコマンドでもあるので、いわばそのマクロ全体を代表しているインタフェースであるとも考えられます。だから、ユーザーにとって使いかたのよくわからないマクロでも、とりあえず[マクロの実行]ダイアログでマクロ名を入れてOKボタンを押せば、そのマクロの使用法についてなんらかのヒントが得られるようにしておこう、という発想です。

そんなわけで、じつはここで公開している中規模以上のマクロのほとんどは、基本的に「マクロが(設定ダイアログなどの)対話的なインタフェースを持つ場合は、mainコマンドからそのすべてにアクセスできるようになっているべき」というのを理想に作ってあったりします。使う側からしてみればキーやメニューをマクロに割り当てるときに1つきりで足りるということや、マクロ製作者の気分しだいで変わりかねない、configとかoptionとかsetteiといった関数名を把握しなくてすむ、といったメリットもあるかと。