▼ いっちさん
> 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);
でデータを取ってきて自力で移動する必要があります。