スクロール時のカーソル位置について要望No.38801
nom さん 21/02/28 15:31
 
秀丸エディタを使わせて貰っています。
 windows 8.1
 秀丸エディタ 64bit / ver 8.96

こんなことが出来たら良いな、という点がいくつかあります。
機会があれば検討頂けると助かります。
無くても何とかなっていますが(^_^;

(1)PageUp/Down でのスクロール動作について
 動作環境 − 表示/操作 − カーソル移動
 →[スクロールしてもカーソル位置は固定] 機能について、
 [PageUp/Down した場合でも、カーソル移動しない] 設定があれば、有り難いです。

 現状は、
 (A)マウススクロールの後の PageUp/Down ではカーソル移動しない。
 (B)PageUp/Down のみだとカーソル移動する。

 これを次のように出来るでしょうか?
 (A)マウススクロールの後の PageUp/Down ではカーソル移動しない。
 (B)PageUp/Down のみでもカーソル移動しない。

 需要はあまりないかも知れませんが…

 [ヘルプより]
  ONにすると、ホイールやスクロールバーを使ってスクロールをした場合、
  カーソル位置がスクロールに伴って移動しないようになります。
  PageUp/Downでスクロールした場合は、通常の場合はスクロールに伴って
  カーソルも移動します。
  いったんホイールやスクロールバーを使ってスクロールさせた状態では、
  PageUp/Downでもカーソル位置は移動しないようになります。

(2)「次の行への空行挿入」機能が欲しい。
 [空行挿入] は前の行に追加しますが、次の行への空行挿入があれば
 有り難いです。
 マクロでも簡単に実現できますが、動作がやや遅いので(^_^;
golineend2;
insertreturn;

以上、よろしくお願いします。

[ ]
RE:38801 スクロール時のカーソル位置につNo.38804
秀丸担当 さん 21/03/01 13:16
 

スクロールしてもカーソル位置は固定のときは、確かにPageUp/Downはスクロール
バーかホイール操作の後でないとそういう操作にはならないです。
その状態にすることはできないので、何らかの方法があったらいいです。
設定やマクロか、何らかの方法でできるのを検討しようと思います。

次の行への空行挿入は、そういうコマンドがあったらいいかもしれないですが、既に
やられている通り、マクロでもできると思います。
もしテキストが画面からはみ出していて、横スクロールすることが気になるような場
合、以下のような感じで先にカーソル移動してから改行挿入するといいかもしれませ
ん。
moveto2 0,lineno+1;
insertfix "\n";

[ ]
RE:38804 スクロール時のカーソル位置につNo.38810
nom さん 21/03/03 04:34
 
早速の対応ありがとうございます。
PageUp/Down での動作設定導入、よろしくお願いします。
空行挿入のマクロ、使わせて頂きます。
>moveto2 0,lineno+1;
>insertfix "\n";

[ ]
RE:38810 スクロール時のカーソル位置につNo.38817
秀丸担当 さん 21/03/03 15:26
 

すみません、マクロでもできないと思っていたのですが、マクロの場合は方法があり
ました。
nextpageやprevpageの第2パラメータに1を指定すると常にカーソル位置固定としてス
クロールできました。

例えば、以下の一文をマクロファイル用のフォルダに、pagedown.macとして保存しま
す。
nextpage 0,1;//一画面分の場合

[マクロ]→[マクロ登録...]で例えばマクロ1にpagedown.macを登録します。
[その他]→[キー割り当て...]でPageDownキーにマクロ1を指定します。(「右側の
キー割り当て拡張」をONにする必要があります)
こうしておくと、PageDownキーでカーソルが移動しないスクロールになります。

PageUpの場合は以下のようになります。

prevpage 0,1;//一画面分の場合

スクロール量を1/2ページに指定している場合は、以下のようになります。
nextpage 0-windowheight/2,1;//1/2画面分の場合

prevpage 0-windowheight/2,1;//1/2画面分の場合

[ ]
RE:38817 スクロール時のカーソル位置につNo.38819
nom さん 21/03/04 03:22
 
早速の対応助かります。

マクロ登録・キー登録することで実現できました。
滑らかスクロールには対応していませんが、動作には支障ないので使わせて頂きます。

ありがとうございました。

[ ]