EditorConfigの挙動
-
EditorConfigの導入でとても便利になりました。
その際少し気になる点があります。
例えば30行ほどのもの(内容は何でも何行でも良いです)で2行目(何行目でも良いです)を編集したとしてそこで保存した時点でEditorConfig機能する仕様だと思うのですが、そこで元に戻す・やり直しを行った際カーソルが編集した行ではなく最後の行まで行ってしまいます。
最後の行を触ったような挙動ではなく、編集していた行からの再開と言いますか何かしら対処などを
行うことはできるものなのでしょうか?
うまく説明できず申し訳ございません。| ZZT | 返信 -
Mery をご愛用いただきありがとうございます。
そう言っていただけると EditorConfig に対応した甲斐がありました。
> 例えば30行ほどのもの(内容は何でも何行でも良いです)で2行目(何行目でも良いです)を編集したとしてそこで保存した時点でEditorConfig機能する仕様だと思うのですが、そこで元に戻す・やり直しを行った際カーソルが編集した行ではなく最後の行まで行ってしまいます。
これは恐らく .editorconfig に以下の設定があるためだと思います。
trim_trailing_whitespace = true insert_final_newline = true
この 2 つはいずれも保存時にテキスト全体を整形して [すべて置換] する仕組みなので、元に戻す→やり直しの操作は [すべて置換] 直後の状態ということになりますから、カーソル位置がテキストの末尾になってしまいます。
特に必要なければこの 2 つのオプションを無効 (false ではなく項目ごと削除) にしていただければ改善されると思います。
しかし、この 2 つのオプションを有効にした状態でカーソル位置を維持する必要がある場合は、現在の仕様では対応できないため EditorConfig プラグインではなく、Mery 本体のプログラムのカスタマイズが必要です。
次のバージョンでは対応できると思いますが、Ver 3.0.0 をリリースしたばかりなので次のリリース日は未定です。
Ver 3.0.0 でバグが出ればそのときの修正に含めることは可能だと思うので今しばらくお待ちくださいませ。
| Kuro | 返信 -
イベントマクロふたつ(ファイルを保存する前/ファイルを保存した時)で監視すればいけそうとおもって書き始めてみたら、「保存して閉じる」または「閉じる」ときの保存確認で上書き保存したばあいにワークスペース機能に保存前の位置情報を渡せないので、マクロだとかなりきびしそうです。 :(
Tag プロパティだとエディタの再起動またぎのやりとりができませんし、include/IO.js だと JSON ファイルの肥大化対策の処理も必要になりますからイベントマクロ向けの軽いものにはできなさそうなかんじで…。ムダな抵抗はやめて次のバージョンを静かに待つのが吉みたいですね。 :D
| sukemaru | 返信 -
丁寧なご回答いただきありがとうございます。
そういった仕様なのですね。
現状ご教示いただいた形で次期バージョンアップを待とうと思います。
ありがとうございました。| ZZT | 返信