スクリプトマクロ
以下はほとんど終わった話です。次のバージョンからはもう少し使いやすいものに変更します
バージョン 0.51a 以降、Windows スクリプト を使ったマクロが導入されました。このスクリプトでは Alpha 全体を表すオブジェクトを使って Alpha を操作できます
一般的なテキストエディタのマクロはその作成に特殊なツールを必要としたり、新しく言語を覚える必要がありますが、Alpha のマクロ作成に必要なのはテキストエディタと Windows スクリプト言語の知識だけです。Windows スクリプト言語とは VBScript 、JScript 、PerlScript 、RubyScript 、Python などです。システムにインストールされているこれらの言語から好みのものを使ってマクロを記述することができます
マクロを作成するには "alpha/macros" ディレクトリに "macros.xml" という XML ファイルを作成し、このファイルに各マクロスクリプトの位置や言語を記述します (このファイルはパッケージに最初から含まれており、内容はサンプルになっています)。各タグの意味はサンプルを見れば分かると思いますが、以下で少し説明します
Alpha 0.7.5.3 で仕様に少し変更があります
macros
- ルート要素です。
name
属性はこの XML ファイルで定義するマクロ全体を表します macro
- 1つのマクロを表します。
name
属性はマクロの名前で、メニューのラベルに使用されます description
macro
の子要素です。マクロの説明で、メニューがアクティブになったときこのテキストがステータスバーに表示されます。省略可能ですscript
macro
の子要素です。マクロの本体で、src
でスクリプトの位置を指定します。language
属性はスクリプトの言語名を指定できます。省略するとファイルの拡張子から言語を決定します
各マクロは script
要素の src
属性で指定したファイルに記述します。ファイルのエンコードは UTF-8 を使ってください (BOM の有無はどちらでも構いません)。Alpha はマクロを実行するときにスクリプト全体を評価し、その後トップレベルにある “main” という関数を実行します (あれば)。この関数は Arguments
型の引数を1つとります。また、この関数は符号付き長整数の終了コードを返すことができます (現在では無視されます)
Ambient
オブジェクトのリファレンスは Ambient オブジェクトモデルを見て下さい。ただし実装されていない機能もあります- マクロを使用するには MSXML 3.0 (Internet Explorer 6.0 付属) 以降が必要になります
- JScript 、VBScript の
GetObject
でエラーになる場合はWScript.GetObject
を使ってください (CreateObject
、new ActiveXObject
は普通に使えます) - 現在のマクロ定義の方法は将来変更されます