mirror of
https://github.com/cursorless-dev/cursorless.git
synced 2024-10-05 05:17:38 +03:00
Add support for css and scss (#605)
* Begin to add support for css and scss * Continue to work on SCSS, add new selector * Record some tests for scss * Add more tests, move tests to correct dir level * Handle arguments and parameters correctly, tests * Add tests for CSS, rely on SCSS for CSS matchers * Add tests, clean up functions for merge - Fix edge cases in CSS functions with multiple value single args - Add Selector scope - Clean up function in node selector - Remove declaration from statement scope type - Add declaration to item scope type * Delete single line comment test for CSS - Not valid syntax for CSS, just SASS * Ensure we use scssStringTextExtractor - Fixes `"take round`" for "hello (world)" in css * Remove failing state tests - State redefined as a ruleset selector + block rather than single property * Add `parameters` back to argument matcher * Remove test with invalid CSS * Clean up tests * Clean up CSS selector test * Remove `take state` test * More test clean up * Various Changes - Test cases for cursor positions when selecting keys and values - Allow for name/value selection with optional args in SASS - Start to clean up SCSS argument matcher * Changes to childRangeSelector - Also fix types & clean up findAdjacentArgValues * Fix breaking tests from node selector change. * Include all children for import and includes * Update src/languages/scss.ts Update delimited function check name Co-authored-by: Pokey Rule <755842+pokey@users.noreply.github.com> * Update src/util/nodeSelectors.ts Update childRange docstring for clarity Co-authored-by: Pokey Rule <755842+pokey@users.noreply.github.com> * Change comment to docstring, handle method rename * Add docstring * Fix doc comment * formatting Co-authored-by: Pokey Rule <755842+pokey@users.noreply.github.com>
This commit is contained in:
parent
95890de171
commit
7378bcbb44
@ -33,6 +33,7 @@ scope_types = {
|
||||
"-four section": "sectionLevelFour",
|
||||
"-five section": "sectionLevelFive",
|
||||
"-six section": "sectionLevelSix",
|
||||
"selector": "selector",
|
||||
"state": "statement",
|
||||
"string": "string",
|
||||
"type": "type",
|
||||
|
@ -2,6 +2,7 @@ export const supportedLanguageIds = [
|
||||
"c",
|
||||
"clojure",
|
||||
"cpp",
|
||||
"css",
|
||||
"csharp",
|
||||
"go",
|
||||
"html",
|
||||
@ -15,6 +16,7 @@ export const supportedLanguageIds = [
|
||||
"python",
|
||||
"ruby",
|
||||
"scala",
|
||||
"scss",
|
||||
"typescript",
|
||||
"typescriptreact",
|
||||
"xml",
|
||||
|
@ -18,6 +18,7 @@ import php from "./php";
|
||||
import python from "./python";
|
||||
import markdown from "./markdown";
|
||||
import scala from "./scala";
|
||||
import { patternMatchers as scss } from "./scss";
|
||||
import go from "./go";
|
||||
import { patternMatchers as ruby } from "./ruby";
|
||||
import { UnsupportedLanguageError } from "../errors";
|
||||
@ -53,6 +54,7 @@ const languageMatchers: Record<
|
||||
> = {
|
||||
c: cpp,
|
||||
cpp,
|
||||
css: scss,
|
||||
csharp,
|
||||
clojure,
|
||||
go,
|
||||
@ -65,8 +67,9 @@ const languageMatchers: Record<
|
||||
markdown,
|
||||
php,
|
||||
python,
|
||||
ruby,
|
||||
ruby,
|
||||
scala,
|
||||
scss,
|
||||
typescript,
|
||||
typescriptreact: typescript,
|
||||
xml: html,
|
||||
|
@ -5,6 +5,7 @@ import { stringTextFragmentExtractor as jsonStringTextFragmentExtractor } from "
|
||||
import { stringTextFragmentExtractor as phpStringTextFragmentExtractor } from "./php";
|
||||
import { stringTextFragmentExtractor as rubyStringTextFragmentExtractor } from "./ruby";
|
||||
import { stringTextFragmentExtractor as typescriptStringTextFragmentExtractor } from "./typescript";
|
||||
import { stringTextFragmentExtractor as scssStringTextFragmentExtractor } from "./scss";
|
||||
import { UnsupportedLanguageError } from "../errors";
|
||||
import { Range } from "vscode";
|
||||
import { SupportedLanguageId } from "./constants";
|
||||
@ -131,6 +132,10 @@ const textFragmentExtractors: Record<
|
||||
),
|
||||
cpp: constructDefaultTextFragmentExtractor("cpp"),
|
||||
csharp: constructDefaultTextFragmentExtractor("csharp"),
|
||||
css: constructDefaultTextFragmentExtractor(
|
||||
"css",
|
||||
scssStringTextFragmentExtractor
|
||||
),
|
||||
go: constructDefaultTextFragmentExtractor("go"),
|
||||
html: constructDefaultTextFragmentExtractor(
|
||||
"html",
|
||||
@ -170,6 +175,10 @@ const textFragmentExtractors: Record<
|
||||
"scala",
|
||||
constructHackedStringTextFragmentExtractor("scala")
|
||||
),
|
||||
scss: constructDefaultTextFragmentExtractor(
|
||||
"scss",
|
||||
scssStringTextFragmentExtractor
|
||||
),
|
||||
typescript: constructDefaultTextFragmentExtractor(
|
||||
"typescript",
|
||||
typescriptStringTextFragmentExtractor
|
||||
|
160
src/languages/scss.ts
Normal file
160
src/languages/scss.ts
Normal file
@ -0,0 +1,160 @@
|
||||
import { SyntaxNode } from "web-tree-sitter";
|
||||
import {
|
||||
NodeMatcherAlternative,
|
||||
ScopeType,
|
||||
SelectionWithEditor,
|
||||
} from "../typings/Types";
|
||||
import { patternFinder } from "../util/nodeFinders";
|
||||
import {
|
||||
cascadingMatcher,
|
||||
conditionMatcher,
|
||||
createPatternMatchers,
|
||||
matcher,
|
||||
patternMatcher,
|
||||
trailingMatcher,
|
||||
} from "../util/nodeMatchers";
|
||||
import {
|
||||
childRangeSelector,
|
||||
delimitedSelector,
|
||||
getNodeRange,
|
||||
} from "../util/nodeSelectors";
|
||||
|
||||
// curl https://raw.githubusercontent.com/serenadeai/tree-sitter-scss/c478c6868648eff49eb04a4df90d703dc45b312a/src/node-types.json \
|
||||
// | jq '[.[] | select(.type =="stylesheet") | .children.types[] | select(.type !="declaration") | .type ]'
|
||||
|
||||
const STATEMENT_TYPES = [
|
||||
"apply_statement",
|
||||
"at_rule",
|
||||
"charset_statement",
|
||||
"debug_statement",
|
||||
"each_statement",
|
||||
"error_statement",
|
||||
"for_statement",
|
||||
"forward_statement",
|
||||
"function_statement",
|
||||
"if_statement",
|
||||
"import_statement",
|
||||
"include_statement",
|
||||
"keyframes_statement",
|
||||
"media_statement",
|
||||
"mixin_statement",
|
||||
"namespace_statement",
|
||||
"placeholder",
|
||||
"rule_set",
|
||||
"supports_statement",
|
||||
"use_statement",
|
||||
"warn_statement",
|
||||
"while_statement",
|
||||
];
|
||||
|
||||
function isArgumentListDelimiter(node: SyntaxNode) {
|
||||
return [",", "(", ")"].includes(node.type) || isAtDelimiter(node);
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether the given `node` is an `at` delimiter node, used in a css
|
||||
* / scss argument list. For example, the `at` in the call
|
||||
* `ellipse(115px 55px at 50% 40%)`
|
||||
*
|
||||
* @param node The node to check
|
||||
* @returns `true` if the node is an `at` delimiter node
|
||||
*/
|
||||
function isAtDelimiter(node: SyntaxNode) {
|
||||
return node.type === "plain_value" && node.text === "at";
|
||||
}
|
||||
|
||||
/**
|
||||
* Matches adjacent nodes returned from {@link siblingFunc} until it reaches a
|
||||
* delimiter node. This is intended to handle the case of multiple values
|
||||
* within two delimiters. e.g. `repeating-linear-gradient(red, orange 50px)`
|
||||
* @param siblingFunc returns the previous or next sibling of the current node if present.
|
||||
* @returns A non-delimiter node
|
||||
*/
|
||||
function findAdjacentArgValues(
|
||||
siblingFunc: (node: SyntaxNode) => SyntaxNode | null
|
||||
) {
|
||||
return (node: SyntaxNode) => {
|
||||
// Handle the case where we are the cursor is placed before a delimiter, e.g. "|at"
|
||||
// and we erroneously expand in both directions.
|
||||
if (isAtDelimiter(node) || node.type === ",") {
|
||||
node = node.previousSibling!;
|
||||
}
|
||||
|
||||
let nextPossibleRange = siblingFunc(node);
|
||||
|
||||
while (nextPossibleRange && !isArgumentListDelimiter(nextPossibleRange)) {
|
||||
node = nextPossibleRange;
|
||||
nextPossibleRange = siblingFunc(nextPossibleRange);
|
||||
}
|
||||
return node;
|
||||
};
|
||||
}
|
||||
|
||||
const nodeMatchers: Partial<Record<ScopeType, NodeMatcherAlternative>> = {
|
||||
ifStatement: "if_statement",
|
||||
condition: conditionMatcher("condition"),
|
||||
statement: cascadingMatcher(
|
||||
patternMatcher(...STATEMENT_TYPES),
|
||||
matcher(
|
||||
patternFinder("attribute_selector"),
|
||||
childRangeSelector([], ["attribute_name", "string_value"])
|
||||
)
|
||||
),
|
||||
string: "string_value",
|
||||
functionCall: "call_expression",
|
||||
namedFunction: ["mixin_statement", "function_statement"],
|
||||
functionName: ["mixin_statement.name!", "function_statement.name!"],
|
||||
comment: ["comment", "single_line_comment"],
|
||||
argumentOrParameter: cascadingMatcher(
|
||||
matcher(
|
||||
patternFinder("arguments.*!", "parameters.*!"),
|
||||
delimitedSelector(
|
||||
(node) => isArgumentListDelimiter(node),
|
||||
", ",
|
||||
findAdjacentArgValues((node) => node.previousSibling),
|
||||
findAdjacentArgValues((node) => node.nextSibling)
|
||||
)
|
||||
)
|
||||
),
|
||||
name: [
|
||||
"function_statement.name!",
|
||||
"declaration.property_name!",
|
||||
"declaration.variable_name!",
|
||||
"mixin_statement.name!",
|
||||
"attribute_selector.attribute_name!",
|
||||
"parameter.variable_name!",
|
||||
],
|
||||
selector: ["rule_set.selectors!"],
|
||||
collectionKey: trailingMatcher(["declaration.property_name!"], [":"]),
|
||||
value: cascadingMatcher(
|
||||
matcher(
|
||||
patternFinder("declaration"),
|
||||
childRangeSelector(["property_name", "variable_name"])
|
||||
),
|
||||
matcher(
|
||||
patternFinder("include_statement", "namespace_statement"),
|
||||
childRangeSelector()
|
||||
),
|
||||
patternMatcher(
|
||||
"return_statement.*!",
|
||||
"import_statement.*!",
|
||||
"attribute_selector.plain_value!",
|
||||
"attribute_selector.string_value!",
|
||||
"parameter.default_value!"
|
||||
)
|
||||
),
|
||||
collectionItem: "declaration",
|
||||
};
|
||||
|
||||
export const patternMatchers = createPatternMatchers(nodeMatchers);
|
||||
|
||||
export function stringTextFragmentExtractor(
|
||||
node: SyntaxNode,
|
||||
_selection: SelectionWithEditor
|
||||
) {
|
||||
if (node.type === "string_value") {
|
||||
return getNodeRange(node);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
|
||||
.double {
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
|
||||
.double {
|
||||
transform: translate(, -50%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 23}
|
||||
active: {line: 2, character: 23}
|
||||
thatMark:
|
||||
- anchor: {line: 2, character: 23}
|
||||
active: {line: 2, character: 23}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
div {
|
||||
background: repeating-linear-gradient(red, orange 50px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 47}
|
||||
active: {line: 1, character: 47}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
div {
|
||||
background: repeating-linear-gradient(red, );
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 45}
|
||||
active: {line: 1, character: 45}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 45}
|
||||
active: {line: 1, character: 45}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
|
||||
selections:
|
||||
- anchor: {line: 1, character: 27}
|
||||
active: {line: 1, character: 27}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: polygon(, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
|
||||
selections:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(115px 55px at 50% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 39}
|
||||
active: {line: 1, character: 39}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(115px 55px at );
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 35}
|
||||
active: {line: 1, character: 35}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 35}
|
||||
active: {line: 1, character: 35}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(115px 55px at 50% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 25}
|
||||
active: {line: 1, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse( at 50% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,26 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change comment
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: comment, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
/*
|
||||
hello
|
||||
*/
|
||||
selections:
|
||||
- anchor: {line: 1, character: 7}
|
||||
active: {line: 1, character: 7}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: comment, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,35 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change every argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
|
||||
.double {
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
|
||||
.double {
|
||||
transform: translate(, );
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 23}
|
||||
active: {line: 2, character: 23}
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
thatMark:
|
||||
- anchor: {line: 2, character: 23}
|
||||
active: {line: 2, character: 23}
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}, isImplicit: false}]
|
@ -0,0 +1,35 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change every argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
div {
|
||||
background: repeating-linear-gradient(red, orange 50px);
|
||||
clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 50}
|
||||
active: {line: 1, character: 50}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
div {
|
||||
background: repeating-linear-gradient(, );
|
||||
clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 40}
|
||||
active: {line: 1, character: 40}
|
||||
- anchor: {line: 1, character: 42}
|
||||
active: {line: 1, character: 42}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 40}
|
||||
active: {line: 1, character: 40}
|
||||
- anchor: {line: 1, character: 42}
|
||||
active: {line: 1, character: 42}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}, isImplicit: false}]
|
@ -0,0 +1,37 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change every argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
width: calc(100% - 80px);
|
||||
clip-path: ellipse(115px 55px at 50% 40%);
|
||||
}
|
||||
|
||||
selections:
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
width: calc(100% - 80px);
|
||||
clip-path: ellipse( at );
|
||||
}
|
||||
|
||||
selections:
|
||||
- anchor: {line: 2, character: 21}
|
||||
active: {line: 2, character: 21}
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
thatMark:
|
||||
- anchor: {line: 2, character: 21}
|
||||
active: {line: 2, character: 21}
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change item
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: collectionItem, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
width: calc(100% - 80px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: collectionItem, includeSiblings: false}, isImplicit: false}]
|
29
src/test/suite/fixtures/recorded/languages/css/changeKey.yml
Normal file
29
src/test/suite/fixtures/recorded/languages/css/changeKey.yml
Normal file
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change key
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: collectionKey, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 4}
|
||||
active: {line: 1, character: 4}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: collectionKey, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change key
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: collectionKey, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: collectionKey, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 4}
|
||||
active: {line: 1, character: 4}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
: 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
margin: 10px 10px 10px 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 14}
|
||||
active: {line: 1, character: 14}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
: 10px 10px 10px 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a[data-lang^="tel"] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 15}
|
||||
active: {line: 0, character: 15}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a[^="tel"] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 2}
|
||||
active: {line: 0, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 2}
|
||||
active: {line: 0, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change round
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: surroundingPair, delimiter: parentheses}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
font-family: "hello (world)";
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 25}
|
||||
active: {line: 1, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
font-family: "hello ";
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 22}
|
||||
active: {line: 1, character: 22}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 22}
|
||||
active: {line: 1, character: 22}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: surroundingPair, delimiter: parentheses}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change selector
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: selector, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 4}
|
||||
active: {line: 1, character: 4}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |2
|
||||
{
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: selector, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change selector
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: selector, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a.b ~ c.d {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |2-
|
||||
{
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: selector, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change selector
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: selector, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
#header.callout {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |2
|
||||
{
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: selector, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change selector
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: selector, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
#header .callout {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 0}
|
||||
active: {line: 1, character: 0}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |2-
|
||||
{
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: selector, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change selector
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: selector, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |2-
|
||||
{
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: selector, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,25 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@import "subs.css";
|
||||
selections:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |+
|
||||
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,26 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
width: calc(100% - 80px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state air
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
mark: {type: decoratedSymbol, symbolColor: default, character: a}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 3}
|
||||
active: {line: 0, character: 3}
|
||||
marks:
|
||||
default.a:
|
||||
start: {line: 0, character: 0}
|
||||
end: {line: 0, character: 1}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: decoratedSymbol, symbolColor: default, character: a}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state harp
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
mark: {type: decoratedSymbol, symbolColor: default, character: h}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a .child-selector {
|
||||
height: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 13}
|
||||
active: {line: 2, character: 13}
|
||||
marks:
|
||||
default.h:
|
||||
start: {line: 0, character: 3}
|
||||
end: {line: 0, character: 8}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: decoratedSymbol, symbolColor: default, character: h}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,25 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@import "subs.css";
|
||||
selections:
|
||||
- anchor: {line: 0, character: 10}
|
||||
active: {line: 0, character: 10}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
@import ;
|
||||
selections:
|
||||
- anchor: {line: 0, character: 8}
|
||||
active: {line: 0, character: 8}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 8}
|
||||
active: {line: 0, character: 8}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: ;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
margin: 10px 10px 10px 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 4}
|
||||
active: {line: 1, character: 4}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
margin: ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
background-image: url("/icons/mail.svg");
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 35}
|
||||
active: {line: 1, character: 35}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
background-image: ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 20}
|
||||
active: {line: 1, character: 20}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 20}
|
||||
active: {line: 1, character: 20}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a[data-lang^="tel"] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 16}
|
||||
active: {line: 0, character: 16}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a[data-lang^=] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
div {
|
||||
background: repeating-linear-gradient(red, orange 50px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 46}
|
||||
active: {line: 1, character: 46}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
div {
|
||||
background: repeating-linear-gradient(red);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 43}
|
||||
active: {line: 1, character: 43}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 43}
|
||||
active: {line: 1, character: 43}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
div {
|
||||
clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 22}
|
||||
active: {line: 1, character: 22}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
div {
|
||||
clip-path: polygon(60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
width: calc(100% - 80px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 23}
|
||||
active: {line: 1, character: 23}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
width: calc();
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 14}
|
||||
active: {line: 1, character: 14}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 14}
|
||||
active: {line: 1, character: 14}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(115px 55px at 50% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 24}
|
||||
active: {line: 1, character: 24}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(50% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
.micro {
|
||||
width: sum(50px, 30px, 100px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 14}
|
||||
active: {line: 1, character: 14}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
.micro {
|
||||
width: sum(30px, 100px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 13}
|
||||
active: {line: 1, character: 13}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 13}
|
||||
active: {line: 1, character: 13}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
.micro {
|
||||
width: sum(50px, 30px, 100px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 27}
|
||||
active: {line: 1, character: 27}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
.micro {
|
||||
width: sum(50px, 30px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 23}
|
||||
active: {line: 1, character: 23}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 23}
|
||||
active: {line: 1, character: 23}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
div {
|
||||
clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 85}
|
||||
active: {line: 1, character: 85}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
div {
|
||||
clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 82}
|
||||
active: {line: 1, character: 82}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 82}
|
||||
active: {line: 1, character: 82}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(115px 55px at 50% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 41}
|
||||
active: {line: 1, character: 41}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(115px 55px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 31}
|
||||
active: {line: 1, character: 31}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 31}
|
||||
active: {line: 1, character: 31}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck every argue
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(115px 55px at 50% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 36}
|
||||
active: {line: 1, character: 36}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse();
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}, isImplicit: false}]
|
@ -0,0 +1,23 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck state
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: "@namespace prefix \"XML-namespace-URL\";"
|
||||
selections:
|
||||
- anchor: {line: 0, character: 15}
|
||||
active: {line: 0, character: 15}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck state
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@keyframes important1 {
|
||||
from { margin-top: 50px; }
|
||||
50% { margin-top: 150px !important; } /* ignored */
|
||||
to { margin-top: 100px; }
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 2}
|
||||
active: {line: 0, character: 2}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |+
|
||||
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,23 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck value
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: "@namespace prefix \"XML-namespace-URL\";"
|
||||
selections:
|
||||
- anchor: {line: 0, character: 16}
|
||||
active: {line: 0, character: 16}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: "@namespace ;"
|
||||
selections:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,23 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck value
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: "@namespace url(http://www.w3.org/1999/xhtml);"
|
||||
selections:
|
||||
- anchor: {line: 0, character: 6}
|
||||
active: {line: 0, character: 6}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: "@namespace ;"
|
||||
selections:
|
||||
- anchor: {line: 0, character: 6}
|
||||
active: {line: 0, character: 6}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: chuck value
|
||||
action: remove
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
margin-top: 150px !important;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 7}
|
||||
active: {line: 1, character: 7}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
margin-top: ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 7}
|
||||
active: {line: 1, character: 7}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 14}
|
||||
active: {line: 1, character: 14}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: outside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
|
||||
.double {
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
|
||||
.double {
|
||||
transform: translate(, -50%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 23}
|
||||
active: {line: 2, character: 23}
|
||||
thatMark:
|
||||
- anchor: {line: 2, character: 23}
|
||||
active: {line: 2, character: 23}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin replace-text($image, $color: red) {
|
||||
text-align: left;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 34}
|
||||
active: {line: 0, character: 34}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin replace-text($image, ) {
|
||||
text-align: left;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 28}
|
||||
active: {line: 0, character: 28}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 28}
|
||||
active: {line: 0, character: 28}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin replace-text($image, $color: red) {
|
||||
text-align: left;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 24}
|
||||
active: {line: 0, character: 24}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin replace-text(, $color: red) {
|
||||
text-align: left;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 20}
|
||||
active: {line: 0, character: 20}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 20}
|
||||
active: {line: 0, character: 20}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
div {
|
||||
clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 40}
|
||||
active: {line: 1, character: 40}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
div {
|
||||
clip-path: polygon(50% 0%, 60% 40%, , 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 38}
|
||||
active: {line: 1, character: 38}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 38}
|
||||
active: {line: 1, character: 38}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
|
||||
selections:
|
||||
- anchor: {line: 1, character: 27}
|
||||
active: {line: 1, character: 27}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: polygon(, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
|
||||
}
|
||||
|
||||
selections:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: 123) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 18}
|
||||
active: {line: 0, character: 18}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin foo() {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,23 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change comment
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: comment, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: // comment
|
||||
selections:
|
||||
- anchor: {line: 0, character: 9}
|
||||
active: {line: 0, character: 9}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: comment, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,26 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change comment
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: comment, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
/*
|
||||
hello
|
||||
*/
|
||||
selections:
|
||||
- anchor: {line: 1, character: 7}
|
||||
active: {line: 1, character: 7}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: comment, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,35 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change every argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
|
||||
.double {
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
|
||||
.double {
|
||||
transform: translate(, );
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 23}
|
||||
active: {line: 2, character: 23}
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
thatMark:
|
||||
- anchor: {line: 2, character: 23}
|
||||
active: {line: 2, character: 23}
|
||||
- anchor: {line: 2, character: 25}
|
||||
active: {line: 2, character: 25}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}, isImplicit: false}]
|
@ -0,0 +1,33 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change every argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
div {
|
||||
background: repeating-linear-gradient(red, orange 50px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 50}
|
||||
active: {line: 1, character: 50}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
div {
|
||||
background: repeating-linear-gradient(, );
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 40}
|
||||
active: {line: 1, character: 40}
|
||||
- anchor: {line: 1, character: 42}
|
||||
active: {line: 1, character: 42}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 40}
|
||||
active: {line: 1, character: 40}
|
||||
- anchor: {line: 1, character: 42}
|
||||
active: {line: 1, character: 42}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}, isImplicit: false}]
|
@ -0,0 +1,35 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change every argue
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse(115px 55px at 50% 40%);
|
||||
}
|
||||
|
||||
selections:
|
||||
- anchor: {line: 1, character: 25}
|
||||
active: {line: 1, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
clip-path: ellipse( at );
|
||||
}
|
||||
|
||||
selections:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
- anchor: {line: 1, character: 25}
|
||||
active: {line: 1, character: 25}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 21}
|
||||
active: {line: 1, character: 21}
|
||||
- anchor: {line: 1, character: 25}
|
||||
active: {line: 1, character: 25}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: argumentOrParameter, includeSiblings: true}, isImplicit: false}]
|
@ -0,0 +1,30 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change funk
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: namedFunction, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@function pow($base, $exponent) {
|
||||
$result: 1;
|
||||
@for $_ from 1 through $exponent {
|
||||
$result: $result * $base;
|
||||
}
|
||||
@return $result;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 13}
|
||||
active: {line: 1, character: 13}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: namedFunction, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,32 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change funk
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: namedFunction, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin theme-colors($light-theme: true) {
|
||||
@if $light-theme {
|
||||
background-color: $light-background;
|
||||
color: $light-text;
|
||||
} @else {
|
||||
background-color: $dark-background;
|
||||
color: $dark-text;
|
||||
}
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 7, character: 3}
|
||||
active: {line: 7, character: 3}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: namedFunction, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change item
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: collectionItem, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
width: calc(100% - 80px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: collectionItem, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change key
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: collectionKey, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 4}
|
||||
active: {line: 1, character: 4}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: collectionKey, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change key
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: collectionKey, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: collectionKey, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,37 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@function pow($base, $exponent) {
|
||||
$result: 1;
|
||||
@for $_ from 1 through $exponent {
|
||||
$result: $result * $base;
|
||||
}
|
||||
@return $result;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 13}
|
||||
active: {line: 1, character: 13}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@function ($base, $exponent) {
|
||||
$result: 1;
|
||||
@for $_ from 1 through $exponent {
|
||||
$result: $result * $base;
|
||||
}
|
||||
@return $result;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 10}
|
||||
active: {line: 0, character: 10}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 10}
|
||||
active: {line: 0, character: 10}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
margin: 10px 10px 10px 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 14}
|
||||
active: {line: 1, character: 14}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
: 10px 10px 10px 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@mixin move($left-start, $left-stop) {
|
||||
transition: left ($left-stop - $left-start) * $transition-speed;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 7}
|
||||
active: {line: 1, character: 7}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
@mixin move($left-start, $left-stop) {
|
||||
: left ($left-stop - $left-start) * $transition-speed;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin move($left-start, $left-stop) {
|
||||
transition: left ($left-stop - $left-start) * $transition-speed;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 3}
|
||||
active: {line: 0, character: 3}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin ($left-start, $left-stop) {
|
||||
transition: left ($left-stop - $left-start) * $transition-speed;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 7}
|
||||
active: {line: 0, character: 7}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 7}
|
||||
active: {line: 0, character: 7}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a[data-lang^="tel"] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 15}
|
||||
active: {line: 0, character: 15}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a[^="tel"] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 2}
|
||||
active: {line: 0, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 2}
|
||||
active: {line: 0, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: css
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 5}
|
||||
active: {line: 1, character: 5}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
: 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: 123) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin foo(: 123) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change name
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: name, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: 123) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 18}
|
||||
active: {line: 0, character: 18}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin foo(: 123) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: name, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change round
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: surroundingPair, delimiter: parentheses}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
font-family: "hello (world)";
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 25}
|
||||
active: {line: 1, character: 25}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
font-family: "hello ";
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 22}
|
||||
active: {line: 1, character: 22}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 22}
|
||||
active: {line: 1, character: 22}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: surroundingPair, delimiter: parentheses}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change selector
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: selector, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 4}
|
||||
active: {line: 1, character: 4}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |2
|
||||
{
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: selector, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change selector
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: selector, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a.b ~ c.d {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |2-
|
||||
{
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: selector, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change selector
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: selector, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
span[hello="Cleveland"][goodbye="Columbus"] {
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 11}
|
||||
active: {line: 1, character: 11}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |2-
|
||||
{
|
||||
color: blue;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: selector, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,25 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@import "subs.css";
|
||||
selections:
|
||||
- anchor: {line: 0, character: 11}
|
||||
active: {line: 0, character: 11}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |+
|
||||
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
&:hover { cursor: pointer; }
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 11}
|
||||
active: {line: 1, character: 11}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
div {
|
||||
a {
|
||||
width: calc(100% - 80px);
|
||||
}
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 6}
|
||||
active: {line: 2, character: 6}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
div {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 2}
|
||||
active: {line: 1, character: 2}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,26 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
width: calc(100% - 80px);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state air
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
mark: {type: decoratedSymbol, symbolColor: default, character: a}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 3}
|
||||
active: {line: 0, character: 3}
|
||||
marks:
|
||||
default.a:
|
||||
start: {line: 0, character: 0}
|
||||
end: {line: 0, character: 1}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: decoratedSymbol, symbolColor: default, character: a}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change state harp
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: statement, includeSiblings: false}
|
||||
mark: {type: decoratedSymbol, symbolColor: default, character: h}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a .child-selector {
|
||||
height: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 2, character: 13}
|
||||
active: {line: 2, character: 13}
|
||||
marks:
|
||||
default.h:
|
||||
start: {line: 0, character: 3}
|
||||
end: {line: 0, character: 8}
|
||||
finalState:
|
||||
documentContents: ""
|
||||
selections:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 0}
|
||||
active: {line: 0, character: 0}
|
||||
fullTargets: [{type: primitive, mark: {type: decoratedSymbol, symbolColor: default, character: h}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: statement, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,25 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@import "subs.css";
|
||||
selections:
|
||||
- anchor: {line: 0, character: 10}
|
||||
active: {line: 0, character: 10}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
@import ;
|
||||
selections:
|
||||
- anchor: {line: 0, character: 8}
|
||||
active: {line: 0, character: 8}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 8}
|
||||
active: {line: 0, character: 8}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@mixin horizontal-list {
|
||||
@include rtl(float, left, right);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 8}
|
||||
active: {line: 1, character: 8}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
@mixin horizontal-list {
|
||||
@include ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 11}
|
||||
active: {line: 1, character: 11}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 11}
|
||||
active: {line: 1, character: 11}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a[data-lang^="tel"] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 3}
|
||||
active: {line: 0, character: 3}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a[data-lang^=] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: 123) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: ) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 17}
|
||||
active: {line: 0, character: 17}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 17}
|
||||
active: {line: 0, character: 17}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: 123) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 18}
|
||||
active: {line: 0, character: 18}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: ) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 17}
|
||||
active: {line: 0, character: 17}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 17}
|
||||
active: {line: 0, character: 17}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: red) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: ) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 17}
|
||||
active: {line: 0, character: 17}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 17}
|
||||
active: {line: 0, character: 17}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: red) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 19}
|
||||
active: {line: 0, character: 19}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@mixin foo($foo: ) {
|
||||
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 17}
|
||||
active: {line: 0, character: 17}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 17}
|
||||
active: {line: 0, character: 17}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,31 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: 10px;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 12}
|
||||
active: {line: 1, character: 12}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a {
|
||||
height: ;
|
||||
color: red;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,37 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
@function pow($base, $exponent) {
|
||||
$result: 1;
|
||||
@for $_ from 1 through $exponent {
|
||||
$result: $result * $base;
|
||||
}
|
||||
@return $result;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 5, character: 11}
|
||||
active: {line: 5, character: 11}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
@function pow($base, $exponent) {
|
||||
$result: 1;
|
||||
@for $_ from 1 through $exponent {
|
||||
$result: $result * $base;
|
||||
}
|
||||
@return ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 5, character: 10}
|
||||
active: {line: 5, character: 10}
|
||||
thatMark:
|
||||
- anchor: {line: 5, character: 10}
|
||||
active: {line: 5, character: 10}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
margin: 10px 10px 10px 10px;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 4}
|
||||
active: {line: 1, character: 4}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
margin: ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
height: $button-height;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 5}
|
||||
active: {line: 1, character: 5}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
height: ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 10}
|
||||
active: {line: 1, character: 10}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
a {
|
||||
background-image: url("/icons/mail.svg");
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 35}
|
||||
active: {line: 1, character: 35}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
a {
|
||||
background-image: ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 20}
|
||||
active: {line: 1, character: 20}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 20}
|
||||
active: {line: 1, character: 20}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@mixin move($left-start, $left-stop) {
|
||||
transition: left ($left-stop - $left-start) * $transition-speed;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 11}
|
||||
active: {line: 1, character: 11}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
@mixin move($left-start, $left-stop) {
|
||||
transition: ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 14}
|
||||
active: {line: 1, character: 14}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 14}
|
||||
active: {line: 1, character: 14}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |
|
||||
@mixin horizontal-list {
|
||||
@include rtl(float, left, right);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 13}
|
||||
active: {line: 1, character: 13}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |
|
||||
@mixin horizontal-list {
|
||||
@include ;
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 1, character: 11}
|
||||
active: {line: 1, character: 11}
|
||||
thatMark:
|
||||
- anchor: {line: 1, character: 11}
|
||||
active: {line: 1, character: 11}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
@ -0,0 +1,29 @@
|
||||
languageId: scss
|
||||
command:
|
||||
version: 1
|
||||
spokenForm: change value
|
||||
action: clearAndSetSelection
|
||||
targets:
|
||||
- type: primitive
|
||||
modifier: {type: containingScope, scopeType: value, includeSiblings: false}
|
||||
initialState:
|
||||
documentContents: |-
|
||||
a[data-lang^="tel"] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 16}
|
||||
active: {line: 0, character: 16}
|
||||
marks: {}
|
||||
finalState:
|
||||
documentContents: |-
|
||||
a[data-lang^=] {
|
||||
color: rgba(0, 255, 0, 0.5);
|
||||
}
|
||||
selections:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
thatMark:
|
||||
- anchor: {line: 0, character: 13}
|
||||
active: {line: 0, character: 13}
|
||||
fullTargets: [{type: primitive, mark: {type: cursor}, selectionType: token, position: contents, insideOutsideType: inside, modifier: {type: containingScope, scopeType: value, includeSiblings: false}, isImplicit: false}]
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user