BOX選択時の横スクロールNo.05846
jechabon さん 10/07/12 12:55
 
お世話になります。

マウス操作でBOX選択中に、マウスカーソルが編集ウィンドウの右端に近づくと、
急速に右スクロールして、テキストが存在しない領域まで移動してしまいます。
このため、右端のBOX選択操作が難しいのですが、何か回避策はないでしょうか?

環境:秀丸8.01β11

[ ]
RE:05846 BOX選択時の横スクロールNo.05849
秀丸担当 さん 10/07/12 14:44
 

>マウス操作でBOX選択中に、マウスカーソルが編集ウィンドウの右端に近づくと、
>急速に右スクロールして、テキストが存在しない領域まで移動してしまいます。
>このため、右端のBOX選択操作が難しいのですが、何か回避策はないでしょうか?

確かに左右スクロールは上下スクロールと違って緩やかになるような調整をして
いなくて、すごく速くなってしまっていました。
BOX選択中の左右スクロールが発生しそうなときは緩やかになるような調整を入れ
るように検討させていただきます。

現状で回避するとしたら、BOX選択開始コマンドでキーボードで操作すると確実に
なると思います。
あるいは、もしマウスのホイールを左右に倒すことができるようなマウスだとし
たら、ホイールで左右スクロールすることもできるかもしれません。

[ ]
RE:05849 BOX選択時の横スクロールNo.05850
jechabon さん 10/07/14 13:10
 
> 確かに左右スクロールは上下スクロールと違って緩やかになるような調整をして
> いなくて、すごく速くなってしまっていました。
> BOX選択中の左右スクロールが発生しそうなときは緩やかになるような調整を入れ
> るように検討させていただきます。

よろしくお願いします。

> 現状で回避するとしたら、BOX選択開始コマンドでキーボードで操作すると確実に
> なると思います。
> あるいは、もしマウスのホイールを左右に倒すことができるようなマウスだとし
> たら、ホイールで左右スクロールすることもできるかもしれません。

キーボードと併用しているのですが、やはりマウスの方が効率が良いです。
通常(BOX以外)の範囲選択中は、マウスで範囲選択中でもカーソルキー操作で
範囲を変更できますが、BOX選択中の場合はカーソルキーのみ(AltやCtrlを
押さない)を入力するとBOX選択が解除されてしまい、微調整ができません。
このあたりも改善して頂けると助かります。

[ ]
RE:05850 BOX選択時の横スクロールNo.05851
秀丸担当 さん 10/07/14 13:40
 

マウスで通常選択してマウスのボタンを離した後、Shift+カーソルキーで範囲の
調整ができますが、この操作はこちらで試した限りではBOX選択でもできました。

Ctrlキーを押しながらマウスでBOX選択し、マウスのボタンを離し、Shift+カー
ソルキーでBOX選択を維持したまま範囲の調整ができました。

Shiftを押さずにカーソルキー単独の場合はBOX選択は解除されますが、この動作
は通常選択の場合でも同様でした。

マウスで自動スクロールするときの緩やかなスクロールは次のβ版で修正させて
いただきます。

[ ]
RE:05851 BOX選択時の横スクロールNo.05852
jechabon さん 10/07/14 15:25
 
> Shiftを押さずにカーソルキー単独の場合はBOX選択は解除されますが、この動作
> は通常選択の場合でも同様でした。

通常選択もBOX選択も同様でした。失礼しました。

ただ、Shift+カーソルキーや、Ctrl+カーソルキーの操作だと、そのキーに
割り当てられた機能も作用してしまうため都合が悪いです。

範囲選択を解除しないようにすると弊害が大きそうなので、マウスで範囲選択中に、
特別な操作でカーソルキー単独による1文字単位の調整が可能(解除しないモード)
があると便利かと思います。

[ ]
RE:05852 BOX選択時の横スクロールNo.05853
秀丸担当 さん 10/07/14 16:24
 

Shift+カーソルキーに別の機能を割り当てるのは稀なケースだと思うので、
「BOX選択開始」コマンドを以下のマクロで代替するようにするというのでどうで
しょうか。
BOX選択でない場合は通常のBOX選択開始になって、マウスでBOX選択した後にマク
ロを実行するとカーソルキー単独で調整できるようになると思います。

if(rectselecting){
    #x1 = seltopx;
    #y1 = seltopy;
    #x2 = selendx;
    #y2 = selendy;
    if(x!=selendx){
        #x1 = selendx;
        #x2 = seltopx;
    }
    if(y!=selendy){
        #y1 = selendy;
        #y2 = seltopy;
    }
    moveto #x1, #y1;
    beginrect;
    moveto #x2,#y2;
} else {
    beginrect;
}

[ ]
RE:05853 BOX選択時の横スクロールNo.05854
jechabon さん 10/07/14 18:01
 
> Shift+カーソルキーに別の機能を割り当てるのは稀なケースだと思うので、

DOS時代のMifesやFINALエディタ世代だと、Shift+矢印は行頭/行末に
割り当てるのが一般的でした。時代は変わったのですね...(笑)

> 「BOX選択開始」コマンドを以下のマクロで代替するようにするというのでどうで
> しょうか。

ありがとうございます。希望通りの動作になりました!!

[ ]