エディタでの貼り付け時の動作No.01958
"M.OBARA" さん 00/12/06 09:42
 
 小原です。こんにちは。

 エディタでの貼り付け時の動作がちょっと気になりますので報告させて頂
きます。

 新規エディタを開き、本文の1行目で貼り付けを行うと貼り付けた行数分
位スクロールされていまいます。実際はスクロールする必要がないのにスク
ロールしてしまいますのでちょっと不自然に感じます。
 可能でしたら調整お願いいたします。

[ ]
RE:01958 エディタでの貼り付け時の動作No.01983
秀まるお さん 00/12/06 18:11
 
>  新規エディタを開き、本文の1行目で貼り付けを行うと貼り付けた行数分
> 位スクロールされていまいます。実際はスクロールする必要がないのにスク
> ロールしてしまいますのでちょっと不自然に感じます。
>  可能でしたら調整お願いいたします。

 こちらで試してみたんですが、うまく再現しませんでした。

 秀丸エディタ側の動作環境・カーソル・貼り付け後のカーソル位置を

 ・先頭のまま
 ・最後に移動

 はたぶん後者で、さらに、貼り付けする内容はスクロールしないぎりぎりの行数っ
て意味で、それでスクロールアップしてしまうという意味だと思うんですが、違うの
やら?

 スクロールアップするぎりぎりより1行多めに貼り付けすると、うまく1行だけス
クロールアップします。

 エディタの設定で「ヘッダ部分をスクロールしない」をONにしてもOFFにしても結
果は同じでした。

[ ]
RE:01983 エディタでの貼り付け時の動作No.01989
"M.OBARA" さん 00/12/06 18:51
 
 こんにちは、小原です。

> >  新規エディタを開き、本文の1行目で貼り付けを行うと貼り付けた行数分
> > 位スクロールされていまいます。実際はスクロールする必要がないのにスク
> > ロールしてしまいますのでちょっと不自然に感じます。
>
>  こちらで試してみたんですが、うまく再現しませんでした。

 すみません。簡単に再現するかと思って説明が全く足りませんでした。
 そして、本当に申し訳ありません。私のおおぼけでした。

 貼り付け(私の場合は Shift+Insert)ですが、マクロを割り当てていまし
た。割り当てていたことを忘れてしまっていました。
 マクロではなく純粋な「貼り付け」の場合は正しく動作していました。

=============================
 以下は必要ないと思いますが、下記マクロを実行した場合の動作です。
(書いた後に気づいたので...)

 割り当てていたマクロは
    disabledraw;
    paste;
    enabledraw;
です。

>  秀丸エディタ側の動作環境・カーソル・貼り付け後のカーソル位置を
>
>  ・先頭のまま
>  ・最後に移動

 これは影響していないようです。(私の場合は後者にしています。)

>  はたぶん後者で、さらに、貼り付けする内容はスクロールしないぎりぎりの行数っ
> て意味で、それでスクロールアップしてしまうという意味だと思うんですが、違うの
> やら?

 すみません。貼り付けるのは1文字でも大丈夫です。
   ┌────────────
   │Subject:  XXX
   │From:     XXX
   │To:       XXX
   │
 1 │[EOF]
 2 │
 ・│
 ・│
39 │
   └────────────
となっていて、本文に表示出来る行数は 39 行ほどです。
ここで 1 行目に 「あ」 と貼り付けてみてください。すると
   ┌────────────
   │From:     XXX
   │To:       XXX
   │
 1 │あ[EOF]
 2 │
 3 │
 ・│
 ・│
40 │
   └────────────
となり、Subject が画面の範囲外にスクロールアウトします。

>  スクロールアップするぎりぎりより1行多めに貼り付けすると、うまく1行だけス
> クロールアップします。
>
>  エディタの設定で「ヘッダ部分をスクロールしない」をONにしてもOFFにしても結
> 果は同じでした。

 こちらは関係しているようです。
 「ヘッダ部分をスクロールしない」が ON の場合は再現しません。OFF の
場合のみ再現します。

[ ]
RE:01989 エディタでの貼り付け時の動作No.01991
ひろ さん 00/12/06 19:38
 
 M.OBARA さん今日は、ひろです。
> となり、Subject が画面の範囲外にスクロールアウトします。
 これは disabledraw を使っている為です。秀丸の help から引用すると、
> enabledrawが実行された時、カーソルが画面のどの位置に表示されるかは秀丸側が
> 適当に決めてしまいます。これをマクロ側で制御するには、enabledraw文のパラメ
> タで画面の一番上の行番号(ワープロ的に計算した行番号)を指定してください。
となっています。鶴亀の Ver.0.52 から enabledraw の parameter に 0 以
下の数値を指定しても正しく動作するようになりましたので、単純に window
の先頭から表示したいのであれば、
enabledraw -9999;
とすれば良いです。

[ ]
RE:01991 エディタでの貼り付け時の動作No.01994
"M.OBARA" さん 00/12/06 20:40
 
 ひろさんこんにちは。

> > enabledrawが実行された時、カーソルが画面のどの位置に表示されるかは秀丸側が
> > 適当に決めてしまいます。これをマクロ側で制御するには、enabledraw文のパラメ
> > タで画面の一番上の行番号(ワープロ的に計算した行番号)を指定してください。
>
> となっています。鶴亀の Ver.0.52 から enabledraw の parameter に 0 以
> 下の数値を指定しても正しく動作するようになりましたので、単純に window
> の先頭から表示したいのであれば、
> enabledraw -9999;
> とすれば良いです。

 なるほど、ありがとうございます。この仕様は完全に見逃しておりました。

[ ]