[ 新規に投稿する ]

Enterキーにマクロを割り当てたときの動作についてNo.09002
ohtorii さん 19/06/25 15:15 [ コメントを投稿する ]
  お疲れさまです。

Enterキーにマクロ(※1)を割り当てると、
ファイルマネージャー枠、アウトライン解析の枠でEnterキーを押下したときにマクロが実行されて都合が悪いです。
本来のファイルを開く、見出しにジャンプする機能を優先した方がよいと思いますが如何でしょうか?


または、マクロに以下機能があればマクロ側で対処することができます。
 1. フォーカスの当たっている枠を識別する(※2)
 2. Enterキー本来の動作を行なう関数


(※1)Enterキー押下時に補完を行う自作マクロです。
(※2)getfocus文がすでにあります。

マクロの例
if(getforcus != 1){
  //編集エリア以外
  enter;  //Enterキー本来の動作を行なう
}


よろしくお願いします。
[ ]
RE:09002 Enterキーにマクロを割り当てたときの動作についてNo.09003
秀丸担当 さん 19/06/25 15:44 [ コメントを投稿する ]
 
後付けの機能で、無理矢理付けた方法なのですが、seteventnotifyでキー割り当てでない本来の動作にする方法があります。
例えば以下のように使います。

if(getforcus != 1){
  //編集エリア以外
  seteventnotify 1;
  endmacro;
}
//独自処理
insertreturn;

seteventnotify 1;とすると枠の本来の操作になります。これをした直後は必ずendmacro;する必要があります。
seteventnotityは本来自動起動マクロ用ですが、とある要望で、自動起動でないときは枠の操作にできることにしていました。
わかりにくいです。すみません。

試してみたら、ファイルマネージャー枠ではうまくいったのですが、アウトライン解析の枠では、ただ何も起きないようになるだけでした。
上記マクロで、アウトライン解析の枠でEnterの組み合わせのときはフォーカスが移るように修正させていただきます。
現状ではgetforcus == 2の場合も処理すると何とかなると思います。
[ ]
RE:09003 Enterキーにマクロを割り当てたときの動作についてNo.09004
ohtorii さん 19/06/25 18:00 [ コメントを投稿する ]
  お疲れさまです。

ご指摘の方法で解決できました!!

ヘルプに記載してあったのですね(^_^; 
お手数をおかけして申し訳ないです。


アウトライン解析の枠の問題は修正をお待ちしています。
[ ]

[ 新規に投稿する ]