安装 vscode SCSS IntelliSense 插件后,$$符号问题

问题:

  • 安装了SCSS IntelliSense ,输入 $,再选择,会多一个 $符号,如: font-size:$$font-size-xs。有没有办法解决?

解决

  1. 终端输入命令,打开services文件夹 open /Users/apple/.vscode/extensions/mrmlnc.vscode-scss-0.10.0/out/unsafe/services
  2. 修改 parser.js 文件中的 findDocumentSymbols 方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
   async function findDocumentSymbols(document, ast) {
const symbols = ls.findDocumentSymbols(document, ast);
const links = await findDocumentLinks(document, ast);
const result = {
functions: [],
imports: convertLinksToImports(links),
mixins: [],
variables: []
};
for (const symbol of symbols) {
const position = symbol.location.range.start;
const offset = document.offsetAt(symbol.location.range.start);
if (symbol.kind === vscode_css_languageservice_1.SymbolKind.Variable) {
result.variables.push({
name: symbol.name.replace("$", ""), // 关键点
offset,
position,
value: getVariableValue(ast, offset)
});
}
else if (symbol.kind === vscode_css_languageservice_1.SymbolKind.Method) {
result.mixins.push({
name: symbol.name,
offset,
position,
parameters: getMethodParameters(ast, offset)
});
}
else if (symbol.kind === vscode_css_languageservice_1.SymbolKind.Function) {
result.functions.push({
name: symbol.name,
offset,
position,
parameters: getMethodParameters(ast, offset)
});
}
}
return result;
}