-
Notifications
You must be signed in to change notification settings - Fork 2
3. Functions
This section describes the functions of some of the main features currently under development for Rezonator.
Menu
Panes
Zones
Modes
Link
Tag
Pack
Save
Search
Language
Miscellaneous
Name changes
The following table contains lists Rezonator functions, with brief descriptions and keyboard shortcuts. The table defines the menu of Rezonator functions, as implemented in Rezonator (current beta version).
Where possible, standard keystroke conventions are used that will be familiar to most computer users. For information on typical conventions for common computer platforms, see the Wikipedia page on keyboard shortcuts.
* Asterisk indicates a function that is not currently implemented
Key | Function | Description | Menu |
---|---|---|---|
[CLICK] | Focus | Focus a word (and add to chain) | Link |
[ESC], q | Quit | Quit adding words to the current chain | Link |
[DEL] | Zap | Remove a word from a chain | Link |
r | Rez | Start a new Rez chain | Link |
t | Track | Start a new Track | Link |
k | Stack | Start a new Stack | Link |
c | Clique | Move to Clique tab] | Link |
[drag word] | QuickLink | Drag from word to make multiple links | Link |
[drag line] | QuickStack | Drag from line or space to make a QuickStack | Link |
p | Pick | add focused element to pickList | Pick |
NOTE: | If the current focused element is in more than one stack or chain, the preference order for the "Pick" function is: (1) Clique, (2) Stack, (3) Track, (4) Rez | ||
CTRL+p | Filter | Show just the current picks | Pick |
CTRL+t | Align | Align current Track | Pick |
[SPACEBAR] | Play | Play/Pause audio [toggle] | *Play |
CTRL+[SPACEBAR] | Rez-Play | Play/Pause Rez-chains and audio [toggle] | *Play |
m | Mute | Mute audio [toggle] | *Play |
f | Find | Find all instances of a word | Search |
g | Go | go to user-specified line | Search |
j | Justify | Justification/spacing of words [toggle] | View |
w | Word-form | display words vs. transcriptions | View |
v | View | view main screen vs. search screen | View |
b | Dark theme | use Dark theme | View |
CTRL+- [minus] | Zoom-out | Smaller columns (more info) | View |
CTRL++ [plus] | Zoom-in | Larger columns (less info) | View |
SHIFT+- [minus] | Short | Smaller line height (more info) | View |
SHIFT++ [plus] | Tall | Larger line height (less info) | View |
CTRL/CMD+s | Save | Save file | File |
CTRL/CMD+o | Open | Open file or project | File |
↑ | Up | move up to previous line | Move |
↓ | Down | move down to next line | Move |
← | Left | move left | Move |
→ | Right | move right | Move |
[HOME] | Home | Jump to beginning of current line (first column) | Move |
CTRL+← | Home | Jump to beginning of current line (first column) [alternative] | Move |
[END] | End | Jump to end of current line (last word) | Move |
CTRL+→ | End | Jump to end of current line (last word) [alternative] | Move |
[PAGEUP] | PageUp | scroll up one screen at a time | Move |
[PAGEDOWN] | PageDown | scroll down one screen at a time | Move |
CTRL+↑ | First | Jump to first line of conversation | Move |
CTRL+↓ | Last | Jump to last line of conversation | Move |
[TAB] | Next | move to next pane (Nav, Detail, Main) | Move |
[SHIFT+TAB] | *move to next word/line in current chain | Move | |
e | Shuffle | sort lines in random order | Advanced |
ALT+SHIFT+u | User-word | insert a new word | Advanced |
ALT+SHIFT+d | Developer | turn on developer variables and messages | Advanced |
... | Download | Download Rezonator | About |
... | About us | For more information, go to Rezonator.com | About |
The Rezonator display is organized in terms of several panes, or regions of the screen display. Each pane is designed to present a different kind of information, or support a user activity. By default, some panes are almost always displayed, but many panes are optional. For example, the mainPane displays the words of a conversation and is almost always visible; it is usually accompanied by other panes that indicate who the speaker is, and so on. A pane can be activated or deactivated by the user, or controlled by the game play, or by the research mode. For example, the user can scroll to the far right ("off the screen") to see marginRight, and click on it to pin it to the right side. By default, the mainPane and marginLeft are pinned on. The Panel, with its various panes, can be activated and pinned by a single keystroke (toggled on or off).
Zone | Description |
---|---|
Board | The overall organization of the screen, incorporating several panes (main pane plus panes/bars to the left, right, top, bottom) |
Panel | Navigator/Control panel, which typically docks at the top of the screen. Various user-selectable panes have sets of user-selectable contents and functions. |
paneX, paneY... | Each pane is designed to present a window onto a certain set of items, objects, and/or information. For example, a user-selectable list, or contents, etc. |
toolBox | toolBox contains a set of buttons arranged in columns. By default it appears on the far right of the Navigator panel. |
paneMain | This is the central area of the screen, where the words of a conversation normally appear. The paneMain has a centerRow and a centerColumn. |
centerRow | The centerRow is used for maintaining the focused element in the middle of the screen. It should be updated only when necessary to keep the focused element visible; updating it too often is disruptive for the user. |
centerColumn | In Find mode, the centerColumn is used to display the search term. The centerColumn is column 0, with columns 1, 2, 3... to the right, and -1, -2, -3 to the left. The centerColumn is also used for aligning anaphChains (=trackChains). |
marginLeft | This area of the screen is a bar on the left margin, containing columns for several user-selectable fields: Discourse, Actor (= speaker/participant), Addressee, Line number, etc. ... |
marginRight | This area of the screen contains columns for several user-selectable fields, in reverse order (right to left): Disco, Agent (= speaker), Addressee, Line ... |
marginTop | This area of the screen is a bar located along the top edge of the main screen. It could be useful for game objects (e.g. word cannons pointed down, etc.), or for column headers, etc. For most Board configurations, it would probably not be used. |
marginBottom | This area of the screen is a bar located along the bottom edge of the main screen. It could be useful for game objects (e.g. word cannons pointed up, etc.), column labels, etc. For most Board configurations, it would probably not be used. |
Each mode represents a distinct activity or functional context in the Rezonator, within which users see the currently relevant objects, and choose from a set of currently appropriate actions or functions. The actions are known as moves. In a given mode, users intuitively expect a certain set of moves to be available. These should be facilitated by Rezonator. Switching to a different mode may change the repertoire of moves available to the user. In some cases it may change how a move is applied or interpreted. Switching between modes may be initiated by the user, or by game play, or by stages in an analytical or research procedure, etc.
To some extent, the mode is conceptual -- a state of mind. A mode represents an expectation: the array of moves that the user expects to have access to at any given moment. That said, it may be preferable for many if not all Rezonator functions to be mode-free. That is, most moves may be available at all times, even if the user is not aware of them as currently relevant and applicable. The balance between mode-free flexibility (full-time availability of functions and moves) vs. a more constrained system of limited options is a matter of art as much as design. Still, it is useful for the designers to think of which functions/moves should be highlighted for the user at any given time.
For game design, it is clear that only a limited repertoire of moves will be available to the player at a given point in the game.
If the mode changes, this should be clearly indicated to the user in some way, e.g. by changes in the cursor, background color, graphics, screen borders, and/or other visuals. It may also change which options are displayed to the user (e.g. as options in a contextual menu).
The following table represents the modes that are relevant to the highest level of organization in Rezonator. This represents the most general grouping or classification of functions. It may be useful to implement additional submodes, as finer distinctions among these modes.
Mode | Description |
---|---|
load | Load data files into the Rezonator (such as corpus data and/or user markup), using JSON, XML, CSV |
save | Save the current state of the Rezonator (including user-generated data), using JSON, XML, CSV |
link | Markup rez-links between pairs of words etc. (e.g. rez, track, stack, etc.) |
tag | Attach tags and labels to words, units, etc., via drop-down lists and typing |
check | Check another user's markup and coding; Compare and resolve differences |
find | Search for word (text or transcript), time, speaker, etc. … |
track | Track a referent (anaphora) or word (concordance) through a discourse; Allow users to sort results by search term, left context, right context... |
game | Play a game (solo, multi-player, online...) |
score | Assign scores to resonance, game play |
watch | Watch a game replay, puzzle solution, or tutorial |
learn | Study puzzles, learn rules, strategies, etc. |
quiz | Test your knowledge |
(Reference: 3.2.1 Link mode)
Link mode is an important mode in Rezonator. Users can link words together to form a Rez chain or Track chain; or link lines or units to create a stack, a set of lines for further analysis or game play. They may choose to split an existing line into two, or merge two lines into one; and so on.
Move | Description |
---|---|
link | Link two words together, vertically aligning them, creating a link in a chain |
stack | Link two or more lines together, to create a stack of resonating lines (with potentially resonating words) |
zap | Eliminate a word from a span or chain, or a line from a stack [=DELETE] |
zip | Link multiple pairs of words together, vertically aligning each pair as a link |
clone | Fill a blank cell by repeating the (resonating) word of the cell above, and link it to the above word. Cloned words are displayed in strikethrough font, to show that they were not actually uttered by anyone. |
span | Mark two or more words as a span (a phrase) |
swap | Swap the sequence of two adjacent words, and put special brackets {} to mark the swapped word, in order to facilitate a rez-link |
warp | For pairs of crossing rez-links, treat the crossed pairs as a unit |
ghost | For pairs of crossing rez-links, calculate one word's column/position based on its 'ghost' |
flip | flip/reverse the vertical sequence of two lines, to allow for a better stack |
zero | Create a new “word”, which is a “zero” (for example, to show that the subject of a given verb is shared with another verb) |
copy | Copy links (and associated tags) from one tier to another (e.g. copy the words/links of an existing trackChain into a new rezChain) |
trace | Create a new “word”, which is a “trace") (for example, to show where a the counterpart to a question word would normally appear in the sentence) |
split | Split a line into two lines, for purposes of resonance marking; or split a stack in two, horizontally creating two separate stacks |
merge | Merge two chains into one chain, or two stacks into one stack, or two lines into one line |
bridge | Mark a (long) line of text as a bridge between two stacks |
join | Join one unit to another unit, via a specific word. That is, link a word in a unit to a word in another unit, tying the two units together. (This is a VERY IMPORTANT function, providing a dialogic syntax strategy for dealing with clones (so-called "deletion under identity") and zero anaphora (e.g. allowing multiple verbs in discourse sequence to share the same overt subject pronoun or noun phrase). [Requires special capacity for LINK function, to link a word to a unit, via another word. Like the bond between paired chromosomes.] |
Tags are small bits of information -- annotations -- that may be optionally attached to a word, unit, or other linguistic element. They are defined, minimally, by a field-value pair, plus an ID value:
- the ID of the word or unit they are attached to
- the field (or attribute) to be specified
- the value for the field or attribute
The structure of tags may be implemented according to the pattern of JSON tags. In principle, tags may be validated against a JSON schema. For information on JSON schemas, see:
- What is a JSON schema?
- JSON schema: Getting Started Step-By-Step
- Understanding JSON schema
- JSON schema: Miscellaneous examples
- JSON schema: Card example
Of particular interest is the approach to tags and schemas taken by Digital Linguistics (DLx):
- Data Format for Digital Linguistics
- Tags (Digital Linguistics)
- Morph (morpheme token)
- Discourse ("Text")
Tags are inserted in "Tag mode". Tag mode is selected when a Rezonator user wants to markup their discourse data by adding tags (for example, adding a tag to a word, or to a unit). This mode is especially important for researchers who need to annotate original data (for example, data used to establish a gold standard for resonance in a corpus of conversation).
Move | Description |
---|---|
tag | Choose a label to be attached to a word, from a list of tags |
rate | Rate a link between a pair of words, or pair of lines, or other items, according to a standard scale (e.g. 5 stars, Likert scale with numbers 1-7, etc.) |
parse | Manually mark the syntactic analysis for a phrase or unit |
check | Check another user's annotation, examining and evaluating differences |
fix | Correct an error (e.g. spelling, transcription). Correction attaches a note with username/signature, but doesn't change the underlying database. |
sign | Indicate who the author of the annotation is (automatically from user ID) |
In Pack mode, a user prepares a stack of resonating lines ("packs" it), in preparation for shipping it. The user starts by selecting a set of lines (a stack) with the intention to make a box (= diagraph). The user performs various "editing" functions on the elements in the stack, before committing to the final "packed" structure. How a box is packed will make a big difference in the score. This is because the packing process shows a more nuanced awareness of the different structures and strategies that make up the resonance within a diagraph. To pack up a stack of resonating elements, the user specifies which elements in the stack shoulds be counted as actual resonance, and which elements should not be counted. Additionally, the user may specify whether the resonance is frame resonance or focal resonance. By making the effort to pack the box in an intuitive fashion before shipping it, the user will ensure that only the resonance that was intended by the original participants is counted as resonance. The packing process also helps to identify common resonance strategies ("think wrap", focal resonance, etc.) that interlocutors may use. This ensures that when the diagraph is finally shipped, it will be ensured a proper evaluation, and the score it receieves will be accurate and fair.
Move | Description |
---|---|
pack | Initiate the packing process, for a given stack of units/lines, and the resonance links they contain (matched words). |
box | Mark a rectangular box around the rows and columns to be included in the box (diagraph). This allows users to specify some elements as "outside the box", that is, they are to be ignored in scoring the diagraph. |
zap | Delete a line/unit from the current stack. This removes it from the box, along with any plus or minus points. |
shade | Mark empty cells, that fail to contribute to the resonance |
spur | Mark an element as a "spur", that is, orthogonal to the main dimension of resonance. Spurs are not counted as defining a column, so they can be useful for a word that introduces a column which has many empty cells (since empty cells are penalized in the scoring). The user should invoke a spur with care, only when it is valid; invalid spurs will incur a penalty. |
wrap | (This is a special type of spur, with similar properties affecting scoring etc.) Mark an element as "wrapping" another element (e.g. its complement clause). For example, a higher matrix verb (epistemic, affective, saying, evaluation) envelopes a propositional complement. Subtypes include: think wrap, feel wrap, speak wrap, judge wrap. |
shrink | Tighten up the perimeter, eliminating empty cells from the outer edges of the box (while keeping internal empty cells). The result is no longer a simple rectangle, but an irregular line that fully encloses the cells of the (revised) diagraph. |
braid | When multiple links connect between the same source and goal, bundle together them together, for greater strength |
prune | Eliminate weak links |
frame | Mark resonance as frame resonance or focal resonance |
ship | Commit the packed box (after the user is done packing) |
AI. The packing process is also subject to machine learning, so that Rezonator can assist by automatically implementing some of the standard packing strategies.
Using JSON to save and load, export and import
Juju Adams on JSON and data handling in GameMaker
Spaulding on JSON export-import
Import python & JSON to GameMaker Studio project (?) https://www.youtube.com/watch?v=TBkKbkW9N-0
https://www.youtube.com/watch?v=djCYRXow8ro&index=3&list=PLPRT_JORnIupBf47mR84Btyrr6FnJQb84&t=70s
This document describes the various search functions in Rezonator, presenting the strategies, variables, and data structures (e.g. grids) that are relevant to implementing the functions. Beginning with the familiar findAll function, it goes on to describe related functions including the concordance, dual search (a.k.a. gap search), and Heat Map functions. The functions are listed in priority order, most important first.
The distinctive Rezonator approach to search functions depends on creating a hitGrid, containing the results of the search ("hits") plus other relevant information, such as a list of gap words. Thus the page describing the hitGrid should be consulted in conjunction with the current page.
The findAll function is designed to collect hits from a search space (i.e. a search domain), and to display them in an intuitive and useful fashion. A "hit" is a word instance that matches a user-specified search expression. In the simplest case, the user types a string that defines the search expression, directly representing the string to be searched for.
To achieve its results, the FindAll function constructs the hitGrid. Because each hit is a word instance (a.k.a. word token), it has a unique wordID, which is represented in the hitGrid. By default, the FindAll function (1) searches for whole words; (2) searches in the Text field of the word (not the Transcript field); (3) is case-insensitive.
In the simplest version of the display, the hits are simply highlighted "in place", i.e. displayed in their normal location in the discourse view. (This is similar to the FindAll function in a standard text editor such as Notepad++). Alternatively, in the Concordance view, the hits are centered in a column running down the middle of the display ("Column 0"), and text that is not associated with any hit is not displayed.
For more advanced searches, a wild card may be included along with the literal string. In addition, an advanced search may specify the word class (noun, verb, etc.), and may specify the Place of the word, or the location/sequence within its Unit. (That is, users can search for a specific word when it appears as the first word of the intonation unit, or the last word, or second to last word, etc.). Another advanced search function is the double search, in which two search expressions are specified, along with a "gap" which allows one or more words to appear between them. In the Concordance view, important Gap statistics (information about Gap length, etc.) can be displayed in the right margin.
Most of the values for the variables indicated below are retained and represented in the hitGrid itself. (A few variables, such as searchSpace, may not be needed.)
The FindAll function may be used as the basis of a concordance display, as well as a a simple findNext function, and the Heat Map (see below).
Variable | Description |
---|---|
hitID | unique identifier for each hit (Hit = word instance that matches the search expression; represented by its wordID) |
Hit | If the word is a hit (i.e. matches the search expression), set to TRUE. But if the word is only in the hitGrid as a "guest" (i.e. it is only present because it is part of the context of a word that actually is a hit), set to FALSE. |
Dead | By default, set to FALSE, meaning that the hit is alive or active. If the user manually deletes a hit from the list of hits, set Dead = TRUE. |
searchSpace | Where to search for hits (e.g. unitGrid, lineGrid, current Stack, current Rezchain, current Trackchain, etc.). Default: searchSpace = unitGrid. |
displayConcordance | By default, set to FALSE. That is, hits are highlighted "in place", in their normal location in the discourse view (similar to Notepad++ FindAll). If set to TRUE, hits are centered in a column running down the middle of the display ("Column 0"), and information about Gap length (etc.) is displayed in the right margin. |
searchTokens | By default, the search is limited to words only (i.e. entries for actual words, which the wordGrid value for Kind = word). (Default: searchTokens = FALSE). Alternatively, the search can include not just words but all tokens, e.g. pause, breath, laugh, grunt (searchTokens = TRUE). |
searchTranscript | By default, the search looks at the word's Text field to see if it matches the search expression (searchTranscript = FALSE). Alternatively, it can look at the word's Transcript field (searchTranscript = TRUE). |
matchCase | By default, the search is case insensitive (matchCase = FALSE). Alternatively, the user can specify that the search is case sensitive (matchCase = TRUE). |
searchExpression1 | user-specified string to search for. May include wild cards (* = any number of characters; % = 0 or 1 character). Eventually, may include regular expressions. |
searchPlaceMin1 | user-specified minimum value for Place (formerly wordSeq), counting within the Unit of the current word; to be included as an additional constraint on the words returned as hits. Positive integers count forward from the first word in the Unit; negative integers count backward from the last word in the unit. |
searchPlaceMax1 | user-specified maximum value for Place (same as searchPlaceMin1). Cannot be less than the minimum value. If minimum and maximum value are the same, specifies exactly one Place. If no value is specified by user, set searchPlaceMax1 to the same as searchPlaceMin1. |
searchTag1 | user-specified tag (e.g. wordClass = noun, verb, etc.), to included as an additional constraint on the words returned as hits |
hit1WordID | wordID of the hit (for hits corresponding to the first search expression) |
hit1Text | wordText of the hit (for hits corresponding to the first search expression) |
contextPriorLength | User-specified number of words to collect as the pre-hit context (default=50 words) |
contextPostLength | User-specified number of words to collect as the post-hit context (default=50 words) |
contextPriorList | Ordered list of wordID's for words that appear in the immediate prior context of the hit. In a single search, these are the words that precede the search expression. In a double search, these are the words that precede the first search expression. |
contextPostList | Ordered list of wordID's for words that appear in the immediate post context of the hit. In a single search, these are the words that follow the search expression. In a double search, these are the words that follow the second search expression. |
FindNext is a simple function, which moves the cursor to the next instance of a word that satisfies the search expression. This resembles the "Find Next" function of many text editors, word processors, etc. (The default is to search down, but searching up can be specified by the user too.)
(The FindNext function can be considered a simplified version of the FindAll function, with a limited subset of options.)
Once the FindAll function is in place, it is a fairly simple next step to create a basic Heat Map. In effect, the Heat Map uses the FindAll function to implement a ready-made search that focuses on certain elements that correlate with emotional, affective, or interactional "heat". For example, laughter, interjections, speech overlap, etc. are likely to point to relatively lively portions of the discourse. In the Heat Map, laughter may be specially marked (for example, highlighted with a yellow background). The Heat Map is sensitive to the intensity of the laughter: the more laugh pulses in a given intonation unit, the deeper the color saturation. (Note that one pulse of laughter corresponds to one "@" sign.) In addition, words that are nearby get a spill-over effect: within a specified distance of a cluster of multiple @ signs, the words receive a mild yellow coloring (less saturated).
The dual search function is largely based on the single search function. It mostly uses the same strategies and variables, plus a few more. Each pair of search expressions in a dual search produces a pair of hits, but also allows for a gap between them. The gap between the paired hits contains one or more words (actually, zero or more). The list of words occurring in the gap can be interesting. Also interesting is the length of the gap (measured in words or seconds, etc.)
Table 2 presents a schematic mock-up of the dual search screen. It shows the user input, specifying the two search expressions, and also specifying how long the gap should be (by default, zero to 5 words).
For "Place", a positive integer indicates where in the unit the word appears (1st word, 2nd word, 3rd word....). In contrast, a negative integer (-1, -2, -3) counts off from the end of the unit (last word, 2nd to last word...).
The "Tag" option (left blank in this example) allows users to search by tags (e.g. part of speech).
Search | Search 1 | Gap | Search 2 |
---|---|---|---|
Word | I | that | |
Place | 1 | 0-5 | -1 |
Tag |
The following table shows a partial sample of the search results:
Hits | Prior Context | Hit 1 | Gap | Hit 2 | Post Context | Gap Stats |
---|---|---|---|---|---|---|
Hit 1 | if that's what you think. | ... I | think that's nice | that, | ... they invited you to his birthday, | 4 words |
Hit 2 | ... be utilized, .. effectively and efficiently, ... to get a bigger bang for the buck. PATTY; ... kay XX, | I | just wanted to say | that, | .. there's also some other opportunities for, ...um, ... organizations that are new, .. in the networking process, | 4 words |
Table 4 lists the variables relevant to the dual search function. The additional variables, supplementing those required for a single search, pertain to the specification of two search expressions instead of one, and to the gap between the two hits.
Variable | Description |
---|---|
searchExpression2 | A second user-specified string to search for. This is a "double search". Users may choose to specify this or not. Same as searchExpression1. |
searchPlaceMin2 | Similar to searchPlaceMin1. |
searchPlaceMax2 | Similar to searchPlaceMax1. |
searchTag2 | Similar to searchTag1. |
gapLengthMin | User-specified value for the minimum number of words that can occur between the first and second search expression. Only relevant for double searches (searches with two search expressions specified). Default is 0. |
gapLengthMax | User-specified value for the maximum number of words that can occur between the first and second search expression. Only relevant for double searches (searches with two search expressions specified). Default is 5. |
hit2WordID | wordID of the hit, for hits corresponding to the second search expression. (Similar to hit1WordID) |
hit2Text | wordText of the hit, for hits corresponding to the second search expression.(Similar to hit1WordText) |
gapList | Ordered list of wordID's for words that appear in the gap between the two hits (when two search expressions are specified) |
gapLengthWords | Count of the number of words in the gap |
gapLengthTokens | Count of the number of tokens in the gap |
gapLengthUnits | Count of the number of boundaries between units in the gap |
gapLengthTime | Count of the number of seconds (and milliseconds) in the gap |
This table describes features relevant to languages, alphabets, and character encoding.
Feature | Description |
---|---|
CharacterSet | Unicode |
Encoding | UTF-8 |
Font | Noto Sans |
Language | Specify the (main) language used in the discourse (e.g. English, Spanish, Arabic, Chinese, etc.). |
OtherLanguages | If more than one language is used, list the additional languages used in the discourse, in frequency order. |
LanguageDirection | What is the direction of alphabetic writing in the main language? leftToRight, rightToLeft, topToBottom, boustrophedon (norm = leftToRight) |
ScreenDirection | norm, forward, reverse (norm = forward) |
*OrderSource | What determines the order of elements on the screen? Sequence, time, alphabetic, weight, tree, graph, random (norm = sequence) |
*Timeline | cyclic [default] (speech, song, etc.), score (like a musical score; cf. MPI Elan) |
*Space | writing [default] (sequence of words follows the conventions of written language); graphics (visual data, e.g. advertisements, memes, magazine layouts, pdf’s, screenshots, video…); event (articulatory phonology, etc.) |
*=features for later
This section presents several features, for (possible) future development.
In Cam mode, users can choose a dynamic, moving view that will follow the hit words in situ. The user can specify what the camera view should follow:
- the track of a referent through a discourse: Watching a referent involves tracks (anaphoric relations) between noun phrases and pronouns
- the hits of a FindAll word search; tracking a word means creating a concordance of all instances of a user-specified word (as specified via the feature of text, transcription, or lemma)
- the words in a Rez chain.
Move | Description |
---|---|
cam | Zoom in on the track of a referent or word, following a moving camera. (1) Search for a referent by its assigned name, or (2) search for a word. |
watch | Follow the track of a referent, or the hits of a word, moving from one occurrence to the next. |
The board shape state defines the shape and configuration of the game board. The shape of the game board is interesting, because it governs possible moves in Rezonator.
State | Description |
---|---|
grid | standard grid (with as many rows/columns as needed), as if for infinite chess [= NORM] |
page | no grid; words are displayed as text on a page (word processor document style) |
hit | words are displayed as hits, concordance style: centered with context |
time | words are displayed along a timeline, from left to right |
score | like a musical score, a bundle of infinite scrollable rows, with one row per actor/speaker |
hex | grid with hexagonal cells, with potential for diagonal moves |
trail | words are laid out along a winding linear path |
spiral | words are laid out along a spiraling linear path |
circle | words are laid out in concentric circles |
helix | words are laid out in two or more intertwined helical structures, one per participant |
chess 3-D | words are laid out in multiple stacked chess grids |
This state specifies the physics that applies to a word, unit, and so on, when it is instantiated as an object (e.g. in game play, or simulation).
State | Description |
---|---|
gas | The word follows the physics of a gas particle |
liquid | The word follows the physics of a liquid particle |
mass | value for mass or weight, calculated relative to number of sounds, letters, words, etc. |
pull | gravitational or other form of attraction: strong, weak, none, push (repulsion instead of attraction) |
na | Not applicable: Physics is not implemented for the word or line [=default] |
Record the trail that a player's mouse traverses on the way to making a selection or clicking a button. To do this, record a sample of x-y coordinates (Row and Column on a game Board, and pixelX-pixelY) to another position, plus time stamps associated with each x-y position.
Record the trail that a player's piece traverses during a game. To do this, record a sample of x-y coordinates (Row and Column on a game Board, and pixelX-pixelY) to another position, plus time stamps associated with each x-y position.
In Concordance mode, the results of a search are displayed centered on the middle column, with relevant context to the left or right. In Track mode, the sort function allows users to sort the results by the search term, plus one or more columns in the left context; plus one or more columns in the right context. (See: hitGrid)
Move | Description |
---|---|
sort | According to which column heading user clicks, sort one or more specified columns to left of search term; or to the right of the search time. |
The following are proposed name changes for tables, grids, variables, etc., to be used in Rezonator. The goal is to simplify and clarify, and to be consistent between Rezonator code and the user experience (for researchers and gamers).
Old name | New name |
---|---|
wordTranscript | transcript |
wordToken | text |
wordSeq | place |
wordGrid | word |
unitGrid | unit |
lineGrid | line |
rezChainGrid | rez |
anaphChainGrid | track |
stackChainGrid | stack |
wordIDlist | words |
unitIDList | units |
alignedWord | align |
displayWordSeq | showPlace |
wordX | X (exception: wordID) |
wordState | focus |
chainState | focus |