最終更新日 2024-06-21

hmJSが秀丸マクロへアクセスする関数

ヒアドキュメント用の関数「R」

「R」という関数に、「以下のように、コメントを内側に書いた関数そのものを渡す」ことで、
ヒアドキュメント化された文字列が返るようになっています。
JavaScriptそのものには、ヒアドキュメントが存在しないため、このように「R」という関数を設けています。

#JS = loaddll( hidemarudir + @"\hmJS.dll" );

#_ = dllfuncw( #JS, "DoString", R"JS(

var str = R( function() {
/*
    あいうえお
    かきくけこ
    \n\n
*/ } ); // /*~*/が「書いたままの文字列である」ヒアドキュメント化される。


hm.debuginfo(str)
hm.Macro.Var('$str', str); // 秀丸マクロの方に伝達

)JS"
);

message($str);

freedll( #JS );
    

JSから秀丸マクロへアクセスする関数

JavaScriptの機能をフルに生かしつつ、秀丸マクロの機能や各種値もほぼ全て使えるところが、
hmJSが優れている所以です。

の2つの手段で秀丸マクロを取り扱うことが出来ます。