As some of you know, I have been working on enhancements to Sugar view source. I have patches to enable the user to make a copy of the activity bundle being viewed with the intention that it be modified. The question is, how does the user modify their copy of the activity?<br>
<br>Of course, more advanced users will open a Terminal and use their favorite editor (Emacs, naturally). But it would also be nice to be able to make edits directly from Sugar.<br><br>I began modifying the Edit activity but then realized that I was opening a can of worms:<br>
<br>* What happens if there is a collision?<br>* What happens if the file is moved or deleted?<br>* Does deleting the datastore instance mean we should also delete the filesystem instance?<br>etc.<br><br>So what I am thinking is sticking to copy-on-write. When you open a file from outside of Sugar, you are creating a copy, which lives in the datastore. Only if you explicitly save that copy back to the file system does your change impact the original file. Does that make sense? Should I enable general writing of files from Edit into the file system or restrict this to files opened from the file system? Or is this too dangerous or potentially confusing to our users?<br>
<br>-walter<br clear="all"><br>-- <br>Walter Bender<br>Sugar Labs<br><a href="http://www.sugarlabs.org">http://www.sugarlabs.org</a><br><br>