File contents

Events

If there is a user command that will subsequently cause another command use do/did e.g. doOpenFile and didOpenFile

Stream

If there is something that we care about initially as well as updates use foo/fooUpdated e.g. fileList/fileListUpdated

line , ch

Always 0 based, unless explicitly marked to be different.

Dependency

Workers and worker-like state modules (file listing, active project) do not explicitly depend on the socketServer. Instead they provide an event that the socket can pipe to cast. Reason, preventing cycles : these modules generally provide a function called from sockets as well (socket -> module) and therefore module using socket will create a cycle.

UI / DTO / Disk

Sometimes we have version of the same data between the UI / backend. For this we have: