V8.66β9No.09141
秀丸担当 さん 16/10/13 16:25
 

V8.66β9を公開しました。

以下のページの「先行開発バージョンはこちら」からダウンロードできます。
http://hide.maruo.co.jp/software/hidemaru.html

32bit版:
http://hide.maruo.co.jp/software/bin/hm866b9_signed.exe

64bit版:
http://hide.maruo.co.jp/software/bin/hm866b9_x64_signed.exe

[ ]
RE:09141 evalやHidemaru_EvalMacroでのcuNo.09142
天翔記.jp さん 16/10/14 01:35
 
evalやEvalMacro中に

currentmacrofilename
currentmacrobasename
currentmacrodirectory

などが空文字になるようなのですが、あえてクリアしていますか?

evalもEvalMacroも実行中のマクロと同じマクロ空間を共有しているものなので、
特に問題がないようでれば、空文字とはせず、
ベースとなるマクロの
currentmacrofilename
currentmacrobasename
currentmacrodirectory
をそのまま維持すればよいのではないかと思いました。


[ ]
RE:09142 Hidemaru_GetDllFuncCalledType No.09143
天翔記.jp さん 16/10/14 01:49
 
Hidemaru_GetDllFuncCalledTypeは、

@Hidemaru_GetDllFuncCalledType(-1)
 loaddll文、loadldll関数ともに、良好に動いているようです。
 dllは自力で呼ばれ方を得ることができました。

AHidemaru_GetDllFuncCalledType(1〜)
 @で得た情報を元に、
 dll自身が自分で型を問わない関数をEvalMacroで発行。
 その中で引数のタイプを得ることで、数値か文字列かを自動分岐することができま
した。


これらにより、python/ruby/luaなどから
a = hm.Macro.Var["filename2"] // 自動的に文字列であることが調査され文字列と
して受け取る
b = hm.Macro.Var["x"] // 自動的に数値であることが調査され、数値として受け取る

などがいずれの言語でも実装可能でした。

ありがとうございます。

[ ]
RE:09143 Hidemaru_GetDllFuncCalledType No.09144
秀丸担当 さん 16/10/14 11:09
 

ご確認ありがとうございます。

currentmacrofilename
currentmacrobasename
currentmacrodirectory
これらついては、確かに空にしています。特に深い意味があってしているわけで
はないので、取得可能なように修正しようと思います。

ちなみにマクロに文法上のエラーがある場合は、通常はファイル名とともに行番
号がメッセージボックスで出ますが、evalの場合はファイル名は出ずに、
[eval](1):文法エラーです。
という感じで表示されるようになっています。
このこととcurrentmacrofilenameは繋がりは無いので、currentmacrofilenameは
取得できるようにします。

[ ]