Skip to main content

Talon

Below are visualizations of all our scope tests for this language. These were created primarily for testing purposes rather than as documentation. There are quite a few, and they may feel a bit overwhelming from a documentation standpoint.

Scopes​

Argument list​

1. Argument list: Actual empty​

An empty list of arguments in a function call. Insertion delimiter should be empty.

2. Argument list: Actual method empty​

An empty list of arguments in a method call. Insertion delimiter should be empty.

3. Argument list: Actual method single line​

A single line list of arguments in a method call

4. Argument list: Actual single line​

A single line list of arguments in a function call

Argument or parameter​

1. Argument: Actual single line​

A single line argument in a function call

2. Argument: Actual (iteration)​

Iteration scope for arguments in a function call: the argument list. The domain should be the entire function call.

Collection key​

1. Key: Map pair​

Key (LHS) of a key-value pair of a map

2. Key: Map pair (iteration)​

Iteration scope for keys of key-value pairs in a map: should be between the braces.

Command​

1. Command​

A command, for example Talon spoken command or bash

Comment​

1. Comment: Line​

A line comment

Condition​

1. Condition: If​

A condition in an if statement

Function call​

1. Function call​

A function call

2. Function call: Method​

A method call

Function callee​

1. Function callee​

The function being called in a function call

2. Function callee: Method​

The function being called in a method call, including parent objects.

If statement​

1. If statement​

An if statement

Name​

1. Name: Assignment​

Name (LHS) of an assignment

2. Name: Command​

LHS of a command, eg Talon spoken command or bash

3. Name: Foreach​

Iteration variable name in a for each loop

4. Name: Variable initialized​

Name (LHS) of an initialized variable declaration

5. Name (iteration block)​

Iteration scope for names: statement blocks (body of functions/if-statements/for-loops/etc).

6. Name (iteration document)​

Iteration scope for names: the entire document including leading and trailing empty lines.

Statement​

1. Statement: Assignment​

An assignment statement

2. Statement: Command​

A command statement, eg Talon spoken command or bash

3. Statement: Foreach​

A for-each loop statement

4. Statement: Function call​

A function call statement

5. Statement: If​

A if/elif/else statement

6. Statement: Variable initialized​

An initialized variable declaration

7. Statement (iteration block)​

Iteration scope for statements: statement blocks (body of functions/if-statements/for-loops/etc).

8. Statement (iteration document)​

Iteration scope for statements: the entire document including leading and trailing empty lines.

Value​

1. Value: Assignment​

Value (RHS) of an assignment

2. Value: Command​

Value (RHS) of an command, eg Talon spoken command

3. Value: Foreach​

Iterable in a for each loop

4. Value: Map pair​

Value (RHS) of a key-value pair in a map

5. Value: Variable​

Value (RHS) of a variable declaration

6. Value (iteration block)​

Iteration scope for values: statement blocks (body of functions/if-statements/for-loops/etc).

7. Value (iteration document)​

Iteration scope for values: the entire document including leading and trailing empty lines.

8. Value: Map pair (iteration)​

Iteration scope for values of key-value pairs in a map: should be between the braces.

Internal scopes​

The following are internal scopes. They are not intended for user interaction or spoken use. These scopes exist solely for internal Cursorless functionality.

Interior​

1. Interior: Command​

The body of a command, eg Talon spoken command

2. Interior: Foreach​

The body of a for-each loop

3. Interior: If​

The body of an if/elif/else branch

String​

1. String: Single line​

A single-line string

Text fragment​

1. Text fragment: Comment line​

Internally used text fragment consisting of a line comment

2. Text fragment: String single line​

Internally used text fragment consisting of a single-line string