本文へジャンプ

スクリプトマクロ

以下はほとんど終わった話です。次のバージョンからはもう少し使いやすいものに変更します

バージョン 0.51a 以降、Windows スクリプト を使ったマクロが導入されました。このスクリプトでは Alpha 全体を表すオブジェクトを使って Alpha を操作できます

一般的なテキストエディタのマクロはその作成に特殊なツールを必要としたり、新しく言語を覚える必要がありますが、Alpha のマクロ作成に必要なのはテキストエディタと Windows スクリプト言語の知識だけです。Windows スクリプト言語とは VBScriptJScriptPerlScriptRubyScriptPython などです。システムにインストールされているこれらの言語から好みのものを使ってマクロを記述することができます

マクロを作成するには "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つとります。また、この関数は符号付き長整数の終了コードを返すことができます (現在では無視されます)