M-v - Treat the currently entered text as something to query from the RSLT & view the results
M-a - Treat the currently entered text as something to add to the RSLT, and do so
Esc - Cleanly escape the UI
Semi-reserved symbols:
# - adjacent to an expression indicates that the expression is (one of the labels in) a relationship template. Repeat to increase precedence/force earlier binding. (Alternatively put: Repeat to force further up in the hierarchy.)
( and ) - Encloses multi-word expressions. Useful both for explicitly & for implicitly relating relationship templates
_ - "Blank", Substitute for expressions inside relationship templates (Relationship templates only contain labels)
Reserved words for parsing:
/users integer "Find all Nodes that link to to the given Node" & return them.
/queries - Returns the query history
/all - Returns all nodes
Reserved words & symbols for querying:
/any - Wildcard, matches any expression
/it - Returns the subexpression that appears where /it appears in the query
& - Intersection operator ("and"). Repeat to decrease precedence/force later binding.
| - Union operator ("either"). Repeat to decrease precedence/force later binding.
\ Difference operator ("except"). Repeat to decrease precedence/force later binding.
/eval - Forces early evaluation of a subexpression. Useful for sub-queries.
/branch - Recursively evaluate. Must combine with /from and /to
/from/to
I have no idea yet:
/mb - Similar to /branch, but more flexible - albeit I have no idea how it works because I haven't figured out pRoleMap yet. (Little help here?)
As it stands, the above cheat sheet almost certainly contains errors & remains incomplete - but I've (for now) run out of time for completing it, and will come back to it later.
A "dumb" cheat sheet of all Commands, Syntax & Semantics would help. The ToC of https://github.com/JeffreyBenjaminBrown/digraphs-with-text/blob/master/Hash/the-hash-language.md kind of works as this, but not really. I've tried to write a dump of it here:
Opening an empty UI:
ui empty
M-v
- Treat the currently entered text as something to query from the RSLT & view the resultsM-a
- Treat the currently entered text as something to add to the RSLT, and do soEsc
- Cleanly escape the UISemi-reserved symbols:
#
- adjacent to an expression indicates that the expression is (one of the labels in) a relationship template. Repeat to increase precedence/force earlier binding. (Alternatively put: Repeat to force further up in the hierarchy.)(
and)
- Encloses multi-word expressions. Useful both for explicitly & for implicitly relating relationship templates_
- "Blank", Substitute for expressions inside relationship templates (Relationship templates only contain labels)Reserved words for parsing:
/users integer
"Find all Nodes that link to to the given Node" & return them./queries
- Returns the query history/all
- Returns all nodesReserved words & symbols for querying:
/any
- Wildcard, matches any expression/it
- Returns the subexpression that appears where/it
appears in the query&
- Intersection operator ("and"). Repeat to decrease precedence/force later binding.|
- Union operator ("either"). Repeat to decrease precedence/force later binding.\
Difference operator ("except"). Repeat to decrease precedence/force later binding./eval
- Forces early evaluation of a subexpression. Useful for sub-queries./branch
- Recursively evaluate. Must combine with /from and /to/from
/to
I have no idea yet:
/mb
- Similar to/branch
, but more flexible - albeit I have no idea how it works because I haven't figured outpRoleMap
yet. (Little help here?)Importing/Exporting data via the GHCi prompt:
See here: https://github.com/JeffreyBenjaminBrown/digraphs-with-text/blob/master/introduction/try-the-ui.md#saving-to-disk-and-reading-from-disk
As it stands, the above cheat sheet almost certainly contains errors & remains incomplete - but I've (for now) run out of time for completing it, and will come back to it later.