カーソル移動がおかしいNo.10713
h-tom さん 22/03/14 00:14
 
h-tom です。

秀丸エディタ:Ver.9.12β12(64bit)
OS:Windows10 21H2(64bit)

そちらでうまく再現してくれればいいのですが・・・。

サンプルファイル:http://htom.in.coocan.jp/check1_rb.txt ファイルの拡張子は".
rb"に変更してください
強調表示ファイル:http://htom.in.coocan.jp/__dummy.hilight

//check1.rb の内容 ここから
#! ruby -Ku

if /^\* #{cmd:new}/ =~ rd then
//check1.rb の内容 ここまで

サンプルファイルを開き、強調表示ファイルを読み込み、デザインの「対応する括弧
の強調表示」をONにする。

この状況だと問題ないのですが、
変更前:if /^\* #{cmd:new}/ =~ rd then
変更後:if /^\* #\{cmd:new}/ =~ rd then
と内容を変更する。("{cmd:new}"の前にカーソルを移動させ"\"を入力)

1) そのままカーソルキーを使い行末方向に移動させる。
2) "}"を過ぎたら、カーソルキーを使い行頭方向に移動させると、
   ・カーソル自体が動かなくなる。
     ただし、カーソルキーを押しっぱなししておくと「対応する括弧の強調表示」
が効いて、括弧は強調表示される。
     (表示上動いていないけど、内部的には動いているみたい)
   ・強調表示がマッチしない行に移動するとカーソルも移動するようになりますが、
カーソルキーを使い左右に移動させると、
     フリーカーソルモードにはしていないのに改行マーク以降にカーソルが移動し
たりする。
   
   という変な状況になります。
   一度ファイルを閉じて開くと問題なくなる。
  「対応する括弧の強調表示」をOFFしておくと、現象が発生しない。

hmonig.dllが問題かと思い、正規表現エンジンを hmjre.dll に切り替えましたが同
じでした。

持ち出しキットの32bit版でも再現するかと思ったのですが、再現しませんでしたが、
ルーラーのカーソル位置が変になってました。
1)、2)は同じ手順で、カーソル移動は問題ないのですが、ルーラー上のカーソル位置
を示すマークが追従しません。
本来なら変更後は32文字になりますが、カーソルキーで左右に移動した場合、行頭方
向の移動は無視され、行末方向の移動のみ有効な状況になります。
行頭-行末間をカーソルキーで往復させていると、加算はされますが、減っていかな
いという状況です。
http://htom.in.coocan.jp/check1_x86.png
(実際のカーソル位置と、ルーラーのカーソル位置が違っている)

[ ]
RE:10713 カーソル移動がおかしいNo.10714
秀丸担当 さん 22/03/14 09:44
 
バグ情報と詳細な再現手順ありがとうございます。
そのままでは再現できなかったのですが、β10での対応する括弧に関する修正が影響
していそうでした。
意図的に問題を発生させよとしたところ、該当部分をコメントとなる設定にして、コ
メント内で「対応する括弧に移動」コマンドを実行し移動しようとした後に、同じよ
うな問題になることがわかりました。
次のバージョンで修正させていただきます。

[ ]
RE:10714 カーソル移動がおかしいNo.10715
h-tom さん 22/03/14 19:42
 

h-tom です。

>そのままでは再現できなかったのですが、β10での対応する括弧に関する修正が影
>響していそうでした。
β9にしたら現象は発生しなくなったので、やはりβ10の修正が関連するようですね。
次のβ版が出たら確認してみます。

[ ]
RE:10715 カーソル移動がおかしいNo.10716
秀丸担当 さん 22/03/17 16:48
 
V9.12は正式版として公開しました。
対応する括弧の問題の、この件も修正しています。

[ ]
RE:10716 カーソル移動がおかしいNo.10717
h-tom さん 22/03/17 21:47
 
h-tom です。

>V9.12は正式版として公開しました。
>対応する括弧の問題の、この件も修正しています。
Ver.9.12正式版の64bit版・32bit版(持ち出しキット)で確認しました。
問題ありません。

[ ]