[538]
Re2:矩形選択について
もか
▼ ななしさん
> マクロで対応する方法もあるかもしれません。
> (マウス情報をマクロで利用できるかどうか分かりませんが。)
クリック、○○+クリックは、キーカスタマイズができません。
あとマウス座標を取得、変換するマクロ関数は実装されていません。
前にも一度書いた気がするのですが、
F1とかAlt+ダブルクリックとか右クリックメニューで、選択開始、選択終了の指示をしていいなら
Editor.SetCookie("window", "boxy", ExpandParameter("$y"));
Editor.SetCookie("window", "boxx", ExpandParameter("$x"));
とかで開始位置を記録しておいて、終点をクリックした後
var y = ExpandParameter("$y");
var x = ExpandParameter("$x");
var oldx = Editor.GetCookie("window", "boxy") - 0;
var oldy = Editor.GetCookie("window", "boxx") - 0;
Editor.MoveCursor(oldy, oldx, 0);
Editor.MoveCursor(y, x, 2);
とかすれば矩形選択が可能です。
ただ問題があって、改行より後ろは選択できません。
MoveCursorLayoutは用意してありますが、ExpandParameterのほうにレイアウト座標を取得するメタ文字がないです。
その機能を追加するパッチはpatchunicode:1067は用意してあります。
私も詳しく調べていないのでわかりませんが弊害がなければ「Alt+クリック+クリック」でいいんじゃないかとは思います。
ちなみに普通の選択と挙動を合わせるなら、正確には「クリック(もしくはキーボードで移動)」→終点「Alt+クリック」ですよね。
「Alt+クリック」→「Alt+クリック」もしくは、「Alt+クリック」→「クリック」ではないと思います。