Ver3.06のマクロ不具合(movetolineno)No.07337
TAKA さん 01/01/31 21:08
 
お久しぶりです。 TAKA です。

秀丸のバージョンが3.06に上がっていたので、さっそく使用してみ
ました。3.05までは正常に動作していたマクロが3.06では正常に動
作しないものがありましたのでお知らせしておきます。

一応、26日以降の発言には一通り目を通したつもりですが、すで
に報告済でしたらすみません。

●その1
今回、禁則処理時のmovetolinenoを修正したそうですが、それによ
り新たな不具合が出たようです。
以下のようなマクロで2桁目にカーソルを移動させようとすると正
常に移動できない場合があります。

//---- ここから(マクロ)
movetolineno 2, 1;
endmacro;
//---- ここまで(マクロ)

以下のようなテキストファイルだとカーソルが1桁目(タブのある
位置)に移動してしまいます。(意図とは違う結果)(本来は「T」
の位置に移動するはず)
「\t」の所は、タブです。
^^^^^^^^^^^^^^^^^^^^^^

//---- ここから(テスト用テキストファイル)
\tTEST
\tTEST
//---- ここまで(テスト用テキストファイル)

以下のようなテキストファイルだとカーソルが2桁目(「T」のあ
る位置)に移動します。(意図通り)

//---- ここから(テスト用テキストファイル)
\tTEST
TEST
//---- ここまで(テスト用テキストファイル)


●その2(すでに報告済みのようですが)
「disabledraw」については、すでに報告済みのようですが、念の
ために報告がなかった現象(アドレス異常)がありましので、お知
らせしておきます。
以下の3行のマクロでアドレス異常を起こします。
Windows NT4.0 では、マクロ実行時にアドレス異常を起こします。
Windows Me では、マクロ実行後、秀丸でいろいろ作業をしている
アドレス異常を起こす場合があります。(特定できず)
OS依存ではなく、メモリの状態だとは思いますが。

//---- ここから(マクロ)
disabledraw;
enabledraw;
endmacro;
//---- ここまで(マクロ)

ちなみに、「disabledraw」か「enabledraw」どちらか片方だけだ
とアドレス異常を起こしません。2つをセットで使用した場合にの
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^
みアドレス異常を起こします。

よく使用するいくつかのマクロが使えなくて困っていますので、
秀丸のβ版を出してもらえないでしょうか? > 秀丸担当さん
β版を出して頂けたら直ぐにテストは出来ます。

#マクロをバリバリ使っている人は結構困っているようですね。

[ ]
RE:07337 Ver3.06のマクロ不具合(movetolNo.07338
番頭++ さん 01/01/31 21:12
 
タブの 2,4,8 の解釈の問題だとおもいますか。

[ ]
RE:07338 Ver3.06のマクロ不具合(movetolNo.07339
TAKA さん 01/01/31 22:50
 
>タブの 2,4,8 の解釈の問題だとおもいますか。

いえ、明らかに違います。

根拠1
movetolinenoの使用はタブの扱いを1つと数えるためです。
ヘルプにもそう書かれています。

根拠2
マクロで指定した1行目と関係ない2行目の内容を変えただけで動
作が異なるためです。

根拠3
Ver3.05までは正常に動作するためです。

根拠3は説明に弱いかもしれませんが、根拠1と根拠2から明らか
に違います。

[ ]
RE:07339 Ver3.06のマクロ不具合(movetolNo.07340
番頭++ さん 01/01/31 23:13
 
タブの計算を間違えば、そうなりませんか。
勘違いかもしれません。そんときにはごめんね ...

[ ]
RE:07340 Ver3.06のマクロ不具合(movetolNo.07343
TAKA さん 01/02/01 00:56
 
>タブの計算を間違えば、そうなりませんか。
>勘違いかもしれません。そんときにはごめんね ...

タブの計算の意味がわかりませんが、ひょっとして、「moveto」と
勘違いされているのではないでしょうか?
私が言っているのは、「movetolineno」なのですが。

根拠2でも書いた通り、「movetolineno」はタブを1としてカウン
トしますので、タブの設定が2、4、8のどの設定でも1としてカ
ウントします。
従って、2桁目に移動させた場合は、タブの設定がどうであっても
テストデータでは、カーソルの位置は「T」の位置でなければなり
ません。

もうひとつ、根拠3でも書いたとおり、全然関係ない行の内容によ
って結果が違うのも明らかにおかしいです。

何にしろ、秀丸担当さんの回答を待ってみようと思います。

[ ]
RE:07343 Ver3.06のマクロ不具合(movetolNo.07345
きいろいまふらあ さん 01/02/01 09:25
 
横から口出すのもアレですが。

> >タブの計算を間違えば、そうなりませんか。
> >勘違いかもしれません。そんときにはごめんね ...
>
> タブの計算の意味がわかりませんが、ひょっとして、「moveto」と
> 勘違いされているのではないでしょうか?
> 私が言っているのは、「movetolineno」なのですが。

番頭++さんの指摘は「秀丸側が内部的にタブ周辺の計算間違いを
してるのでは?」ということなんでは?

P.S. TAKAさん、お久しぶりです〜。(^_^)

[ ]
RE:07345 Ver3.06のマクロ不具合(movetolNo.07353
秀丸担当 さん 01/02/01 17:59
 
>今回、禁則処理時のmovetolinenoを修正したそうですが、それによ
>り新たな不具合が出たようです。

報告ありがとうございます。
確認できました。早急にV3.07で対処したいと思います。


[ ]
RE:07345 Ver3.06のマクロ不具合(movetolNo.07364
TAKA さん 01/02/02 01:18
 
>番頭++さんの指摘は「秀丸側が内部的にタブ周辺の計算間違いを
>してるのでは?」ということなんでは?

それなら、納得です。

最初の「タブの 2,4,8 の解釈の問題だとおもいますか。」という
ところで、ワープロ的に計算した場合に、タブの途中の位置を指
定してカーソルを移動させようとすると、タブの設定によって、タ
ブの方に移動するか、タブの次の文字に移動するかが異なると解釈
してしまいました。

番頭++さんの言いたかったことが、きいろいまふらあさんの言うと
おりなら私の勘違いです。
もしそうなら、すみません。 > 番頭++さん

何にしろ、秀丸担当さんの所でも再現できて次のバージョンで対応
して頂いたようですので、早速チェックしてみようと思います。


>P.S. TAKAさん、お久しぶりです〜。(^_^)

私のこと、覚えててくれましたか。うれしいです。


次からは、β版が出るようになるかもしれませんが、私は大賛成で
す。
α版はなしで、β1、β2、β3というようにβ版のみでいいと思
います。一時的なものですし。

[ ]
RE:07353 Ver3.06のマクロ不具合(movetolNo.07365
TAKA さん 01/02/02 01:43
 
>>今回、禁則処理時のmovetolinenoを修正したそうですが、それによ
>>り新たな不具合が出たようです。
>
>報告ありがとうございます。
>確認できました。早急にV3.07で対処したいと思います。

Ver3.07を、簡単なテキストファイルでしかテストしていませんが、
正常に動作していました。

1.「movetolineno」の不具合は直っていました。

2.「disabledraw」「enabledraw」でのアドレス異常も起きません
でした。

3.「enabledraw」で再描画された際に、カーソル行が下の方に移動
するという不具合も直っていました。

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

明日から、Ver3.07をバリバリ使用します。

[ ]