◇ 「LClick (getmouce) 」がうまく動かない
Q:現在マウスカーソルがある座標をクリックしようとして「LClick (getmouce) 」としたのですが、うまく行きません。
A:スペルミスです。「(getmouce)」ではなく「(getmouse)」ですね。
KMmacro のデフォルト動作では、引数が「(〜)」で囲まれれていると、
(1) それが関数であるかチェックする。
(2) 関数であれば値を返し、そうでなければ文字列としての「〜」を返す
という動作をします。このため、スペルミスがあっても、エラーになってくれないのです。
似たような問題として、変数名があります。KMmacroは「%」で始まる引数があると
(1) それが変数であるかチェックする。
(2) 変数であれば値を返し、そうでなければ文字列としての「%〜」を返す
という動作をします。このため、変数名のスペルミスも、エラーになりません。
エラーでマクロが止まらないのはいいのですが、これではスペルミスに気づきづらいと思います(おそらくは、意図した動作にはならないでしょうし)。間違っていたらエラーとして止めてもらいたい場合には、KMmacro.INI のオプション指定で
; 「(〜)」の「〜」が関数でなければ、 1:エラーにする else:文字列「〜」を返す
func_error=0
; 「%〜」が変数宣言されていなければ、 1:エラーにする else:文字列「%〜」を返す
var_error=0
を「1」にしておけば、存在しない関数や存在しない変数が出てきたときに、エラーにしてくれます。