// 秀丸用ルビ振りマクロ v1.0 (Oct-07-1999)
// Copyright (C) 1999 押井徳馬
// Web site: https://osito.jp/download/
// これはフリーソフトウェアです。再配布や改造は自由です。
//
// 使用例:「魑魅魍魎」の字にルビを振るHTMLを記述
// 1.「魑魅魍魎(ちみもうりょう)」と書く(括弧は半角でも全角でもよい)
// 2.「魑魅魍魎」の字の左にカーソルを移動する
// 3.このマクロを実行する
// 4.すると、現在のカーソル位置から最初の丸括弧までがルビ対象文字、
// 括弧内がルビ文字と自動認識され、ルビを振るHTMLが追加されます。
if(readonly){
message "上書き禁止です。実行を中止します。";
endmacro;
}
if(browsemode){
message "閲覧モードです。実行を中止します。";
endmacro;
}
// 現在のカーソル位置を保存
#x0 = x;
#y0 = y;
// 左括弧の位置を検索(半角のがなければ全角も検索)
searchdown "(";
if (!result){
searchdown "(";
}
if (result){
// 左括弧があった場合
#x1 = x;
#y1 = y;
} else{
// 左括弧がなかった場合
message "左括弧が見つかりません。ルビ振りを中止します。";
moveto #x0, #y0;
endmacro;
}
// 右括弧の位置を検索(半角のがなければ全角も検索)
searchdown ")";
if (!result){
searchdown ")";
}
if (result){
// 右括弧があった場合
#x2 = x;
#y2 = y;
} else{
// 右括弧がなかった場合
message "右括弧が見つかりません。ルビ振りを中止します。";
moveto #x0, #y0;
endmacro;
}
// 文字列追加でカーソル位置がずれないよう、右から左にかけて文字列追加
// まずは右括弧の左へカーソル移動し、タグを追加
moveto #x2, #y2;
insert "";
// 次に左括弧の左へカーソル移動し、タグを追加
moveto #x1, #y1;
insert "