Skip to main content

SCSS

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 multi line​

A multi line list of arguments in a function call. Insertion delimiter should include new line.

3. Argument list: Actual single line​

A single line list of arguments in a function call

Argument or parameter​

1. Argument: Actual multi line​

A multiline argument in a function call. Insertion delimiter should include new line.

2. Argument: Actual single line​

A single line argument in a function call

3. Argument: Actual (iteration)​

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

Branch​

1. Branch: If​

An if branch

2. Branch: If elif else​

An if-elif-else branch. The removal range for the if branch should include the trailing else keyword.

3. Branch: If else​

An if-else branch

4. Branch: If (iteration)​

Iteration scope for if/elif/else branches: the if-else statement.

Collection item​

1. Collection item: Unenclosed multi line​

An item in a comma-separated multi line list without enclosing delimiters. This could be multi-variable declarations, import statements, etc. Insertion delimiter should include new line.

2. Collection item: Unenclosed (iteration)​

Iteration scope for items in a comma-separated list without enclosing delimiters

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.

Comment​

1. Comment: Block​

A block comment

2. Comment: Line​

A line comment

Condition​

1. Condition: If​

A condition in an if statement

Function call​

1. Function call​

A function call

Function callee​

1. Function callee​

The function being called in a function call

If statement​

1. If statement​

An if statement

Map​

1. Map​

A map/dictionary

Name​

1. Name: Argument formal​

Name of a parameter in a function declaration

2. Name: Function​

Name of a function

3. Name (iteration block)​

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

4. Name (iteration document)​

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

5. Name: Argument formal (iteration)​

Iteration scope for names of formal parameters in a function declaration: the parameters list.

Named function​

1. Named function​

A named function declaration

2. Named function (iteration class)​

Iteration scope for named functions: class bodies.

3. Named function (iteration document)​

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

Selector​

1. Selector​

A selector in a css rule set

Statement​

1. Statement: Misc​

A miscellaneous statement

2. Statement (iteration document)​

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

Unit​

1. Unit​

A unit in a css rule set

Value​

1. Value: Argument formal​

The (default) value of a argument in a function declaration

2. Value: Map pair​

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

3. Value: Return​

Return value of a function

4. Value: Argument formal (iteration)​

Iteration scope for values of formal parameters in a function declaration: the parameters list.

5. 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.

Disqualify delimiter​

1. Disqualify delimiter​

Internally used to disqualify a token from being treated as a surrounding pair delimiter. This will usually be operators containing > or <, eg <, <=, ->, etc.

Interior​

1. Interior: Function​

The body of a function declaration

2. 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 block​

Internally used text fragment consisting of a block comment

2. Text fragment: Comment line​

Internally used text fragment consisting of a line comment

3. Text fragment: String single line​

Internally used text fragment consisting of a single-line string