ChangeOrientedProgrammingEnvironment/clientRecorder — pull request #14 by caiusb (2013-10-29 00:29:00+00:00)
Title: Refresh recording is here!

I added the recording of refreshes.

There are two known problems with them. None break the thing (i.e. it will still record everything), but some little tricks might be needed to replay.

1. When I have a refresh event, I don't know the length of the old document to populate the "length" field in the JSON. For each refresh event I have a special source called "refresh" and the length and offset are 0. Since the text contains the whole new file, during replay this kind of event must be treated differently.

2. When a file is opened in the editor and the refresh event happens, the change might be recorder twice:
a. in the editor as a change caused by the "user".
b. as a refresh event.
Again, this does not break the tool, since replaying it is still possible. It will just replace the contents of the same editor twice before proceeding. A bit inefficient but should work for now.

I am pushing these changes so we can install it on our machines and start debugging. The current implementation should cover all the cases. I will set up an install site for the plugin so you can download it and also make it easier to push updates. I will send a pull request with that when it's ready.

Cheers,
Caius