[スレッド全体]

2017/3/30 (木) 19:51:22 返信 削除
[618] Re:行を選択するマクロについて

▼ いっちさん
>   Editor.GoLineTop(1000);
これはGoLineTo(0x3e8)なので
http://sakura-editor.sourceforge.net/htmlhelp2/HLP000224.html
改行単位の行頭に移動します。

>しかし、キャレット(カーソル)が、行頭の最後の半角スペースと
>最初の文字の間にある場合だけは例外で、行頭の半角スペースを
>含んで、選択してしまうようです。(sakura 2.3.1.0)
これは仕様です。
先頭の空白の後ろ側の位置にカーソルがある場合は、行頭(^)に移動します。
複数回実行するとこの2か所を往復します。

未テストですがこんな感じですかね。

Editor.GoLineTop(8);
var x = Editor.ExpandParameter("$x") - 0;
if( x == 1 ){
    // 行頭に移動ならスペースの後ろへもう一度移動
    Editor.GoLineTop(8);
}
Editor.GoLineEnd_Sel(0x08);
こういう風に対処するか

var s = Editor.GetLineStr(0);
var len = s.match(/^[\s]*/)[0].length;
var y = Editor.ExpandParameter("$y") - 0;
Editor.MoveCorsor(y, len + 1, 0);
Editor.GoLineEnd_Sel(0x08);
でデータを取ってきて自力で移動する必要があります。
もか
Mozilla/5.0 (Windows NT 6.3; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0

[▼次のスレッド]
INCM/CMT
Cyclamen v3.81