-
Notifications
You must be signed in to change notification settings - Fork 16
What you need to know to use Semantic Synchrony
SmSn lets you edit a knowledge base or graph.
It consists of passages of writing called notes, connected by arrows. [It will be expanded to include other data types -- pictures, sound, ..]
A note's text can have any length. The note also has an address, a set of 16 alphanumeric characters. Addresses are usually provided between ":" marks, so they look something like this: :axMIDS0EmKQXqMnm:. In addition to text and address, notes have other properties, described later.
Each arrow starts at one note and ends at another. If there is an edge from x to y, we say that x is the parent of y, y is the child of x.
Each note can be a child of any of the other notes. A note can be its own child. A note can have many parents and many children.
In contrast to a traditional table of contents or filesystem, the notes in the graph can, by having multiple parents, effectively "be" in more than one "place" at once. Whereas in a traditional filesystem, files can become so far apart that they get lost, in a graph, any two things that should be neighbors can be neighbors, forever ever. There is no red shift, no rule of entropy, no universal expansion ripping the data apart.
A buffer in Emacs is a collection of text. A buffer can represent a file, or a folder in your hard drive, or a list of messages (e.g. warnings and errors) from Emacs to the user -- Emacs is very flexible that way. It also lets you keep the same buffer open in two separate windows, which is handy for comparing two distant parts of the same buffer.
Each view of the graph generated in smsn-mode is assigned its own buffer. If you view the buffer list (C-x C-b), it can look like you've got a lot of files open, but they're all just views onto the same graph. When you run a search in smsn, its search results are presented in a new buffer.
The two most commonly used views are forward-view and backward-view. Both of them presume some root node, which could be thought of as the view's focus, or center. In forward-view, the root's children are visible. The root is a note, and so are the children, but whereas the children are in the buffer, the root is only visible as the title of the buffer.
In backward-view, the root (and buffer title) remains the same, but the buffer now displays the root's parents.
The user can view the forward-tree or the backward-tree to a depth between 1 and 7. A forward-view with a depth of 1 shows only children; depth 2 shows children and grandchildren; etc.
SmSn consists of two parts. The client or front end, Emacs in smsn-mode, is thethe part the user interacts with. The back end or server is the part that hosts the graph. The front end displays a window of text representing some portion of the graph, and the user can edit that stuff. However, the user's edits do not immediately affect the graph. Rather, the user must choose to "push" them to the graph. To push to the graph is to save the your changes.
A user can have multiple buffers (they're like windows) open at once, with unsaved changes in each. When they push their changes, they push only the changes made to the current buffer.