秀丸エディタのマークは「秀丸エディタ以外で更新される」と位置がズレる

秀丸エディタのマーク位置がズレる原因がやっとわかったのでまとめておく。

対象バージョン

  • 秀丸エディタ V8.69

レポート

たとえば a.txt の 1000 行目にマークを付けたとする。

a.txt を秀丸エディタで編集している限りは、a.txt を編集しても(マークした部分が 1000 行以外の行番号になっても)マーク位置は正確に保持される。

しかし a.txt が 秀丸エディタ以外の手段で更新され、マーク位置の行番号が変わってしまった場合、マーク位置は反映されない。たとえば a.txt をメモ帳で開いて、先頭に 5 行の空行を追加したとすると、マーク位置が 5 行ほどズレてしまう。

なぜズレてしまう?

Ans: たぶんだが秀丸エディタの「マーク位置を追従する仕組み」のせいだろう。

一度マークした位置(行数)は、ファイル内容の変更(行の増減)により変化してしまうが、秀丸エディタはこれをちゃんと追従してくれる。この追従だが、秀丸エディタで当該ファイル(マークを付けたファイル)を編集している時に動的に更新する ことで実現されている。実際、行番号エリアのマークの目印(緑色の背景)は、行の増減に応じてズレるはずだ。

これは言い換えれば「秀丸エディタで編集している時にしか追従できない」とも言える。

したがって、秀丸エディタ以外の方法で編集(行を増減)した場合は、追従もできない。マーク位置はズレてしまう……。