バグ:テーブル&状態変数ビューでの空フォルダ編集のみした場合上書き保存が正常に行われない
Issue #314
resolved
Build: 2019-07-16 20:18:02 Debug (64-bit)
Compiled by Digital Mars D 2086
WSN、WSMを問わずに起こる症状なのですが、テーブルビューで、空フォルダを新規作成したりそのフォルダ名の編集を行っただけの時点ではxエディタが編集行為が行われたと認識せずに上書き保存が非アクティブなままです。
この状態でヒストリを前後させると上書き保存がアクティブになるので、上書き保存をしてみても
実際には空フォルダの編集は反映されずに保存されているようです。
一方、状態変数ビューにおいては空フォルダ編集で上書き保存がアクティブになるので保存は行えますが、そのデータを開き直すと実際には空フォルダ編集が反映されていないです。
ファイルビューで空フォルダを編集した場合には正常に上書き保存されます
空フォルダの編集のみしてからセーブするというのはあまりない事ではありますが、作業準備的に行うことは考えられ各ビューの挙動が不一致でもあるので問題かと思います。
Comments (4)
-
repo owner -
reporter ご説明と修正ありがとうございます。
了解できましたが、状態変数ビューで、空フォルダを編集した際にもテーブルビューとあわせて上書き保存がアクティブにならない方が良い気はします。 -
repo owner pull request #552
たしかにそうですね。修正(仕様変更に近いが)しました。
-
reporter - changed status to resolved
ありがとうございました。本件は解決ですね。
- Log in to comment
ご報告ありがとうございます。
これは仕様ですが、なぜそうなるかについては説明する必要があります。
CWにおけるエリア・バトル・パッケージのフォルダは既存のデータバージョン4の仕様に後付されたもので、しかもデータ構造そのものは変更しない形で付け加えられました。具体的には、
フォルダ1
の中にあるエリア1
は、フォルダ1\エリア1
という名前で保存されます。つまりエリア名を工夫することでフォルダ構造を表現しています。従って、空フォルダというものは存在する事ができません。ここに本物のフォルダ構造を導入する事はWSN形式なら不可能ではありませんが、CWの従来の仕様と両立させようとすると恐ろしく複雑なものになってしまいます。コストとメリットを天秤にかけるとコストの方が遥かに重くなるため、今のところ試みてすらいません。
これらの事情は、実は状態変数でも同じです。空の状態変数ディレクトリは存在する事ができません。空ディレクトリを作って保存し、ロードすると消えています。
こちらの方がバグです。あとで修正します。